CEC – Designing IoT Sensor Nodes using the ESP8266
Course Overview:
The IoT edge devices have embedded written all over them. Sensor nodes that acquire data and transmit them to the cloud is quickly becoming common place. In this series, Jacob Beningo will walk attendees through the steps and processes necessary to create a sensor node using an ESP8266 which is an integrated microcontroller / Wi-Fi device while programming all the firmware in Python. In this course, attendees will walk away with an understanding on how to create a sensor node and use a high level programming level.
Day 1 – Reviewing Bare-metal Scheduling Techniques
Before designing an IoT sensor node, it’s useful to understand the different ideas and definitions for the IoT. In this session, Jacob will review the system architecture for the IoT and define the terms and concepts along with the hardware and software that will be needed to design a low power sensor node. Attendees will walk away with a clear understanding on what a sensor node is and how it fits into the IoT architecture.
Registration and Playback located here (May require login to access)
Day 2 – Getting Started using Real-Time Operating Systems
There are many different network protocols that devices can use to connect to the internet but a common way is to use Wi-Fi. Sensor nodes should be low power and using a microcontroller and a Wi-Fi module is not a great solution. In this session, we will examine the ESP8266 which is a combined Wi-FI / microcontroller module and examine how to get the ESP8266 setup using Micro Python.
Registration and Playback located here (May require login to access)
Day 3 – Real-Time Operating System Concepts
Every sensor node requires sensors that will be sampled. In this session, Jacob will walk attendees through how to hook up a variety of sensors to the ESP8266. We will examine sensors on I2C, SPI, UART and even 1-wire. Attendees will learn how to setup sensor sampling loops and interface to a variety of sensor types.
Registration and Playback located here (May require login to access)
Day 4 – Debugging Real-Time Embedded Systems
In this session, we will examine how to connect the ESP8266 to the internet. The code will be put in place that will allow a developer to stream their sensor data and store it in the cloud. Attendees will walk away with the knowledge to connect their system to the internet and begin manipulating data. We will also examine how developers can view and manipulate the data they receive.
Registration and Playback located here (May require login to access)
Day 5 – RTOS Best Practices
In this final session, we will examine the concepts on how we can remotely manage our ESP8266 device node and update the Micro Python application. We will discuss potential problems such as security risks. We’ll also look at how with two-way communication, we can begin to automate responds, respond to sensor readings that are outside set preconditions and other ideas on how we can improve our example sensor node.
Registration and Playback located here (May require login to access)
Course Resourses
- Sign-Up for the Embedded Bytes Newsletter here
- Embedded Software Design Techniques – An API Standard for MCU’s here
- Doxygen C Templates Download can be here
- DesignNews Blog Articles can be found here
- Jacob’s YouTube Channel – here
Course Source Code Download
Course materials can be found on the Insights page located here.
Struggling to keep your development skills up to date or facing outdated processes that slow down your team, raise costs, and impact product quality?
Here are 4 ways I can help you:
- Embedded Software Academy: Enhance your skills, streamline your processes, and elevate your architecture. Join my academy for on-demand, hands-on workshops and cutting-edge development resources designed to transform your career and keep you ahead of the curve.
- Consulting Services: Get personalized, expert guidance to streamline your development processes, boost efficiency, and achieve your project goals faster. Partner with us to unlock your team's full potential and drive innovation, ensuring your projects success.
- Team Training and Development: Empower your team with the latest best practices in embedded software. Our expert-led training sessions will equip your team with the skills and knowledge to excel, innovate, and drive your projects to success.
- Customized Design Solutions: Get design and development assistance to enhance efficiency, ensure robust testing, and streamline your development pipeline, driving your projects success.
Take action today to upgrade your skills, optimize your team, and achieve success.