
What was done
A Home Assistant integration for Nubert streaming speakers, with the BLE protocol decoded from the official app's traffic.
DatNoHand built a Home Assistant integration for the Nubert nuControl X-2 streaming speakers. The repo states that the protocol reverse engineering, the code and the docs were built with Claude Sonnet 5, with a human directing and reviewing throughout.
How it was done
There is no vendor API or public documentation, so the protocol came from capturing and decoding the official app's Bluetooth traffic. Each opcode in the protocol doc was checked against a real speaker before being marked confirmed. It was tested with a nuPro X-4000 pair.
Results
The integration gives a media player with power, volume, mute, source and sound modes, number entities for bass, mid-high, balance and five EQ bands, switches for loudness and analog gain, preset selection and a pairing button, with live state through BLE indications. Limits are listed honestly: Linux with BlueZ only, one BLE connection at a time, and write-only power state. The code is MIT licensed.