Presented By:
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

IoT Programming with Basic for Android

Jun 9, 20172:00pm EDT
We will wrap up our week by passing along commands and data over a chain of various IoT devices programmed using B4A, B4J and B4R.
Jun 8, 20172:00pm EDT
This fourth lecture in the series targets an ARM device that will ultimately be logically attached to an IoT device running a B4A-based application. The ARM device is a Raspberry Pi running code generated by B4J.
Jun 7, 20172:00pm EDT
Today, we will introduce yet another Rapid Application Development tool, which is known as B4R. B4R will be used to create an IoT application that runs on an ESP8266-based piece of IoT hardware. Once we get the ESP8266 IoT app online, we will utilize B4A to create a companion Android app.
Jun 6, 20172:00pm EDT
B4J is a Rapid Application Development tool that runs on a personal computer or ARM-based device. Today’s lecture will demonstrate the creation of an IoT application that uses the resources of both B4A and B4J.
Jun 5, 20172:00pm EDT
This first lecture of the Basic for Android series is intended to expose the programming methods used by Basic for Android. Common programming building blocks that make up every Basic for Android IoT application will be discussed.

Building Wireless Interfaces for Microcontrollers

May 26, 20172:00pm EDT
Handheld IR (Infrared) remotes are common wireless controls used to operate cable boxes, TVs, and electronic toys. In this session you will learn how to prototype concept IR control circuits to be interface with microcontrollers. The littleBits IR sensor and latch electronic modules along with an...
May 25, 20172:00pm EDT
Bluetooth allows short range communication between electronic devices. BLE (Bluetooth Low Energy) reduces power consumption of 3.3V battery powered devices during data transmission events. The Arduino 101 provides a BLE chip allowing concept short range communication devices to be prototype rapidly...
May 24, 20172:00pm EDT
The PN532 is the most popular NFC (Near Field Communication) IC used in today’s smartphones and PoS (Point of Sale) readers. In this session you will learn about NFC/RFID (Radio Frequency Identification) technology and how to interface the PN532 to an Arduino. The hands-on project will explore...
May 23, 20172:00pm EDT
May 23 – Day 2: Building an Analog Wireless Transmitter Circuit for Microcontrollers Classic analog transistor transmitter circuits can be upcycled easily using today’s microcontroller technology. In this session, you will learn how to build and test a two-transistor wireless transmitter circuit. A...
May 22, 20172:00pm EDT
In this session you will learn electronic circuit techniques for interfacing a 315MHz remote and receiver module to an Arduino.

Deep Learning in Industrial Systems

May 12, 20172:00pm EDT
Finally, we look at what the future of Deep Learning in Industrial Systems looks like in the near term. This is a fast moving technology area and predicting out much further would be difficult at best. We look at trends in hardware, software, algorithms and applications that can be expected in the...
May 11, 20172:00pm EDT
The hot application these days is robotics, especially robot vision. Automation in factories is increasing due to increased competition. Even in Asian economies with relatively lower cost labor automation is making inroads. Not all robots have vision capabilities, but this is also becoming more...
May 10, 20172:00pm EDT
Applications of Deep Learning in Industrial systems of vision systems include Inspection and anomaly detection in finished goods and machinery. We will look these applications, including how they work and how they are applied in an industrial systems. Automated inspection and anomaly detection...
May 9, 20172:00pm EDT
This is the core technology of Deep Learning today. In this class we will review the technology and its history. Then we will look at implementations and some of the latest trends in Neural Networks. New software and hardware technologies are being applied, but have antecedents in previous efforts...
May 8, 20172:00pm EDT
While Neural Networks are the main technology we will look at the whole range of technologies that are connected with Deep Learning and the relationship to Machine Learning (ML) and Artificial Intelligence (AI). We will also look at applications, including some not part of Industrial Systems to...

Implementing IPv6 Over Bluetooth Low Energy

Apr 28, 20172:00pm EDT
In this final installment, we will integrate the Raspberry Pi router and the nRF5 nodes to form a small IPv6 network. Our attention will initially be focused on the operation of the newly-spawned IPv6 network. Once we understand what the IPv6 network is doing, we’ll unleash the IPv6 application.
Apr 27, 20172:00pm EDT
Connecting our nRF5 nodes via the Raspberry Pi router is useless if no data flows over the IPv6 Bluetooth Low-Energy links. Today, we will examine the application code that uses the resources of the Nordic Semiconductor BLE 6loWPAN stack to deliver digital payloads.
Apr 26, 20172:00pm EDT
Everything IPv6 that relates to the nRF5 nodes and Raspberry Pi router will be discussed. IPv6 will be examined from the viewpoint of the Nordic Semiconductor BLE 6loWPAN stack. Basic IPv6 operations common to all IPv6 devices will also be included in the discussion.
Apr 25, 20172:00pm EDT
From an embedded point of view, IPv6 is the launch pad for an unlimited number of individually addressable IoT devices. Today’s lecture will feature Nordic Semiconductor’s nRF5 SoC. Utilizing development tools from Nordic Semiconductor, Segger and Keil, out-of-the-box nRF5 devices will be...
Apr 24, 20172:00pm EDT
The Linux operating system is the key to this lecture. Today’s unlikely co-star is an off-the-shelf Raspberry Pi, which will be configured as an IPv6 router. Various open-source tools will be introduced and used to assist in the adaptation of the Raspberry Pi hardware.

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

Apr 14, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EDT
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 20172:00pm EST
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, 201711:00am EST
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, 201711:00am EST
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, 201711:00am EST
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, 201711:00am EST
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, 201711:00am EST
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-...