How-To-Tutorials
Practical, step-by-step guides for designing, programming, and integrating hardware and software in embedded projects.
176 articles

MQTT sends data in plaintext by default. This guide shows how to use the STM32 hardware crypto accelerator for AES-256 encryption of MQTT payloads using HAL.
Oct 10, 2025

Put your STM32L4 to sleep between sensor reads using Stop 2 mode and the RTC wakeup timer for 1Hz polling. This approach drops idle current to single-digit microamps while keeping your firmware responsive to periodic sensor reads.
Oct 10, 2025

Set up TIM2 on STM32 for 1ms periodic event scheduling and combine it with EXTI-based button debouncing. Covers timer math, interrupt handlers, and the flag-based ISR pattern.
Oct 10, 2025

Introduction Streaming 1080p video from a Raspberry Pi 4 to AWS S3 can be accomplished effectively using GStreamer and the RTMP protocol. This tutorial will...
Oct 10, 2025

Introduction Optimizing TensorFlow Lite models for deployment on resource-constrained hardware like STM32F4 microcontrollers can significantly enhance both...
Oct 10, 2025

Integrating the CANopen Protocol Stack with STM32F4 Firmware for Real-Time Sensor Data Acquisition and Control This tutorial provides a step-by-step guide on...
Oct 10, 2025

Introduction In this tutorial, we will explore how to implement real-time sound classification using a Cortex-M4 DSP with the CMSIS-DSP library. This project...
Oct 9, 2025

Introduction In this tutorial, we will create a web dashboard using Flask to visualize real-time data from an ESP32 sensor network via MQTT (Message Queuing...
Oct 9, 2025
Introduction In this tutorial, we will cover how to implement MQTT over TLS using the ESP32 microcontroller and the MbedTLS library. This setup ensures secure...
Oct 9, 2025

Run real-time object detection on a Raspberry Pi using TensorFlow Lite and a USB webcam. Covers setup, model loading, and a complete Python detection pipeline with OpenCV.
Oct 9, 2025

Building a LoRaWAN Node with STM32L072 and RFM95W for Battery-Powered IoT Sensors This tutorial will guide you through the process of building a LoRaWAN node...
Oct 9, 2025

Introduction This tutorial will guide you through the migration of bare-metal firmware for the STM32F4 microcontroller to FreeRTOS. We will implement two...
Oct 9, 2025

Implementing Secure Boot on STM32F4 with RSA and ECC for Firmware Authentication Using OpenSSL and CubeMX Secure Boot is a critical security feature that...
Oct 9, 2025

Implementing a Fault-Tolerant Safety State Machine for PWM-Controlled Industrial Actuators Using an STM32 Microcontroller with Watchdog Timer Integration This...
Oct 9, 2025
Introduction Optimizing TensorFlow Lite Micro quantized models for ARM Cortex-M4 inference can significantly enhance the performance and efficiency of machine...
Oct 9, 2025

Implementing Wear Leveling and Journaling in STM32 Firmware for NAND Flash This tutorial will guide you through the process of implementing wear leveling and...
Oct 9, 2025

Your buck converter's output is only as good as your control loop. Here's how to implement and tune a digital PID controller on STM32F4 with proper anti-windup, ADC-synchronized feedback, and practical tuning advice for real load conditions.
Oct 9, 2025
Integrating HAL and LL Drivers in STM32CubeIDE for a Real-Time Temperature Monitoring System Using I2C with MPU6050 This tutorial will guide you through the...
Oct 8, 2025

Fuse MPU6050 accelerometer and gyroscope data with a Kalman filter on STM32F4 for stable quadcopter orientation. Covers wiring, raw data reading, filter implementation with bias tracking, and tuning tips.
Oct 8, 2025

Introduction This tutorial will guide you through the process of migrating your STM32F4 bare-metal firmware to FreeRTOS, while integrating I2C and PWM...
Oct 8, 2025

Implementing a TPM 2.0-based DICE Root of Trust on a Raspberry Pi 4 for Secure IoT Device Identity Management This tutorial will guide you through the process...
Oct 8, 2025

Reducing STM32 Firmware Size by 30% Using GCC Optimization Flags ‘-Os’ and ‘-ffunction-sections’ In embedded systems development,...
Oct 8, 2025

Build a 16-bit ADC data logger on the STM32F4 using a circular buffer and I2C temperature sensor. Covers hardware setup, buffer implementation, timer-driven sampling, and common debugging tips.
Oct 8, 2025

Set up FreeRTOS v11.x on STM32F4 using a custom hardware timer as the tick source instead of SysTick. Covers timer configuration, task creation, interrupt priorities, and practical debugging techniques.
Oct 8, 2025