0xreversed/with.ai
AppsWorksSource available
Target: Generic 4x2 HDMI matrix switcher

Replaced a cheap HDMI matrix 2015 web UI with protocol-reversed clients built by agents

Generic 4x2 HDMI matrix switcher: Routing, power and EDID from any device on the network, no vendor app.
Image: scotchnhand (hdmi-matrix-control README)

What was done

scotchnhand reverse engineered a generic 4-input 2-output HDMI matrix LAN protocol and shipped a local web app, a Home Assistant integration and a SwiftUI app instead.

The box routes four inputs to two outputs with a circa-2015 embedded web page and no public API. scotchnhand reverse engineered its real wire protocol and built three clients on top: a zero-dependency local web app with an installable PWA frontend, a Home Assistant custom integration and a native SwiftUI app for iPhone and iPad, all talking to the matrix directly on the LAN with no cloud. An AGENTS.md file guides the coding agents that built the clients, and some commits carry a Co-Authored-By: Claude line.

How it was done

docs/PROTOCOL.md documents the discovered protocol: JSONP-style polling and raw POST commands covering routing, power and EDID writes, captured against the real device. The test suites replay captured responses, so protocol parsing and command construction are checked in CI on every push alongside linting and weekly security scans. The backend serialises requests and coalesces reads between open tabs because the device single-threaded HTTP server locks up under rapid or concurrent requests, and a hardware note explains what to do when it does.

Results

The web app, the Home Assistant entities and the iOS app route inputs, switch power and edit EDID from any device, with a Docker image for easy deployment, HACS installation and issue templates. The work is documented rather than mysterious: the full protocol, the development guide, the roadmap of what was deliberately rejected and the hardware limits are all in the repository, released under MIT.