Now you can earn IEEE Professional Development Hours by attending CEC courses.
  • All class times are listed in Eastern Time.
  • All classes will consist of a 45 minute lecture and an interactive chat session.
  • Registered users must sign up to participate and get credit for each course.
  • Questions? Please contact us here.

Digi-Key Continuing Education Center, hosted on Design News, will get you up to working speed quickly in a host of technologies you've been meaning to study, but haven't had the time, via a series of 45-minute online lessons – all without leaving the comfort of your lab or office. Our faculty of expert tutors has divided the interdisciplinary world of design engineering into five dimensions: microcontrollers (basic and advanced), sensors, wireless, power, and lighting.

All of these topics will be tackled in a dedicated week of interactive tutorials where you can ask questions of the tutor, discuss knotty issues with your fellow students, and download a wealth of additional learning materials. (Don't worry if you can't attend a particular course live – seminars are also archived, and our online educational discussions take place 24 hours a day.)

Upcoming Classes

CEC Semester Eleven 2017

Embedded System Design Techniques™ - From Bare-metal to Real-Time Operating Systems

Apr 14, 2017 - 2:00pm EDT

April 14 – Day 5: RTOS Best Practices

Developing an RTOS based application is not trivial. Improper use of various resources and RTOS tools can result in memory fragmentation, synchronization issues, out-of-memory warnings, stack overflow and all kinds of really cool issues. In this session, Jacob discusses general RTOS best practices...

Apr 13, 2017 - 2:00pm EDT

April 13 – Day 4: Debugging Real-Time Embedded Systems

There is no such thing as a bug-free embedded system. Developers using RTOSes can be especially susceptible to really nasty bugs. In this session, Jacob walks developers through techniques to find application issues such as priority inversions, thread starvation, dead-lock and stack overflow...

Apr 12, 2017 - 2:15pm EDT

April 12 – Day 3: Real-Time Operating System Concepts

Real-time operating systems are just about tasks. Developers need to understand how to synchronize task execution using semaphores, mutexes and event flags. Communication between different tasks requires message queues. These objects require special consideration especially since improper use can...

Apr 11, 2017 - 2:00pm EDT

April 11 – Day 2: Getting Started using Real-Time Operating Systems

RTOSes provide developers with the ability to create semi-independent programs that run concurrently on the microcontroller. Properly creating tasks and setting their priorities can often be challenging. In this session, Jacob will walk attendees through how to setup a real-time operating system,...

Apr 10, 2017 - 2:00pm EDT

April 10 – Day 1: Reviewing Bare-metal Scheduling Techniques

Bare-metal scheduling techniques can go a long way in ensuring real-time behavior. In this session, Jacob will review techniques such as round robin, round robin with interrupts and then walk attendees through how to develop their own bare-metal scheduler. Attendees will walk away with an...

Hands-On Introduction to Industrial Controls

Mar 31, 2017 - 2:00pm EDT

March 31 – Day 5: Arduino PLC, plclib, Project: DC Motor Controller

In this final session of the 5-day webinar course, participants will learn to build an Arduino PLC using the open source plclib software. Optoisolators and electromechanical relays will be discussed followed by participants building a digital lock enabled dc motor controller.

Mar 30, 2017 - 2:00pm EDT

March 30 – Day 4: PLC Timer Instruction Basics, Timed Delay ON, Timed Delay Off: Project Programmable Timer

In this session, participants will learn to program industrial controls using timer instructions. The Timed Delay ON (TON) and Timed Delay OFF (TOF) PLC instructions will be discussed followed by participants building a BLE (Bluetooth Low Energy) enabled Programmable Timer using an Arduino 101...

Mar 29, 2017 - 2:00pm EDT

March 29 – Day 3: PLC Counter Instruction Basics, Count Up and Count Down Counters, Project: A Parts Counter with Alarm Controller

PLC counter instructions (Count Up and Count Down) will be explored in Day 3 of the 5-day webinar course. Participants will learn to write Count Up and Count Down Ladder Logic programs by building a Parts Counter with Audible Alarm Controller.

Mar 28, 2017 - 2:00pm EDT

March 28 – Day 2: PLC Bit Instruction Basics, Examine IF Open, Examine IF Close, Project: Bit Instruction- Logic Based Controllers

This class is a continuation of the introductory PLC Basics session with emphasis on Examine IF Open (XIO) and Examine IF Closed (XIC) bit instructions. Basic logic gates (AND, OR, NOT) will be discussed. Participants will learn to write Ladder Logic programs using logic gates to operate a solid...

Mar 27, 2017 - 2:00pm EDT

March 27 – Day 1: PLC Basics, Velocio Software Setup, Project: Bit Instruction- ON/OFF Controller

This introductory session discusses the PLC Architecture, setting up the Velocio “vBuilder” software and building a basic ON/OFF controller to operate piezo buzzer with LED indicator using the simulator stick.

MCU-based IoT Designs: Linear and Analog Peripherals – A Hands on Course

Mar 17, 2017 - 2:00pm EDT

March 17 – Day 5: Analog Front Ends

This class will focus on the most advanced MCU-based Analog Front End (AFE) peripherals and how they can be sued in IoT based designs.

Mar 16, 2017 - 2:00pm EDT

March 16 – Day 4: Analog Support Functions

This class will provide descriptions and examples of some of the common analog support functions- battery level sensors, power measurement and other simple, but important analog and linear circuits will be described.

Mar 15, 2017 - 2:00pm EDT

March 15 – Day 3: Digital to Analog Conversion for IoT Applications

This class will provide descriptions and examples of MCU-based DAC peripherals used in IoT applications. Hardware resources, constraints and limitations, and example designs will be described.

Mar 14, 2017 - 2:00pm EDT

March 14 – Day 2: Analog to Digital Conversion for IoT Applications

This class will provide descriptions and examples of MCU-based ADC peripherals used in IoT applications. Hardware resources, constraints and limitations, and example designs will be described.

Mar 13, 2017 - 2:00pm EDT

March 13 – Day 1: An Introduction to MCU-based IoT Designs

MCUs are the bricks on which the IoT is being built. This class will provide the background needed to understand why MCUs are used and how common IoT functions are implemented.

Sensor Edge Processing for the IoT

Mar 3, 2017 - 2:00pm EST

March 3 – Day 5: Algorithms

This type of distributed system has a major effect on the algorithms used. We will look at the algorithms used at each level and at the interaction between them. For example, parameters for a statistical test might be evaluated in the cloud to be used at the sensor level. Over time, these...

Mar 2, 2017 - 2:00pm EST

March 2 – Day 4: Devices - Aggregation/Communication Level

While some sensors and devices can communicate independently on the Internet, many cannot. Thus, most architectures assume aggregating nodes that handle communications back to the central repository (e.g., cloud). In these types of nodes there is a consequently more processing power available and...

Mar 1, 2017 - 2:00pm EST

March 1 – Day 3: Devices - Sensor Level

Sensors are another area of great diversity. Some are very simple and have limited processing power, while others can be very powerful. We will look at some of the technologies utilized and how they can be utilized to perform edge processing at the sensor.

Feb 28, 2017 - 2:00pm EST

February 28 – Day 2: Data Considerations

The types of data generated are as diverse as the things in the Internet of Things. The generation and handling of this data will be discussed. This includes all levels of the IoT architecture.

Feb 27, 2017 - 2:00pm EST

February 27 – Day 1: Architecture

We begin by looking at architectural frameworks for the IoT. We begin with conceptual frameworks and move on to implementation frameworks. We will also discuss some research efforts in this area.

Embedded System Design Techniques™ - Designing API's and HAL's for Real-time Embedded Systems

Feb 17, 2017 - 2:00pm EST

February 17 – Day 5: API and HAL Trade-offs and Benefits

In this session, Jacob will review important concepts related to API’s, HAL’s and provide guidance on how attendees can start designing their own. Looking at the benefits, timeline and potential costs along with strategies to get started. Additional API examples and sources will also be provided...

Feb 16, 2017 - 2:00pm EST

February 16 – Day 4: Utilizing Existing API’s and HAL’s

Some developers may not be interested in taking the time to develop their own API’s and HAL’s but instead would rather utilize what has already been created within the industry. In this session, we will begin to examine the API’s and HAL’s associated with the Renesas Synergy™ Platform and review...

Feb 15, 2017 - 2:00pm EST

February 15 – Day 3: Designing API’s and HAL’s Part 2

This session continues the previous session by walking developers through more API and HAL design. Developers will learn more about how to write configurable code that can be easily used from one application to the next. Attendees will learn how to develop their own flash, EEPROM and Uart API’s and...

Feb 14, 2017 - 2:00pm EST

February 14 – Day 2: Designing API’s and HAL’s Part 1

Developers need to think a lot up front about how to develop their own APIs. In this session, Jacob will discuss important considerations such as performance, code space and reusable and how they apply to the API and HAL design. Attendees will also learn the steps required to start developing their...

Feb 13, 2017 - 2:00pm EST

February 13 – Day 1: Developing Reusable Embedded Software

Before a developer can start developing their own APIs and HALs, they need to understand a few critical characteristics that all portable and reusable software exhibit. In this session, Jacob will dig into the details on how to write reusable code, including how to select a language subset,...

The Principles of IoT Security – An Overview

Feb 3, 2017 - 2:00pm EST

February 3 – Day 5: Other Security Issues in the IoT

Now that we have learned the basic challenges of securing the IoT, we will look at the other issues that we may face, including the #1 security weakness in essentially every IoT implementation. We will look at some of the tools and test methods available for IoT security.

Feb 2, 2017 - 2:00pm EST

February 2 – Day 4: Network Security

In this penultimate class, we will look at the challenges of overall network security. We will cover everything from secure communications protocols to secure commissioning and decommissioning of nodes.

Feb 1, 2017 - 2:00pm EST

February 1 – Day 3: Data Security

For our third class, we will delve into the security and vulnerabilities of data within the IoT. We will cover issues from the collection and reporting of incorrect or unreliable (“tainted”) data to keeping the data secure and intact as it travels throughout the network and to/from the cloud.

Jan 31, 2017 - 2:00pm EST

January 31 – Day 2: Hardware Security Challenges

For our second class, we will look at hardware security needs – from code protection to guarding against unauthorized board modification. We will look at many of the features that are being added to high-security microcontrollers in order to meet these challenges

Jan 30, 2017 - 2:00pm EST

January 30 – Day 1: Intro to IoT Security

In this leadoff class, we will look at the history and structure of the Internet of Things (IoT) and where the known security issues lie. We will look at a couple of examples of recent security breaches and how they could have been prevented. We will also look at the standards and regulatory issues...

Micrium’s μC/OS for Makers - A Hands-on Course

Feb 3, 2017 - 11:00am EST

February 3 – Day 5: Mutexes, Messages, and Semaphores, Oh My!

Now that we have built and tested our basic tasks, we will look at how we can add synchronization primitives, mutual exclusion, and inter-task communication to assure that our tasks work together properly without interference and properly share resources. We will then run our program on our target...

Feb 2, 2017 - 11:00am EST

February 2 – Day 4: Writing Our Tasks and Establishing Scheduling

In this penultimate class, we will write the tasks for our application. We will examine how we will set up priorities and the events that will drive our application. We will also determine what communication we need between tasks for implementation on Day 5.

Feb 1, 2017 - 11:00am EST

February 1 – Day 3: Setting up our Development System

For our third class, we will begin to delve into the elements of μC/OS III, beginning with the concept of kernel-based applications then how we install and set up the system to build our first μC/OS III application on our K64 target board.

Jan 31, 2017 - 11:00am EST

January 31 – Day 2: The Micrium Maker Program

For our second class, we will outline the details of the maker program and how to participate. We will look at the requirements that we must meet to qualify for the program and what the differences are with the standard commercial license. We will also look briefly at the maker market and its...

Jan 30, 2017 - 11:00am EST

January 30 – Day 1: Introduction to μC/OS II/III

In this leadoff class, we will present an overview of the Micrium μC/OS II/III kernel-based RTOS. We will look at the basic structure and how an RTOS works in foreground / background operations and the basic principles and operation in an RTOS. We will also review our hands-on board, the NXP FRDM-...