Goal

Replace an aging TP-Link router without spending actual network-appliance money, get router-level adblocking, and start building a home setup that can eventually isolate IoT devices and experiments on their own network.

Setup

Cable modem -> Shuttle DS68U -> OPNsense -> TP-Link AP mode
Hue button -> Home Assistant -> routine state -> Echo announcement

The router box was a used Shuttle DS68U: fanless, Intel Celeron 3855U, dual Intel gigabit LAN, tiny 1.3-liter body, and a very digital-signage-looking I/O panel. It cost about $50 plus shipping and tax. I flashed OPNsense onto it and moved the old TP-Link into access point mode.

The second box was a used Cryo mini PC with an i3-7100U, 4GB DDR4, 120GB NVMe, fanless aluminum case, and dual RTL8111E gigabit LAN. I was not as lucky on price, but it was still a useful Home Assistant box. I flashed Home Assistant onto it and connected it to my Philips Hue bulbs.

Worked

Router

Flashing OPNsense was smooth. The DS68U became the router, the TP-Link became the AP, and router-level adblocking worked. For a cheap eBay mini PC, that was a very satisfying result.

Routine button

Home Assistant could track a daily routine state and advance it from a Hue Smart Button. A separate automation announced the current block through an Echo Dot whenever the state changed.

Hue button -> input_select.current_block -> input_text.current_task -> Echo announcement

Failed

AP mode

The OPNsense side was boring in the good way. The TP-Link AP-mode experience was the fussy part and needed a couple resets before it behaved.

Routine model

The Home Assistant routine kind of worked, but it is brittle. It encodes the day as a long hand-written chain of states: Wake, Run, Breakfast, Work Block 1, Work Block 2, Lunch, Work Block 3, Work Wrap, Evening, Journal, Bed.

Work Block 1 -> Work Block 2 -> Lunch Prep -> Lunch -> Work Block 3

Changed

The router upgrade changed the home network from a consumer-router box into a small firewall/router setup I can understand and modify. The automation experiment also clarified something: automating decision-making is not the same as hardcoding a perfect day and asking a button to advance it.

The funny part is that this puts me in the neighborhood of software-defined networking at home and at work, just at wildly different scales.

Next

Last updated 2026-07-28.