Hi, I'm Wouter.
Software Developer, Electronics Hobbyist, Homelab Enthusiast
I'm a software developer who likes to run things myself. At home that means a rack of second-hand servers, pfSense doing the routing, and a long list of self-hosted services, most of them held together with MQTT and Docker. The rest of the time I'm building something small with an ESP, patching a Minecraft proxy after watching it get attacked, or teaching a Reolink doorbell to behave like a SIP phone.
The posts here are write-ups of those projects: what I was trying to do, what got in the way, and what actually worked. If you run into the same problem, with any luck the fix is in there. The Homelab page has the hardware and the services running on it.
Recent posts
-
Turning a Reolink video doorbell into a SIP extension on my PBX
A bridge that makes a Reolink doorbell ring a real phone and lets you talk to the door from any SIP phone. Covers the three protocols the camera exposes, why pyVoIP got replaced with PJSIP, and the latency hunt that ended with a 2 second buffer inside the camera.
-
Getting a Logitech G920 working with Mario Kart Wii on Dolphin
A Dolphin GameCube-pad profile that maps a G920 wheel, pedals and paddle flippers to Mario Kart Wii, including a trick input that mimics pulling the real Wii wheel.
-
Self-hosting a Mario Kart Wii server for LAN play, with Dolphin and a real Wii
Running a private WiiLink WFC server on my homelab so Mario Kart Wii multiplayer works entirely on the LAN, between Dolphin instances and an unmodified Wii. Covers the three-stage patch chain, the docker compose stack, the two bugs that cost the most time, and what it takes on both kinds of client.
-
Getting a KPN TV+ box working behind your own pfSense router
KPN's TV+ box uses routed IPTV over multicast on a separate VLAN. Here's how to get it working behind pfSense (with your own bridge modem), including the DHCP, NAT, firewall and IGMP proxy bits the guides get wrong.
-
Responding to a live decompression attack on Velocity proxies
A write-up of a live decompression bomb attack targeting Velocity Minecraft proxies, how I identified it, mitigated it in real time, and contributed fixes to Velocity.
Disclaimer: I use AI to help write my posts. Building these projects is what I love, but I also want to share them with the world, since I believe they can bring real value to the right person. Writing isn't quite my thing though, so using tools like LLMs helps me get that story across.