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

Introduction Automating the process of unit testing and flashing firmware for STM32 microcontrollers can significantly streamline your development workflow....
Sep 5, 2025

Build a Wi-Fi logging subsystem on Zephyr RTOS v3.7+ that formats sensor data as JSON and publishes it over MQTT. Covers project setup, Wi-Fi connection, MQTT client configuration, and JSON payloads.
Sep 4, 2025

Customizing U-Boot Environment Variables for Automated Linux Kernel Boot with Device Tree Configuration Customizing U-Boot environment variables is essential...
Sep 4, 2025

Scan the I2C bus on STM32 to detect connected devices, then read accelerometer data from the MPU6050 using the HAL library. Covers wiring, address gotchas, sensor initialization, and practical debugging tips.
Sep 4, 2025

Use the NXP LPC55S69's one-time programmable eFUSE memory to store cryptographic keys for IoT device authentication. Covers key generation, eFUSE programming with blhost, runtime retrieval, and hardware-accelerated signing.
Sep 4, 2025

Introduction In the world of IoT, secure communication between devices is paramount. X.509 certificates provide a robust mechanism for ensuring that MQTT...
Sep 4, 2025

Introduction In this tutorial, we will implement a micro-ROS publisher/subscriber system on an STM32F4 microcontroller using FreeRTOS. This setup will enable...
Sep 4, 2025

Set up MCUboot on the nRF52840 to verify firmware signatures at every boot. Covers key generation, image signing with imgtool, flash partitioning, and testing secure boot using the nRF Connect SDK and Zephyr RTOS v3.7+.
Sep 4, 2025

Introduction In this tutorial, we will guide you through the process of setting up CMake with Visual Studio Code (VS Code) for ARM Cortex-M development using...
Sep 4, 2025

Running both Linux and FreeRTOS on an STM32F7 lets you combine rich OS features with hard real-time performance. This guide covers customizing U-Boot environment variables and boot scripts to select between the two operating systems at boot time.
Sep 4, 2025

Implementing Mahony Filter for Real-time 9-DoF IMU Sensor Fusion on STM32F4 Microcontroller The Mahony filter is an efficient algorithm for sensor fusion,...
Sep 4, 2025

Implementing CRC32 for Error Checking in RS-485 Communication at 9600bps Using STM32 HAL Library In this tutorial, we will implement CRC32 error checking for...
Sep 4, 2025

Implementing Secure Boot and Image Signing in a Nordic nRF52840 Using MCUboot with Zephyr RTOS This tutorial provides a step-by-step guide on how to implement...
Sep 4, 2025

The ESP32 has mbedTLS built in, but wolfSSL offers TLS 1.3 support and a smaller footprint. Here's how to set up a secure MQTT client using wolfSSL on ESP32.
Sep 4, 2025

PWM alone sets a static duty cycle, but DMA lets you stream an entire buffer of values to the timer automatically—zero CPU overhead. Here’s how to set up TIM1 with DMA on STM32F4 for smooth LED fading and responsive motor control.
Sep 4, 2025

Set up secure HTTPS-based OTA firmware updates on the ESP32 using ESP-IDF v5.3+, with custom partition tables, TLS certificate pinning, and automatic rollback protection to keep your IoT devices safely updatable in the field.
Sep 4, 2025

Configure OpenOCD for SWD debugging on STM32F4 with ST-Link. Covers wiring, config files, GPIO-based target reset management, and connecting from GDB or your IDE.
Sep 4, 2025

Introduction The STM32 microcontroller, when paired with a DMA (Direct Memory Access) controller, can efficiently handle SPI communication for driving TFT...
Sep 4, 2025

Implementing STM32 Bootloader via USB DFU with Application Jump This tutorial will guide you through the process of implementing a bootloader on STM32...
Sep 4, 2025

Customizing U-Boot Environment Variables for Dual Booting Linux and Bare Metal on Raspberry Pi 4 In this tutorial, we will guide you through the process of...
Sep 4, 2025

When you join a startup, especially in the fast-paced world of embedded systems and IoT, you step into a realm where every connection counts. Business...
Aug 26, 2025

Get a local LLM running on your Jetson Orin Nano in minutes using Ollama. Covers flashing JetPack, native and Docker installs, and running Llama 3.2:1b with GPU acceleration.
Aug 24, 2025

If you want to build robots, smart sensors, or automotive ECUs at the best teams in the world, you still have to speak the language of interviews. That...
Aug 22, 2025

There was a time when “AI” meant racks of GPUs humming away in a data center. Today, that assumption is outdated. The future of AI isn’t just in the cloud,...
Aug 21, 2025