March 24 - Day 4: Introduction to the Freeboard.io Cloud Server
Continuing Education Center 3/24/2016 Post a comment The Freeboard.io cloud website will be introduced in this class, with a discussion on dashboards, triggers, and IO sources. Elements on URL resources from dweet.io will be demonstrated by use of a smartphone. The concepts based on this hands-on demonstration will be used in building the RPi LED Flasher Freeboard Dashboard in the final session of the weeklong course.
March 22 - Day 2: Understanding Mashups, Dweepy Library, and dweet.io Cloud Server
Continuing Education Center 3/22/2016 Post a comment In this session, participants will learn about the world of mashups and their interaction with IoT platforms. The class will be introduced to the Dweepy Python library by investigating a Raspberry Pi-based IoT device example. Also, use of the dweet.io cloud server, a free data aggregator website, will be discussed. The hands-on lab will consist of building a dweet.io Raspberry Pi IoT device.
March 21 - Day 1: Building a Raspberry Pi LED Flasher
Continuing Education Center 3/21/2016 Post a comment Course participants will be introduced to the state of the Internet of Things with respect to microcontroller-based development platforms like the Arduino and the Raspberry Pi. This kickoff session will instruct attendees on building a RPi LED flasher that will serve as the experimental IoT device for the weeklong course.
March 11 - Day 5: Machine Learning & Analysis Techniques
Continuing Education Center 3/11/2016 Post a comment One of the most important statistical techniques used in analyzing IoT data is machine learning. In this final class, we will discuss some important techniques, such as support vector machines and unsupervised learning. An understanding of the techniques is important in determining what can be done in applications that design engineers may encounter.
March 9 - Day 3: Cloud Storage and Formats in the IoT
Continuing Education Center 3/9/2016 Post a comment Generating and communicating data is great, but we need to have somewhere to keep it. In the current environment, the perfect place is the cloud. This is where most IoT data will go and where it will be analyzed. The cloud provides ease of access, flexibility, redundancy, and unlimited growth potential. We will discuss the storage structures and Big Data formats that are used.
March 8 - Day 2: A Look at Communications & Devices
Continuing Education Center 3/8/2016 Post a comment Getting all that data from place to place is an important element of the whole IoT system but is not generally visible. In many cases, we will have custom devices involved close to the things we are controlling. This class will discuss systems that are two way (measurement and control) and some of the controller devices that are available on the market.
March 7 - Day 1: The Different Things of the IoT
Continuing Education Center 3/7/2016 Post a comment To set the stage for what is to come, this opening class will look at the types of things that are out there. There are many IoT application areas, spanning industrial, medical, consumer, etc. The data analyses that are done will depend on the types of devices, so we will discuss some of these.
February 26 - Day 5: Troubleshooting Our RTOS Design
Continuing Education Center 2/26/2016 Post a comment Now that our code is written, we will need to test and debug it. In this final class, we will see how the debugger works with the RTOS to provide task-level debugging. The finished code will be available to help course students follow along and compare with their own code.
February 25 - Day 4: Defining and Running the Project
Continuing Education Center 2/25/2016 Post a comment In this penultimate class, we will take what we learned so far and define the tasks of our project. We will look at some simple “lightweight” elements that we may choose for our project, such as messaging, events, semaphores, and mutexes.
February 24 - Day 3: Changing Processors & Making It Work
Continuing Education Center 2/24/2016 Post a comment A common challenge of RTOS implementations is their limitation to certain chips, development boards, and toolchains. We will bring up our initial solution using the STM32F100 board and then look at how we will have to modify the code to work with our designated STM32 Nucleo processor and board.
February 23 - Day 2: RTOS System Development Setup
Continuing Education Center 2/23/2016 Post a comment Our toolset will be an important part of making our project successful. We will install and investigate these tools, followed by learning how to set them up, consisting of the STMicro STM32 Nucleo and the Atollic TrueStudio IDE, in tandem with the freeRTOS download.
February 22 - Day 1: Introduction to freeRTOS / RTOS Refresher
Continuing Education Center 2/22/2016 10 comments In this leadoff class, we will review the basics of how a task-switching RTOS operates and the design criteria we need to begin our hands-on design project. We will look at the freeRTOS real-time operating system and the elements that we will be using in our project.
February 11 - Day 4: Implementation Details
Continuing Education Center 2/11/2016 543 comments This penultimate class will dig into the details of the BLDC implementation and the debug and testing phases critical to MCU-based motor control design. The Microchip demo kit’s capabilities will be explored in detail.
February 9 - Day 2: Development Environment
Continuing Education Center 2/9/2016 576 comments This class will provide a background on the development environment typically found for MCU-based motor control designs. Attendees will learn the particulars of Microchip’s DM330015 kit and target MCU.
January 29 - Day 5: Troubleshooting Techniques
Continuing Education Center 1/29/2016 620 comments The bootloader development process is riddled with stumbling blocks. In this session, firsthand, real-world experiences with designing and debugging bootloader applications, and how to quickly recognize some of the most common and worst bugs, will be discussed. Attendees will leave the weeklong course with troubleshooting techniques for bootloaders and verification tricks which many developers don’t even know exist tucked away in their pockets.
January 28 - Day 4: Bootloader Implementation
Continuing Education Center 1/28/2016 377 comments Implementing a bootloader in C is no trivial exercise. This session will examine the inner workings of a bootloader and walk attendees through the setup of a bootloader implementation. Important concepts, such a vector table locations, application verification, and branch decision-making, will be covered. Attendees will also be exposed to reusable concepts and handling drivers within the bootloading application.
January 27 - Day 3: Setting Up a Test Application
Continuing Education Center 1/27/2016 690 comments In this session attendees will go through the process of developing a test application for use with a bootloader. The major components, such as linker setup, watchdog maintenance, flash access, and system rebooting, will be discussed in detail. Attendees will walk away with an expert understanding of how to set up and build a test application that can be deployed in the field using a bootloader.
January 26 - Day 2: Interface Protocol Design
Continuing Education Center 1/26/2016 763 comments Developing a robust and reusable interface protocol is a critical step in the bootloader development process. Ensuring that the application update gets onto the microcontroller without errors is no trivial task. This session will walk attendees through the design of a generic bootloader protocol and provide key insights into what it takes to develop a robust bootloader and the associated design documentation.
January 25 - Day 1: Bootloader Models and Concepts
Continuing Education Center 1/25/2016 971 comments Updating firmware in the field or over-the-air can take on many different forms, and there are many models a developer can choose from to get the job done. This session will explore these different update models and discuss the advantages and disadvantages of each one as well as when they can be best applied. Attendees will be exposed to requirements development and walk away with an overview of how a bootloader works.
January 13 - Day 3: Exercising Segger’s emPower Platform
Continuing Education Center 1/13/2016 374 comments Segger recently announced the availability of a new evaluation platform based on the Freescale Kinetis MK66FN2M0VMD18 32-bit microcontroller. In this lecture we will examine and exercise the emPower hardware using Segger Embedded Studio and a combination of Segger middleware components.
January 12 - Day 2: ARMing a microSD Card to an MCU
Continuing Education Center 1/12/2016 387 comments This class will utilize the ARM hardware we previously constructed. We will use elements of the STMicro STM32 Standard Peripheral Libraries, Segger Embedded Studio, and J-Link Pro to add microSD storage capability to our ARM microcontroller complex.
January 11 - Day 1: Segger Embedded Studio Walk-around
Continuing Education Center 1/11/2016 432 comments This lecture will introduce you to the Segger Embedded Studio. Rather than just talk about the integrated development environment, we will assemble and code an ARM microcontroller complex with the STMicroelectronics STM32F407VG using Segger Embedded Studio and the J-Link Pro.
December 17 - Day 4: Implementation Details
Continuing Education Center 12/17/2015 536 comments This penultimate class will dig into the details of the implementation and “tuning” phases critical to an MCU-based motor control design. The capabilities provided by the STMicro kit will be explored in detail.
December 15 - Day 2: MCU Development Environments
Continuing Education Center 12/15/2015 550 comments This class will provide a background on the development environments typically found for MCU-based motor control designs. We will investigate particularly the STM32 Nucleo FOC kit (P-NUCLEO-IHM001) hands-on.
December 4 - Day 5: Running and Troubleshooting Our RTOS Design
Continuing Education Center 12/4/2015 578 comments Now that our code is written, we will need to test and debug it. In this final class, we will see how the debugger works with the RTOS to provide task-level debugging to help us debug and make the application work. The finished code will be available to help course students follow along and compare with their own code.
December 3 - Day 4: Reviewing and Writing Our Tasks
Continuing Education Center 12/3/2015 546 comments In this penultimate class, we will take what we learned so far and define the tasks of our simple project. We will look at some simple “lightweight” elements that we may choose for our project, such as messaging, events, semaphores, and mutexes.
December 2 - Day 3: Writing Our Board Support Package
Continuing Education Center 12/2/2015 578 comments One of the biggest drawbacks to “free” software is the lack of hands-on support for customization. Although you can buy support to assist in the creation of your board definitions (I/O, clocking, etc), there is good documentation to help us in this task. In this class, we will first define our project board and then write our own board support package (BSP) for our RTOS implementation.
December 1 - Day 2: RTOS System Development Setup
Continuing Education Center 12/1/2015 508 comments Our toolset will be an important part of making our project successful. We will investigate the tools that we will be using and how to install and set them up. Our toolkit will consist of the Kinetis Development System, Kinetis SDK (software development kit), and, of course, the MQX RTOS. All three are large, but free downloads are available from Freescale.
November 30 - Day 1: Introduction to MQX and RTOS Refresher
Continuing Education Center 11/30/2015 526 comments In this leadoff class, we will review the basics of how a task-switching RTOS operates and the design criteria we need to begin our project. We will look at the Freescale MQX real-time operating system and the elements that we will be using in our project.
November 19 - Day 4: Analog Peripherals
Continuing Education Center 11/19/2015 558 comments Analog peripherals, such as analog-to-digital converters (ADCs) and digital-to-analog converters (DACs), have significant feature differences from manufacturer to manufacturer, and this class will highlight several of the most important ones.
November 18 - Day 3: Timers
Continuing Education Center 11/18/2015 567 comments Timers are perhaps the most complex of peripherals, with the widest range of supported features. This class will dig into the details of several common timer implementations.
November 17 - Day 2: Serial Interfaces
Continuing Education Center 11/17/2015 584 comments Serial interface peripherals support interface standards such as I2C and SPI. This class will cover the key differences in common interface implementations by MCU makers.
November 6 - Day 5: IoT and the Physical Web
Continuing Education Center 11/6/2015 582 comments The word of the day is “beacon.” This lecture will detail the methods required to scratch-build an Eddystone beacon. We will also scratch-build a device that will transport the beacon’s data to a remote device via the cloud.
November 5 - Day 4: Basic for iOS Meets IoT
Continuing Education Center 11/5/2015 489 comments This class will concentrate on connecting “things” to iPhones using the latest version of Anywhere Software’s B4i (Basic for iOS), which allows a designer to create iOS apps without a local Mac computer. We will use B4i to connect iPhones or any iOS device to a Bluetooth Smart- or WiFi-enabled device we will have designed and built earlier in the course.
November 3 - Day 2: Scratch-Building Microchip’s RN4020
Continuing Education Center 11/3/2015 471 comments This class will utilize Microchip’s Curiosity Development Tool, MPLAB X and the MPLAB Code Configurator to assist in the design and assembly of an RN4020-based “thing”. The resultant “thing” design will be able to stand alone or operate under the control of a host PIC microcontroller.
November 2 - Day 1: Tooling Up for Internet of Things
Continuing Education Center 11/2/2015 610 comments This lecture will construct our first “thing” in the weeklong course. In addition to describing the design process, the class will examine the hardware and firmware tools for scratch-building our device. We will code and outfit our “thing” to perform environmental monitoring tasks.
At this year's MD&M West show, lots of material suppliers are talking about new formulations for wearables and things that stick to the skin, whether it's adhesives, wound dressings, skin patches and other drug delivery devices, or medical electronics.
The US Congress has extended an important tax credit for solar energy, a move that’s good news for future investments in this type of alternative energy and for many stakeholders in the solar industry.
Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.