Image of Intro to Embedded Rust Part 11: defmt and Step-through Debugging Intro to Embedded Rust Part 11: defmt and Step-through Debugging

In this tutorial, we’ll explore how to use the Raspberry Pi Debug Probe to perform step-through debugging in Rust.

Image of Intro to Embedded Rust Part 10: Interrupts Intro to Embedded Rust Part 10: Interrupts

In this tutorial, we'll explore how to configure and handle timer interrupts on the Raspberry Pi Pico 2, creating a blinking LED program where the processor spends most of its time sleeping while hardware interrupts handle all the timing.

Image of Intro to Embedded Rust Part 9: Test-Driven Development Intro to Embedded Rust Part 9: Test-Driven Development

In this tutorial, we'll explore how to apply TDD principles to embedded Rust by writing unit tests for our TMP102 driver library.

Image of How Hardware Gets Hacked (Part 2): On-boarding How Hardware Gets Hacked (Part 2): On-boarding

Explore a hardware security workflow using firmware builds, simulation tools, serial commands, and automated tests for microcontroller systems.

Image of Arduino OTA Updates Without an Arduino Cloud Account Arduino OTA Updates Without an Arduino Cloud Account

Design reliable Arduino OTA update systems without relying on Arduino Cloud, balancing security, convenience, battery life, and recovery planning.

Image of Intro to Embedded Rust Part 8: Lifetimes and Lifetime Annotations Intro to Embedded Rust Part 8: Lifetimes and Lifetime Annotations

In this tutorial, we’ll discuss the concept of lifetimes and demonstrate a few ways in which you can help the compiler (and borrow checker) understand your intentions with references by using lifetime annotations.

Image of How To Reset an Arduino MCU from Code How To Reset an Arduino MCU from Code

Explore software-based Arduino reset techniques, including NVIC_SystemReset, ESP.restart, watchdog timers, and hardware-triggered resets.

DIY IP Camera with the Seeed XIAO ESP32 Sense, ESPHome, & Home Assistant Actualizado: 2026-03-24

Turn an ESP32-S3 board into a low-cost IP camera with ESPHome and connect it to Home Assistant dashboards with real-time video.

Image of Getting Started with the Microchip VeryVerilog Kit Getting Started with the Microchip VeryVerilog Kit

Follow the setup and programming process for the VeryVerilog kit, including firmware loading and exploring built-in logic demos.

Image of Intro to Embedded Rust Part 7: Creating a TMP102 Driver Library and Crat Intro to Embedded Rust Part 7: Creating a TMP102 Driver Library and Crat

In this tutorial, we'll learn how to create a reusable library (crate) in Rust by extracting our TMP102 sensor code into a separate package that can be shared across multiple projects.

Image of Thread-safe printf Debugging - Part 2 Thread-safe printf Debugging - Part 2

Learn how to make printf and snprintf safe for ISRs and RTOS threads by preventing race conditions using interrupts, mutexes, and atomics.

Image of Thread-safe printf Debugging - Part 1 Thread-safe printf Debugging - Part 1

Learn methods to strengthen embedded debug workflows with atomic checks, mutex tools, and race-free UART handling.

Image of Intro to Embedded Rust Part 6: Generics and Traits Intro to Embedded Rust Part 6: Generics and Traits Fecha de publicación: 2026-02-26

Generics and traits are two of Rust's most powerful features for writing flexible, reusable code without sacrificing type safety or performance. We’ll examine both generics and traits in this tutorial.

Image of How To Write Modular Code and Why You Should How To Write Modular Code and Why You Should

Discover modular coding methods that enhance maintainability, reduce errors, and streamline development through reusable functions and structured design.

Image of Intro to Embedded Rust Part 5: Reading from an I2C Temperature Sensor Intro to Embedded Rust Part 5: Reading from an I2C Temperature Sensor

In this tutorial, we'll explore how to communicate with external digital devices using Inter-Integrated Circuit (I2C), one of the most popular communication protocols in embedded systems.

Image of Intro to Embedded Rust Part 4: Ownership and Borrowing Intro to Embedded Rust Part 4: Ownership and Borrowing

By the end of this tutorial, you'll have a solid understanding of how ownership, borrowing, references, and scope work together to create safe, efficient code that works just as well on a microcontroller as it does on a desktop computer.

Image of Intro to Embedded Rust Part 3: USB Serial Logging and Debugging Intro to Embedded Rust Part 3: USB Serial Logging and Debugging

In this tutorial, we'll expand our blinking LED project to add USB serial communication, enabling us to send debug messages from our Raspberry Pi Pico 2 to a computer.

Image of The Best MCU Peripheral You've Never Heard Of The Best MCU Peripheral You've Never Heard Of

Learn how Microchip’s CLB, CLC, and AVR CCL peripherals enable gate-level functions without external hardware.

Image of Schleissheimer Logo Schleissheimer

Schleissheimer is a leading provider of software and hardware solutions in the field of embedded systems, specializing in test equipment and engineering services.

Image of SPI Controller Peimplementation in SystemVerilog SPI Controller Peimplementation in SystemVerilog

Previously, we looked at the peripheral side implementation of the Serial Peripheral Interface (SPI) protocol in SystemVerilog. Now, let’s take a closer look at designing the controller in SystemVerilog.