/images/avatar.png

buzzdeee

Building an OpenBSD Home Automation Gateway with Zigbee2MQTT and openHAB

If you’ve been following my previous adventures in home automation, you know I’ve been sliding down the Zigbee rabbit hole for a while. It all started with getting my hands dirty tracking frames in Zigbee-Sniffing unter OpenBSD: Deep Dive mit dem TI CC2531. Out of curiosity, I got myself a Zigbee Coordinator and wrote about connecting it to an automation platform in Zigbee Home Automation auf OpenBSD: Sonoff Dongle-M und openHAB.

Recently, I picked up a batch of surplus thin clients that turned out to be the absolute perfect fit for a dedicated home controller. Here is how I built a robust, isolated smart home gateway using OpenBSD 7.9-snapshot, Zigbee2MQTT, Mosquitto, and openHAB.

Two Weeks of OpenBSD Ports maintenance: LLVM 22 Fallout, SDR Stack Expansion, and Ruby Housekeeping

It has been a busy two weeks in the OpenBSD ports tree. Between major toolchain updates in base causing some fallout, expanding our Software Defined Radio (SDR) ecosystem, updating my repository of GNUstep app wrappers, and performing long-overdue dependency pruning for some popular web scanners, there is plenty to cover.

Here is a comprehensive breakdown of the updates, new imports, and maintenance work happened over the last fortnight.


The LLVM 22 Upgrade & GNUstep Fallout

The update of LLVM to version 22 in OpenBSD base was a fantastic milestone, but as with many major compiler jumps, it introduced a wave of stricter compilation constraints and deprecations. As the maintainer of a significant portion of our GNUstep ecosystem, I watched the build infrastructure light up with failures.

OpenBSD Ports Updating Spree: OpenVox, DFIR Tools, and Fixing Rocrail

I spent a chunk of time this week on a focused OpenBSD ports updating sprint, putting a number of other projects a bit to the side to finally tackle this overdue activity. As it usually goes, what started as a few simple bumps quickly turned into a giant domino effect of interconnected dependencies—especially in the Ruby and Python ecosystems ;)

It’s not worth listing every single minor bump explicitly, but here is a breakdown of the major updates that just hit the tree.

Zigbee Home Automation on OpenBSD: Sonoff Dongle-M and openHAB

In my previous post, we looked at sniffing Zigbee traffic using the older TI CC2531 🛒Affiliate Link: I may receive a small commission at no extra cost to you when you buy via this link. A way to support my work.. While great for learning, it’s not the hardware you want running your actual home. The CC2531 is excellent for sniffing because it simply runs the sniffer firmware—that is what I used it for, and that is what I will keep using it for.

Zigbee Sniffing on OpenBSD: Diving Deeper with the TI CC2531

In my previous post, I explored using the nRF52840 nice!Nano for dual-duty BTLE and Zigbee sniffing. While the BTLE side worked like a charm, the Zigbee side remained stubbornly silent in Kismet and Wireshark.

To rule out firmware or hardware limitations, I decided to go with a classic: the Texas Instruments CC2531 USB Dongle 🛒Affiliate Link: I may receive a small commission at no extra cost to you when you buy via this link. A way to support my work..

Tracks and Daemons: Digital Model Railroading on OpenBSD

The World in Miniature

Like many kids of my generation, I spent countless hours in the world of analog model railroading. But for me, it wasn’t just about watching a locomotive circle a loop of track. The real magic was in the creation: assembling plastic house kits, meticulously crafting terrain, and the complex “under-the-table” work of wiring up lights and electromagnetic turnouts. It was my first introduction to engineering and project management, though I didn’t know it then.