Skip to content
CEC Semester Twenty One 2022

IoT Device Prototyping with STMicroelectronics Nucleo Development Boards

Fred Eady -
Owner, EDTP Electronics Inc. and Principal Engineer, Ongoing Systems LLC.
March 28,
2022
Prototyping STM32G071 IoT Devices
STMicroelectronics NUCLEO development boards are low-cost microcontroller-based development platforms. The typical NUCLEO development board includes an on-board ST-Link programmer/debugger and costs around $12. NUCLEO development boards are supported by STM32CubeIDESTM32CubeMX and STM32CubeProgrammerwhich are offered as free downloads. The NUCLEO development board's low-coston-board programmer/debugger and free software/hardware development tools make the NUCLEO an attractive prototyping alternative. The first installment of this lecture series is based on the NUCLEO-G071RBwhich is host to the STM32G071RB microcontroller. The STM32G071RB is built around a 64 MHz Cortex-M0+ core that supports 128 Kbytes of Flash memory and 36 Kbytes of SRAM. The STM32G071RB is IoT-ready and comes equipped with multiple I2CSPI and USART interfaces. Today's lecture will focus on enablingconfiguring and coding firmware drivers for all of the aforementioned STM32G071RB data communication interfaces using the C programming language and STM32CubeIDE. The NUCLEO-G071RB IoT firmware we create today will also be used to assist in driving G071RB IoT hardware we will assemble from scratch on my shop bench. Our bench-brewed NUCLEO IoT hardware is capable of being interfaced to multiple sensors and external IoT communications devices. With thatwe will employ the services of an external bench-brewed Wi-Fi hardware device and STM32CubeIDE to write a driver for the ATWINC1510-MR210PB Wi-Fi module.
Course Resources
Special Educational Materials
How to Use TrustZone to Secure IoT Devices with Minimal Hardware Complexity and Cost - Article
Getting Started With STM32 & Nucleo Part 3: How to Run Multiple Threads with CMSIS-RTOS Interface - Maker.io Tutorial - Digi-KeyGetting Started with STM32 and Nucleo Part 5: How to Use SPI - Digi-Key Electronics - Video
Using Microcontroller Development Boards as Single Board Computers - Article
March 29,
2022
Prototyping a NUCLEO-U575ZI-Q Inertial Measurement Unit
Today we will build an Inertial Measurement Unit (IMU) that is based on the NUCLEO-U575ZI-Q. The NUCLEO-U575ZI-Q is a hardware compilation of all of the necessary passive and active components required to support the on-board STM32U575ZI microcontroller. The first order of business within today's lecture involves assembling the IMU sensor hardware. The IMU sensor hardware consists of a 9-Axis absolute orientation sensor modulea crystal and various resistors and capacitors. All of the aforementioned components will be placed on a custom printed circuit board. The custom IMU sensor printed circuit board will be designed to meet the MikroElektronika click specifications. The NUCLEO-U575ZI-Q is equipped with a set of female headers that are pinned out to accommodate a standard ARDUINO shield. We wont be doing anything ARDUINO as far as coding is concernedbut we will definitely take advantage of the NUCLEO-U575ZI-Q's ARDUINO pin set. Designing and fabricating a custom ARDUINO shield to support our new IMU sensor click will be our next hardware assembly task. Once the custom IMU hardware has been assembled we will code the IMU click driver. The raw IMU data will need to be moved to an IoT endpoint for processing or display. We will choose a suitable data transfer method and write the necessary C code to display the IMU data.
Course Resources
Special Educational Materials
How to Use TrustZone to Secure IoT Devices with Minimal Hardware Complexity and Cost - Article
Getting Started With STM32 & Nucleo Part 3: How to Run Multiple Threads with CMSIS-RTOS Interface - Maker.io Tutorial - Digi-KeyGetting Started with STM32 and Nucleo Part 5: How to Use SPI - Digi-Key Electronics - Video
Using Microcontroller Development Boards as Single Board Computers - Article
March 30,
2022
Prototyping with STM32 IoT Middleware
Middleware components are essential IoT building blocks. STM32 middleware parts and pieces available to us include TCP/IPUSBmicroSD and microcontroller SRAM file systemsgraphics stacks and RTOS. Middleware components become force multipliers when they are mixed into STM32U5 microcontroller IoT applications. Our lecture time today will be spent exploring middleware that runs on STM32U5 Discovery Kit and NUCLEO-G070RB hardware. The NUCLEO-G070RB is capable of executing FATFs middleware. Sowe will go to the bench and fabricate some custom NUCLEO-G070RB microSD interface hardware to take advantage of the FATFs code. The STM32U5 Discovery Kit has a memory resource advantage over the NUCLEO-G070RB. The increased memory size allows the STM32U5 Discovery Kit to run Azure RTOS middleware. With Azure RTOS capabilities immediately available to usthreads and what makes them tick are in our future.
Course Resources
Special Educational Materials
How to Use TrustZone to Secure IoT Devices with Minimal Hardware Complexity and Cost - Article
Getting Started With STM32 & Nucleo Part 3: How to Run Multiple Threads with CMSIS-RTOS Interface - Maker.io Tutorial - Digi-KeyGetting Started with STM32 and Nucleo Part 5: How to Use SPI - Digi-Key Electronics - Video
Using Microcontroller Development Boards as Single Board Computers - Article
March 31,
2022
Prototyping NUCLEO-U575ZI-Q and NUCLEO-G071RB LoRa Nodes
The NUCLEO-U575ZI-Q is just too powerful to ignore. It is the perfect platform for hosting a LoRa node. We will reuse the custom ARDUINO shield we built for the IMU and populate it with an EMB-LR1276S LoRa module. We will need to assemble another LoRa node to complete our Lora wireless link. The remote LoRa node task falls upon the NUCLEO-G071RB and its click expansion interface. That pretty much takes care of the hardware portion of today's lecture. The bulk of today's discussion will focus on coding the EMB-LR1276S drivers for the NUCLEO-U575ZI-Q and NUCLEO-G071RB.
Course Resources
Special Educational Materials
How to Use TrustZone to Secure IoT Devices with Minimal Hardware Complexity and Cost - Article
Getting Started With STM32 & Nucleo Part 3: How to Run Multiple Threads with CMSIS-RTOS Interface - Maker.io Tutorial - Digi-KeyGetting Started with STM32 and Nucleo Part 5: How to Use SPI - Digi-Key Electronics - Video
Using Microcontroller Development Boards as Single Board Computers - Article
April 1,
2022
Prototyping with the X-NUCLEO-GFX01M1 Graphic Display
STMicroelectronics provides a set of functions packaged as a BSP (Board Support Package) that is designed to support the X-NUCLEO-GFX01M1 Display Expansion. If you browse the functions contained within the BSPyou will note that all of the BSP functions reference the ILI9341 TFT driver SOC. If your application requires the storage and retrieval of pretty picturesthe X-NUCLEO-GFX01M1 comes loaded with an MX25L6433Fa 64-Mbit SPI NOR Flash devicethat is also supported by the BSP. The X-NUCLEO-GFX01M1 interfaces to the NUCLEO-G071RB's on-board STM32G071RB microcontroller via the NUCLEO-G071RB's MORPHO headers. Since the X-NUCLEO-GFX01M1's display is not touch enabledinteraction between the userthe display and the application can be enabled by coding in the GPIO pins that are attached to the X-NUCLEO-GFX01M1's on-board joystick. The goal of today's lecture is to gain an understanding of how the X-NUCLEO-GFX01M1 BSP functions work and apply our new-found knowledge in the form of a joystick-enabled wireless remote control IoT application.
Course Resources
Special Educational Materials
How to Use TrustZone to Secure IoT Devices with Minimal Hardware Complexity and Cost - Article
Getting Started With STM32 & Nucleo Part 3: How to Run Multiple Threads with CMSIS-RTOS Interface - Maker.io Tutorial - Digi-KeyGetting Started with STM32 and Nucleo Part 5: How to Use SPI - Digi-Key Electronics - Video
Using Microcontroller Development Boards as Single Board Computers - Article
Instructor
Fred Eady
Owner, EDTP Electronics Inc. and Principal Engineer, Ongoing Systems LLC.

Fred Eady is the owner of EDTP Electronics Inc. and is the principal engineer at the Georgia branch of Ongoing Systems LLC. EDTP Electronics was established in 1988. In the meantime, Fred has written thousands of magazine articles. He has written for all of the major electronic magazines, including Radio Electronics, Electronics Now, Nuts and Volts, Servo, MicroComputer Journal, and Circuit Cellar. Fred has even done a few short feature articles for Design News. To date, he has authored four books and contributed to a fifth. He currently works as a PIC microcontroller consultant and is a Microchip Authorized Design Partner. Fred’s expertise also extends into the ARM community where he is a hardware and firmware design consultant. His customers include aerospace companies, machine shops, specialty startup companies, medical machine manufacturers, coin-operated device businesses, and various other research and development companies. He has a very close working relationship with Microchip Technology, the manufacturer of PIC microcontrollers, and has taught multiple Ethernet and WiFi classes at Microchip's annual Masters Conference.