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

Implement Dynamic Voltage and Frequency Scaling on an STM32F4 using PWM-controlled voltage regulation and CPU load monitoring to dynamically optimize power consumption.
Oct 12, 2025
Synchronized multi-axis CNC control on STM32 using hardware encoder mode, struct-based PID with anti-windup, and time-based trajectory planning to keep axes in lockstep.
Oct 12, 2025

Use a hardware TIM2 interrupt to get precise 1 ms periodic task execution in FreeRTOS on STM32, with proper ISR-to-task notification and priority configuration.
Oct 12, 2025

Implementing Dynamic Voltage and Frequency Scaling (DVFS) Firmware on an STM32F4 for Optimal Power Management in IoT Applications Dynamic Voltage and Frequency...
Oct 12, 2025

PTP gives you sub-microsecond time synchronization over Ethernet, and a Raspberry Pi can run it with software timestamps for prototyping TSN setups. Here's how to configure linuxptp on a Pi 4 or Pi 5.
Oct 12, 2025

Implementing Modbus RTU over UART and Modbus TCP using STM32 HAL Library for Industrial Sensor Communication Modbus is a widely adopted communication protocol...
Oct 12, 2025
Get stable orientation data from MPU6050 and BNO055 IMUs on an STM32 using I2C and the Madgwick sensor fusion filter. Covers wiring, register-level I2C reads, scaling, and quaternion output using STM32CubeIDE v1.16+ and HAL drivers.
Oct 12, 2025

Introduction In this tutorial, we will guide you through the process of migrating STM32 bare-metal firmware to FreeRTOS, incorporating MQTT for IoT sensor data...
Oct 12, 2025

Your STM32F4 doesn't need to run full-tilt all the time. DVFS lets you throttle core clock and voltage scaling based on CPU load, cutting power consumption in battery-powered designs.
Oct 12, 2025

Creating a Lightweight HTTP/REST Server on ESP32 Using ESP-IDF with JWT Authentication for IoT Device Control This tutorial will guide you through the process...
Oct 11, 2025

Creating a Raspberry Pi-based Web Dashboard for Real-Time Temperature and Humidity Data Visualization Using Flask and MQTT This tutorial will guide you through...
Oct 11, 2025

ARM TrustZone on STM32 Cortex-M33 parts gives you hardware-enforced isolation for firmware updates. Put your bootloader, crypto keys, and signature verification in the secure world where application code can't touch them.
Oct 11, 2025

A custom UART bootloader gives you full control over field firmware updates on STM32. This guide covers flash layout, bootloader logic, firmware flashing over serial, and USB DFU integration.
Oct 11, 2025

Introduction In embedded systems development, particularly when working with FreeRTOS on STM32 microcontrollers, analyzing Hard Fault and Stack Overflow...
Oct 11, 2025

Introduction Integrating a TPM 2.0 chip with STM32 microcontrollers enhances the security of embedded systems by enabling secure boot processes and DICE...
Oct 11, 2025

Implementing an nRF52-based BLE GATT Server for Heart Rate Monitoring with a Companion Android App Using Kotlin This tutorial will guide you through the...
Oct 11, 2025

Use STM32's TIM2 timer to generate PWM signals for DC fan speed control and RGB LED color mixing, with 1 kHz frequency and 8-bit resolution using STM32CubeIDE and the HAL library.
Oct 11, 2025

Introduction Implementing a real-time gesture recognition system on the STM32F746 microcontroller can enhance user interaction in various applications, from...
Oct 11, 2025

Dynamic frequency scaling on ESP32 can dramatically extend battery life for IoT devices. Use ESP-IDF's power management APIs and FreeRTOS tasks to automatically scale CPU frequency based on workload.
Oct 11, 2025

Store firmware on external SPI NOR flash, validate with CRC, and safely update STM32 internal flash — a practical guide to building a reliable field-update mechanism.
Oct 11, 2025

Implementing Wear Leveling and Journaling Algorithms for Reliable Data Storage in STM32 NOR Flash Firmware Using FatFs This tutorial will guide you through the...
Oct 10, 2025

Run a quantized CNN on an STM32 using CMSIS-NN for real-time 32x32 grayscale image classification. Covers model training, int8 quantization, camera preprocessing, layer-by-layer inference, and memory optimization for Cortex-M targets.
Oct 10, 2025

Introduction This tutorial will guide you through the implementation of a dual-mode Bluetooth Low Energy (BLE) GATT server on the ESP32 microcontroller, paired...
Oct 10, 2025

Introduction This tutorial will guide you through the process of connecting an ESP32 device to AWS IoT Core using MQTT with TLS authentication. We will use...
Oct 10, 2025