Case study
EchoMuse: replacement software that turns the Echo Dot 2nd gen into a Home Assistant voice satellite
Replaces the software on an unlocked second-generation Amazon Echo Dot (2016, codename biscuit) so it works as a local Home Assistant voice satellite over the ESPHome API: EchoMuse's own Go firmware drives the microphones, speaker, LED ring and buttons, and a controller on the LAN handles wake words, devices and a dashboard. Its default emOS mode swaps Amazon's Android userspace for the project's own init and busybox while keeping the Dot's kernel from the owner's boot image. An engineering journal records how codec routes, the mute key and other hardware behavior were worked out by measuring the device and diffing the mixer and DAPM state while stock FireOS plays a sound.
- Targets
- Firmware
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
Requirements & limits
- Reviewed main commit 4bbf7ff (2026-10-27) is in active development. At review the latest stable device firmware is v2.18.1 (2026-10-15) and emOS 0.10 (2026-10-02), the controller add-on declares 2.26.3, and early-access v2.19.0-ea.2 and emos-v0.11-ea.1 builds followed. Only the Echo Dot 2nd gen is supported; README calls ports to the Echo Dot 3, Echo 2 and Echo Show 8 in progress and lists open issues, including no WPA3 on emOS under FireOS 6.
- Needs the user's own Echo Dot 2nd gen, first unlocked with third-party tools (firebreak running R0rt1z2's amonet-biscuit); README says this is done at the user's own risk and can soft-brick the device, and that unlock was not reviewed here. The setup wizard keeps a copy of the device's own boot partition and builds the emOS image from its kernel and device trees, and emOS mounts bionic and tinyalsa read-only from the device's /system. The emOS README says no bootable image is published because it would contain Amazon's kernel; releases carry the project's own firmware binary, init and userspace payload, and busybox with its source.
- Requires a working Home Assistant with an Assist pipeline, an always-on host for the controller as a Home Assistant add-on or Docker container, and Chrome or Edge for the one-time WebUSB setup. Source builds use the project's Docker compiler image for the Go device firmware, Python 3.12 for the controller, and emos/build.sh, whose release workflow compiles the init with a pinned Android NDK.
- CI runs the controller pytest suite with coverage floors, dashboard and Go device tests, dependency audits and image builds, and the journal and acceptance-test reports describe runs on the maintainer's own devices. These check EchoMuse's own behavior; it does not reproduce Alexa, and no Amazon software or service is recovered. This review ran no tests and used no device.
- MIT, with vendored SpeexDSP (BSD-3-Clause), an ONNX Runtime header, aioesphomeapi protocol buffers and a CC BY 4.0 timer sound listed in NOTICE.md; the project states it is not affiliated with Amazon. README says EchoMuse is written largely with Claude, directed by the maintainer, and that more than half the commits carry a Co-Authored-By: Claude line; no REA use is stated.
About this entry
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- emos/README.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- docs/rooting.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- JOURNAL.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- porting/README.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- CONTRIBUTING.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- controller/config.yaml GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- .github/workflows/ci.yml GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- .github/workflows/emos-release.yml GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- docs/uat-results/2.26.0.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- NOTICE.md GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- LICENSE GitHub · wilbowes/EchoMuse · Revision 4bbf7ff
- https://github.com/wilbowes/EchoMuse/releases/tag/v2.18.1
- https://github.com/wilbowes/EchoMuse/releases/tag/emos-v0.10
More in Firmware and hardware
- Binwalk · Tool
- unblob · Tool
- Ghidra Firmware Utilities · Tool
- EMBA · Tool
- Firmware Analysis and Comparison Tool (FACT) · Tool
- OFRAK · Tool
All 65 entries in Firmware and hardwareFirmware and hardware case studies (10)