HOME  |  NEWS  |  BLOGS  |  MESSAGES  |  FEATURES  |  VIDEOS  |  WEBINARS  |  INDUSTRIES  |  FOCUS ON FUNDAMENTALS
  |  REGISTER  |  LOGIN  |  HELP
 
Next Class: September 3
Login to participate
Semesters: 1 | 2 | 3 | 4 | 5 | 678
Now you can earn IEEE Professional Development Hours by attending CEC courses. Click here for more information.

Curriculum Calendar

Download this to connect our Curriculum Calendar to your calendar application (Outlook, etc.)
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 login to participate and get credit for each course
Questions? Please contact us here.
Embedded System Design Techniques™ - Writing Portable and Robust Firmware in C  
Monday, August 31 - Friday, September 4
Date Class   Status   Lecturer
Aug 31
2PM
August 31 - Day 1: Portable C Concepts
This session will introduce a subset of the C language and design techniques that are suitable for writing portable code. An STM32 Nucleo development kit utilizing a Cortex-M0+ will be used for example code. Attendees will walk away from this session with the knowledge of how to design software that can be reused through APIs and HALs.
  View Archived  
Jacob Beningo  
Jacob Beningo is a Certified Software Development Professional (CSDP) whose expertise is in firmware for embedded systems. He works with ...  
MORE
Our Lecturer
Jacob Beningo
Jacob Beningo

Jacob Beningo is a Certified Software Development Professional (CSDP) whose expertise is in firmware for embedded systems. He works with companies to decrease costs and time to market while maintaining a quality and robust product. He has successfully completed numerous projects such as architecture design and review, bootloaders, design and implementation, software process improvement and training across multiple industries including automotive, consumer, defense, medical and space. He blogs for EDN.com about embedded system design techniques and challenges.  He is an avid tweeter, a tip and trick guru, a homebrew connoisseur and a fan of pineapple! Jacob holds Bachelor's degrees in Electrical Engineering, Physics and Mathematics from Central Michigan University and a Master's degree in Space Systems Engineering from the University of Michigan.  Feel free to contact him at jacob@beningo.com or at his website www.beningo.com.


HIDE
Sep 1
2PM
September 1 - Day 2: Doxygen and PC-Lint
In a fast paced environment, properly documenting and checking code for errors often goes ignored but they are absolutely critical to robust product design. This session will examine how to use Doxygen to document code and also generate the code documentation for the developer. PC-Lint configuration and utilization will also be examined. Attendees will walk away with a deep understanding of how to use these two crucial development tools.
  View Archived  
Sep 2
2PM
September 2 - Day 3: UART Driver and STM32CubeMx
This session will examine how to create a UART driver that will be used in later sessions with printf and assert. Driver development can be greatly accelerated by using available vendor tools such as the STM32CubeMx toolset. The tool will be examined in detailed as part of the driver development exercise. Attendees will walk away with software examples on how to create a UART driver and an understanding of the STM32CubeMx tool.
  View Archived  
Sep 3
2PM
September 3 - Day 4: ASSERT and printf
The ASSERT macro is a critical component of embedded software development but an often under implemented and misunderstood tool. Using printf has also held a stigma that often leaves devlopers confused and hesitant. This session will walk attendees through how to setup these two tools and use them properly to help improve the reliability of their embedded system.
  Sign Me Up  
Sep 4
2PM
September 4 - Day 5: Robust Firmware Concepts
There are many concepts that can be used to help increase the robustness of embedded software. This session will review a wide variety of them. An in depth look at watchdog design, stack monitoring and memory management will be explored. Attendees will walk away with the ability to implement a reliable watchdog and perform essential checks such as RAM and ROM testing.
  Sign Me Up  
Controlling Sensors Efficiently with MCUs  
Monday, September 14 - Friday, September 18
Date Class   Status   Lecturer
Sep 14
2PM
September 14 - Day 1: Sensors in the IoT
Sensors will be, literally, the eyes and ears of the IoT. This class will describe several common sensors and their requirements for use in efficient MCU-based designs.
  Sign Me Up  
Warren Miller  
Warren Miller has more than 30 years of experience in electronics and has held a variety of positions in engineering, applications, ...  
MORE
Our Lecturer
Warren Miller
Warren Miller

Warren Miller has more than 30 years of experience in electronics and has held a variety of positions in engineering, applications, strategic marketing, and product planning with large electronics companies like Advanced Micro Devices, Actel, and Avnet, as well as with a variety of smaller startups. He has in-depth experience of programmable devices (PLDs, FPGAs, MCUs, and ASICs) in industrial, networking, and consumer applications and holds several device patents. He is currently the principal at Wavefront Marketing, working as a consultant specializing in strategic planning, technical marketing, and competitive analysis for semiconductor, intellectual property, and associated design tool companies. Warren has authored more than 100 conference papers, whitepapers, application notes, and magazine articles on a wide variety of topics and is a frequent blogger on the All Programmable Planet and Microcontroller Central websites and is the founder of the Chess FPGA project.
Email: warren@wavefrontmarketing.com


HIDE
Sep 15
2PM
September 15 - Day 2: MCUs as Sensor Controllers
This class will review several key MCU features - like low power, serial communications, and data processing - that are critical for efficient MCU-based sensor implementations.
  Sign Me Up  
Sep 16
2PM
September 16 - Day 3: Example MCU-based Sensor Designs
Many MCU manufacturers have targeted sensor designs and provided reference designs and product examples. This class will explore some of these resources that can help you more efficiently implement your designs.
  Sign Me Up  
Sep 17
2PM
September 17 - Day 4: More Example Designs
This class will continue exploring reference designs and development platforms provided by MCU manufacturers to help you more quickly and efficiently create MCU-based sensor designs.
  Sign Me Up  
Sep 18
2PM
September 18 - Day 5: Future Trends
This class will review some of the most recent trends in MCU-based sensor designs in order to explore the future types of applications MCUs will need to address and the most likely enhancements they will need to be successful.
  Sign Me Up  
Archived Tracks
Building Raspberry Pi Controllers with Python  
Monday, July 6 - Friday, July 10
Date Class   Status   Lecturer
Jul 6
2PM
July 6 - Day 1: Introduction to Building Raspberry Pi Controllers
The Raspberry Pi is a user-friendly, credit-card-size, Linux-based computer that design engineers (and educators and Makers) can use as a rapid development platform to design products for the consumer and industrial markets. An overview of the Raspberry Pi’s architecture will be explained, along with a presentation of the examples illustrating the use of this credit-card-size, Linux-based computer.
  View Archived  
Don Wilcher  
Don Wilcher is a passionate teacher of electronics technology and an electrical engineer with 26 years of industrial experience. He's ...  
MORE
Our Lecturer
Don Wilcher
Don Wilcher

Don Wilcher is a passionate teacher of electronics technology and an electrical engineer with 26 years of industrial experience. He's worked on industrial robotics systems, automotive electronic modules and systems, and embedded wireless controls for small consumer appliances. He's currently developing 21st century educational products focusing on IoT (Internet of Things) for makers, engineers, technicians, and educators. He's a Certified Electronics Technician with ETA International, book author, and Design News Moderator. 


HIDE
Jul 7
2PM
July 7 - Day 2: Introduction to the Python Programming Language
This session will include a discussion on Python, the purpose of the interpretive programming language, and the inventor who created it. A review of the Python IDLE (Integrated DeveLopment Environment) will be provided in this session. The discussion will also focus on Python 2, 3, and “sudo python” IDLEs. Also, basic hands-on scripting activities (building a simple calculator) on using Python will be presented in this session, as well.
  View Archived  
Jul 8
2PM
July 8 - Day 3: A Detailed Look at the RPi.GPIO Library
The Python library used in connecting the platform to the physical world for electronic controls is the RPi.GPIO code. In this session we’ll investigate the RPi’s GPIO (General Input Output) pins and how to enable them with the RPi.GPIO library. We’ll investigate how to install the library using LXTerminal/Linux commands. The final test of the RPi.GPIO library installation will consist of controlling an LED and reading an electric switch wired to the Raspberry Pi.
  View Archived  
Jul 9
2PM
July 9 - Day 4: Raspibot Board Part 1
The Raspibot board is an accessory controller that allows control of DC and stepper motors, LED matrices and LCDs, allowing basic mobile robots and electronic controllers to be built quite easily (uses the RRB library dev’d by Simon Monk). We’ll discuss the board architecture, a hands-on activity of installing the Raspibot RRB library to the Raspberry Pi, and how to operate two DC motors and onboard LEDs by way of sending simple RRB scripting commands to the board using the “sudo python” IDLE.
  View Archived  
Jul 10
2PM
July 10 - Day 5: Raspibot Board Part 2
This final session is a continuation of the Raspibot board discussion. We’ll take a look at how to create awesome visual displays using an LED matrix cube. A discussion of the cube’s construction and attaching it to the Raspibot will be presented. Final testing of the LED matrix cube with RRB and RPi.GPIO libraries will be discussed in this concluding session.
  View Archived  
Hands-on SoC FPGA Design  
Monday, July 20 - Friday, July 24
Date Class   Status   Lecturer
Jul 20
2PM
July 20 - Day 1: An Introduction to SoC FPGAs
FPGAs with embedded processors are powerful devices, but can be complicated to design with. This class will introduce some example SoC FPGAs, the typical design flow, target applications and resources available to speed YOUR design.
  View Archived  
Warren Miller  
Warren Miller has more than 30 years of experience in electronics and has held a variety of positions in engineering, applications, ...  
MORE
Our Lecturer
Warren Miller
Warren Miller

Warren Miller has more than 30 years of experience in electronics and has held a variety of positions in engineering, applications, strategic marketing, and product planning with large electronics companies like Advanced Micro Devices, Actel, and Avnet, as well as with a variety of smaller startups. He has in-depth experience of programmable devices (PLDs, FPGAs, MCUs, and ASICs) in industrial, networking, and consumer applications and holds several device patents. He is currently the principal at Wavefront Marketing, working as a consultant specializing in strategic planning, technical marketing, and competitive analysis for semiconductor, intellectual property, and associated design tool companies. Warren has authored more than 100 conference papers, whitepapers, application notes, and magazine articles on a wide variety of topics and is a frequent blogger on the All Programmable Planet and Microcontroller Central websites and is the founder of the Chess FPGA project.
Email: warren@wavefrontmarketing.com


HIDE
Jul 21
2PM
July 21 - Day 2: Downloading, Installing and Running Design Software
This class will go step by step through the process of obtaining and using a typical SoC FPGA design tool chain. The Xilinx Vivado 30-day evaluation will be used and students are encouraged (optional) to download and install the software to follow along with the rest of the classes.
  View Archived  
Jul 22
2PM
July 22 - Day 3: A Simple Example Design
A simple example design is used in this class to demonstrate the use of the processor oriented tools in the Vivado tool suite. The on-chip processor will be configured and some simple code will be used to demonstrate how to go from an idea to a working application.
  View Archived  
Jul 23
2PM
July 23 - Day 4: Targeting the Development Board
In this class the process of targeting an existing development board will be demonstrated. Students without the board will still be able to follow along with the class and will see a working application using the software debugger.
  View Archived  
Jul 24
2PM
July 24 - Day 5: Processor and FPGA - The Full Flow
An example, suggested by the students, will illustrate the full development flow from project definition to a running design with selected screen shots in the class PPT. Students with the software or hardware can follow along as a homework exercise.
  View Archived  
Developing, Testing, and Troubleshooting IPv4 and IPv6 Using Wireshark  
Monday, August 3 - Friday, August 7
Date Class   Status   Lecturer
Aug 3
2PM
August 3 - Day 1: An Introduction to IPv4 and IPv6
In this class, we will look at the basic structures in IPv4 and IPv6. This will allow us to understand the terms and structures that we will examine and evaluate through the rest of the course.
  View Archived  
Charles J. Lord  
Charles J. Lord, PE, is an embedded systems consultant and trainer with over 30 years' experience in system design and development in ...  
MORE
Our Lecturer
Charles J. Lord
Charles J. Lord

Charles J. Lord, PE, is an embedded systems consultant and trainer with over 30 years' experience in system design and development in medical, military, and industrial applications. For the last eight years, he has specialized in the integration of communication protocols into clients' products, including USB, Ethernet, and low-power wireless including ZigBee. He has taught classes in these protocols for Freescale, Renesas, various universities and conferences including ESC, and his previous company, Triangle Advanced Design and Automation. He has been a design partner with Freescale, Microchip, and Renesas. He earned his BS in electrical engineering from N.C. State University in Raleigh, N.C. and provides training and consulting services through his company, Blue Ridge Advanced Design, in Asheville, N.C.


HIDE
Aug 4
2PM
August 4 - Day 2: An Overview of Wireshark Features
We will install Wireshark on our test computers and get familiar with the basic functions. We will look at working with various adapters on your computer as well as the basics of filtering and triggering.
  View Archived  
Aug 5
2PM
August 5 - Day 3: Sniffing Your Local Network and Filtering
In this class, we will make use of the functionality in Wireshark to do some sniffing within our local network and learn about packet assembly and basic network traffic analysis.
  View Archived  
Aug 6
2PM
August 6 - Day 4: Advanced Wireshark Features and Techniques
In this class, we will look at the cybersecurity features and functionality in Wireshark. We will see some ways to monitor attacks and hacks into our network. We will also look at some of the vulnerabilities in Wireshark that we need to be aware of.
  View Archived  
Aug 7
2PM
August 7 - Day 5: Using Wireshark to Test an Embedded IPv6 Project
In our final class, we will program a FRDM-K64 demo board from Freescale Semiconductor to perform some IPv4 and IPv6 functions and monitor them with Wireshark. We will then use this to troubleshoot our application. We will close the class with some looks at the strengths and weaknesses of the program and some alternative TCP/IP tools.
  View Archived  
ARM Processors for Microcontroller Applications: Architecture for the Internet of Things  
Monday, August 17 - Friday, August 21
Date Class   Status   Lecturer
Aug 17
2PM
August 17 - Day 1: Understanding ARM
Just what is ARM (the company and the product)? In this lecture we will look at what ARM is, where it came from and give an overview of the various families of products available and their areas of application.
  View Archived  
Louis Giokas  
Louis Giokas started out in the aerospace business holding positions in development and management.  At General Electric Aerospace ...  
MORE
Our Lecturer
Louis Giokas
Louis Giokas

Louis Giokas started out in the aerospace business holding positions in development and management.  At General Electric Aerospace (now part of Lockheed Martin) he held positions of software engineer, systems engineer and staff engineer. While there he worked on spacecraft and military systems. Prior to that he worked for companies such as Sperry UNIVAC and Link Simulation Systems, also working or spacecraft and military systems. Over the past two decades he has worked in the database management software area for Oracle and IBM. Over the past several years he has worked on development projects and has consulted in a number of different areas, including embedded systems. He is a long standing member of the Institute of Electrical and Electronics Engineers (IEEE). Currently, he is the secretary of the Fox Valley Subsection of the Chicago Section and chairman of the Computer Society of the Chicago Section. He has a degree in Computer Science from Villanova University and is pursuing a MS in Applied Statistics from DePaul University.


HIDE
Aug 18
2PM
August 18 - Day 2: Cortex-M Series Details
In this lecture we will go over the Cortex-M architecture. This includes the instruction set variations, which are many. We will also discuss power management, interrupts, memory management and related topics of the basic Cortex-M family.
  View Archived  
Aug 19
2PM
August 19 - Day 3: ARM Based Devices – Standard SoC
ARM provides and architecture and the Intellectual Property (IP) for chip designers to implement devices. In this lecture we will look at several specific implementations in the basic System on Chip (SoC) market. This will not be an exhaustive list, but will give a good overview of how the Cortex-M architecture is used and will arm the student with knowledge that can be used to intelligently decide which implementation to use in a specific application.
  View Archived  
Aug 20
2PM
August 20 - Day 4: Advanced Device Applications
Beyond the basic SoC, ARM processors are being used in configurable devices including those with FPGAs and other types of programmable logic. We will discuss a couple of these devices and look at how the ARM processor integrates with the device to enhance functionality.
  View Archived  
Aug 21
2PM
August 21 - Day 5: Programming Environments and Future Directions
In this final lecture we will look at programming environments available for the ARM Cortex-M series of processors. We will look specifically at tools from IAR and ARM. In addition, we will look at future directions for ARM and their partners.
  View Archived  
The Continuing Education Center offers engineers an entirely new way to get the education they need to formulate next-generation solutions.
Aug 31 - Sep4, Embedded System Design Techniques™ - Writing Portable and Robust Firmware in C
SEMESTERS: 1  |  2  |  3  |  4  |  5  |  6 |  7


Copyright © 2015 UBM Canon, A UBM company, All rights reserved. Privacy Policy | Terms of Service