Blog
Technical writing on embedded software, firmware patterns, and the tools we use.
Getting Started with Zephyr RTOS on STM32 Nucleo F103RB
If you've been working with bare-metal STM32 development using HAL or CubeMX, you've probably heard about Zephyr RTOS - the Linux Foundation's open-source, production-grade real-time operating system that's gaining serious traction in the embedded industry.
(Embedded Linux Part 5) Accessing Hardware Devices on Raspberry Pi 4: GPIO, I2C and USB
With a working shell on the RPi4, the next step is learning how to access and control hardware devices from Linux. This lab covers three areas: exploring the Linux device model through `/dev` and `/sys`, driving GPIOs through the sysfs interface
Hardware Debugging on AliExpress Modules: MAX30102 and SH1106 OLED
Building a medical device fot Hackster.io Arduino UNO Q contest, It meant dealing with cheap AliExpress modules that do not always behave the way the seller describes
(Embedded Linux Part 4) From Kernel Panic to Shell Prompt: Building a Minimal Linux Userspace on Raspberry Pi 4
With TF-A, U-Boot, and the Linux kernel running on the Raspberry Pi 4, the boot chain is solid. But a kernel with no userspace is just a very expensive panic message.
(Embedded Linux Part 3) Cross-Compiling the Linux Kernel for Raspberry Pi 4: From Source to Boot
With TF-A and U-Boot running, we now control the full boot chain. The next step is bringing up the Linux kernel itself — from source to first execution on hardware.
(Embedded Linux Part 2) Booting a Raspberry Pi 4 with TF-A and U-Boot: A Practical Journey
If you have ever tried to set up a proper embedded Linux boot chain on a Raspberry Pi 4, you know it is not as simple as flashing an image and pressing power.
I'm Building an AI Neonatal Monitor for the Hackster.io "Invent the Future with Arduino UNO Q and App Lab" contest
AI Neonatal Monitor for the Hackster.io Arduino UNO Q Contest
(Embedded Linux Part 1) How to Build an ARM Cross-Compiling Toolchain with Crosstool-NG
Building embedded Linux systems means compiling code on your x86 laptop for an ARM64 board. Your native gcc can't do that — you need a cross-compiler. In this tutorial, you'll build one from scratch using Crosstool-NG: configure GCC 14.3.0 targeting AArch64, choose musl as your C library, and test your binary on QEMU without any physical hardware.
My Journey at Embedded World 2026
If there's one event every embedded engineer should experience at least once, it's Embedded World. This year, I made the trip to Nuremberg for Embedded World 2026 (March 10–12), and I came back with a head full of ideas, a bag full of dev boards, and a clear sense of where our industry is heading...
