A slow journal of embedded systems, hardware, and low-level craft.
Long-form writing about microcontrollers, assembly language, driver development, and the strange specific corners of hardware that most publications no longer cover.
Issue 01 · April 2026
Welcome back. We are restarting a quiet publication that used to live at this address, and we think you will find the new work familiar in spirit.
The site you are reading was, for most of two decades, the home of a small and widely used piece of Windows software. The software is gone. The URL stays. We think there is still an audience for the kind of careful technical writing the old site tried to produce, and we think that audience has been badly served by the last few years of hardware publishing.
We are going to publish slowly. We are going to publish long. We are going to publish when it is finished. If that sounds like what you were hoping existed, pour some coffee. There is a primer below.
Three places to start reading.
If you are new to the journal, these three pieces give you the shape of the thing.
Why we still write about the parallel port.
It is not the hardware that is interesting. It is the specific thinking a direct I/O port still demands of the person using it.
The weight of a single instruction.
Assembly language has not gotten easier. The questions it lets you ask about a program have not gotten less useful.
Notes from a year of firmware postmortems.
Twelve bugs. Six fixed in software. Two fixed in hardware. The rest were fixed, quietly, in the documentation.
The datasheet said the pin could sink 25 mA. The application note, published by the same company six years later, said the pin could sink 25 mA only if. The bug was in the gap between the two documents.
What a datasheet will not tell you about the MCP23017
Read the full piece8051·Z80·68HC11·PIC16F84·AVR ATmega·STM32F4·RP2040·ESP32·MSP430·Parallax Propeller·Raspberry Pi·Arduino Due·BeagleBone·MAX7219·MCP23017·DS1307·Parallel Port·USB-to-Serial·JTAG·SWD·I²C·SPI·CAN·UART·RS-232·RS-485
From the workbench, in passing.
On noise, and the difficulty of finding where it is actually coming from.
A one-afternoon investigation that turned into a two-week chase through the analog front end of a temperature logger. Notes before the formal writeup lands.
The PIC programmer that keeps refusing to die, and what that actually means.
A decade-old programmer, still in daily use, still reliable. The lesson is not nostalgia. The lesson is what made the thing well-engineered in the first place.
What we actually mean when we say “production firmware.”
A short terminology note. The difference between firmware that works and firmware that ships matters more than most engineers quietly acknowledge.
From the journal.
Recent writing. Unscheduled. Arrives when it is finished.
- Why Your IIR Filter Is Unstable and How to Fix It in 2026?You wrote a clean IIR filter. The MATLAB plot looked beautiful. You ported it to your DSP, microcontroller, or audio plugin, and the output exploded. … Read more
- UART vs SPI vs I2C: When to Use Each Protocol in 2026If you’ve ever stared at a sensor datasheet wondering which communication protocol to wire up, you’re in good company. UART, SPI, and I2C are the … Read more
- What Is a Biquad Filter and Why Everyone Uses Them in 2026If you have ever touched an EQ plugin, tuned a subwoofer, used a Web Audio API demo, or even worn a fitness tracker that smooths … Read more
- What the GOT and PLT Do in ELF Executables: How Dynamic Linking WorksIf you’ve ever run objdump on a Linux binary and seen puts@plt instead of a real address for puts, you’ve met the two quiet workhorses of every dynamically linked ELF … Read more
- What is a Bootloader on a Microcontroller and Why Arduino Needs One?You plug an Arduino into a USB cable, hit Upload in the IDE, and a few seconds later your sketch is running. No external programmer, no ribbon … Read more
The catalog.
Four subjects. Every piece on the site lives under one of them.
This domain was first registered in January 2003 as the home of inpout32.dll, a Windows DLL and kernel-mode driver that gave user-level programs direct access to hardware ports on the NT line of Windows. It was written at the moment Microsoft started locking down ring-zero access, and hobbyists still needed a way to talk to the parallel port.
The software was hosted here for the better part of two decades. It was forked many times, academic papers cited it, university coursework linked to it, and every hobbyist project that needed to toggle a pin from user space eventually found its way to the original download page. It quietly became the de facto standard for hardware port access on Windows in an era that no longer exists.
The original site eventually lapsed. The domain became available.
We took the name because the work that happened here mattered, and because the URL had been pointing at a particular kind of technical writing for more than twenty years. Plain, accurate, and useful to the person on the other end of the screen. We intend to keep it pointing in the same direction.
About this journal
Written by a small group who read datasheets for fun and think the best technical writing has been getting rarer, not better. New dispatches arrive when they are finished. The archive grows as it grows.




