EchoMuse README

The project's README from github.com/wilbowes/EchoMuse. As one markdown file: README.md.

EchoMuse

Turn an old Amazon Echo Dot (2nd gen) into a local voice assistant for Home Assistant.

CI Firmware emOS Controller License: MIT

Join the community — Discord · r/echomuse

EchoMuse makes a second-hand Echo Dot a voice satellite for Home Assistant: say the wake word, ask something, and hear the answer from the Dot. There is no Amazon account, no Alexa and no cloud service of ours. The Dot shows up in Home Assistant as an ordinary ESPHome voice satellite, so there is nothing extra to install there.

At a glance

What it is

What it isn't

What you need

An Echo Dot 2nd gen The hardware being repurposed.
Home Assistant With a working Assist pipeline.
An always-on computer Runs the controller. The Home Assistant machine itself is fine if it runs add-ons.
A Linux computer (a live USB works) and a micro-USB cable, once To unlock the Dot. The unlock does not run on macOS.
Chrome or Edge, once The setup wizard talks to the Dot over USB from the browser.

Getting started

  1. Unlock the Dot with R0rt1z2's amonet-biscuit. Either version works: v1.1.0 leaves it on FireOS 5, v2.0.0 moves it to FireOS 6. The rooting guide explains the choice. You do this at your own risk.

  2. Start the controller, as an add-on:

    Add the EchoMuse repository to Home Assistant

    or with Docker:

    mkdir echomuse && cd echomuse
    curl -O https://raw.githubusercontent.com/wilbowes/EchoMuse/main/controller/docker-compose.deploy.yml
    curl -o .env https://raw.githubusercontent.com/wilbowes/EchoMuse/main/controller/.env.example
    docker compose -f docker-compose.deploy.yml up -d
    
  3. Run the setup wizard from the dashboard with the Dot plugged in over USB. It installs everything and joins your WiFi. Approve the Dot in the dashboard and Home Assistant discovers it.

The quickstart walks through all three.

emOS or FireOS?

The wizard offers two ways to run EchoMuse on the Dot:

Features

Privacy

Status and known issues

EchoMuse is in active development and runs daily on a small fleet. emOS is newer than FireOS and has fewer device-hours behind it. Open issues worth knowing before you start:

Everything else is in the issue tracker.

Getting help

Documentation

Quickstart From nothing to talking to your Dot.
Rooting Unlocking the Dot, and which amonet version to use.
Configuration Every setting, in plain language.
FAQ Common problems and their fixes.
emOS How our own userspace on the Dot works.
How the voice pipeline works The path from wake word to answer.
Device ↔ controller protocol For porting EchoMuse to new hardware.
Contributing Building from source, tests, and how to send changes.
Engineering journal How each part was worked out, including the dead ends.

How it's built

EchoMuse is written largely with Claude, Anthropic's AI model, directed by the maintainer. More than half the commits carry a Co-Authored-By: Claude line, and replies on our issues are signed "Team EchoMuse (powered by Claude)". Nothing about that is hidden.

Credits

EchoMuse would not exist without:

Licence

EchoMuse is MIT licensed. It includes third-party components that keep their own licences, listed with their copyright notices in NOTICE.md. emOS releases also ship busybox (GPL-2.0), with its source and licence attached to each release, and wpa_supplicant (BSD).

Amazon, Echo, Echo Dot, Alexa and FireOS are trademarks of Amazon.com, Inc. or its affiliates. EchoMuse is an independent project, not affiliated with or endorsed by Amazon.

EchoMuse (wilbowes/EchoMuse)

Searching Database…

这是什么?它把一台二手的 Amazon Echo Dot(第二代,2016 年)改造成 Home Assistant 的本地语音终端:说出唤醒词、提问,然后从 Dot 里听到回答。不需要 Amazon 账号、不需要 Alexa、也不连云端——麦克风、扬声器、LED 灯环和按钮都照常工作。
这个软件是跑在我的电脑上、Dot 本身上,还是两边都要?两边都要。一个控制器作为 Home Assistant 插件或 Docker 容器运行在你自己的网络里,而 Dot 本身则刷入替代固件——默认是 emOS,也可以是刷过机的 FireOS。
从零开始到 Dot 能用,设置流程是什么样的?三步:先用 R0rt1z2 的 amonet-biscuit 工具通过 USB 对 Dot 做一次解锁,然后把控制器作为 Home Assistant 插件或 Docker 容器启动,最后插上 Dot、在仪表盘里运行设置向导——它会装好所有东西并连上你的 WiFi。
除了 Dot 本身,我还需要准备什么?需要一个配有可用 Assist 管道的 Home Assistant,以及一台一直开着的电脑来跑控制器。一次性的解锁还需要一台 Linux 电脑(用 live USB 也行)、一根 micro-USB 线和 Chrome 或 Edge 浏览器——解锁在 macOS 上跑不了。
可能出什么问题,Dot 会有风险吗?它还不能开箱即用:如果哪一步出错,解锁过程可能把 Dot 刷成半砖(XDA 帖子里有恢复办法)。目前只有第二代 Dot 能用——Dot 3、Echo 2 和 Echo Show 8 的移植正在进行中——而且 FireOS 6 上的 emOS 无法加入 WPA3 网络。
我说的话会不会传到我的网络之外?你的语音只留在你的局域网里:Dot 自己监听唤醒词,然后音频送到控制器,再交给 Home Assistant,没有任何遥测或数据统计。如果用完全本地的 Assist 管道(Whisper 和 Piper),任何数据都不会离开你的网络。
许可证就是纯粹的 MIT,还是有什么附加条款?EchoMuse 本身是 MIT,但第三方组件保留各自的许可证(见 NOTICE.md),而且 emOS 的发布包里捆绑了 busybox(GPL-2.0)和 wpasupplicant(BSD),并附上了源代码。
救活的 Dot 到底能做什么?通过 Home Assistant 的 Assist 进行语音控制,唤醒词检测可以在 Dot 上也可以在控制器上,支持插话,还适合多台 Dot 的家庭——最先听到唤醒词的那台 Dot 来回答。每台 Dot 还能当作 Home Assistant 的媒体播放器(媒体浏览器、Music Assistant、电台),另外还有定时器、广播通知、每台 Dot 一个的蓝牙代理和一个环境光传感器。
emOS 还是刷机的 FireOS——我该选哪个?默认选 emOS:它用一个小型 Linux 用户空间替换掉 Amazon 的 Android,能跑在 FireOS 5 和 6 的设备上,3.5mm 耳机孔在它上面也能正常工作;向导会保留你原来的启动镜像,恢复大约只需十秒。刷机的 FireOS 保留 Android 5,只支持 FireOS 5,是更老但经过更多实战检验的方案。
我可以训练自己的唤醒词吗?可以——用 owwforge 训练唤醒词,然后从仪表盘安装。检测可以在每台 Dot 上运行,也可以在控制器上运行;如果某台 Dot 跑不动,控制器会自动接管,所以它不会变聋。
Dot 的静音键真的能切断麦克风吗?在硬件层面做不到。它是软件静音:把音频芯片里的麦克风静音,开启时 EchoMuse 也拒绝收音,但 Dot 2 并没有一个物理断开麦克风的硬件开关。
Creator
wilbowes
Size
8.8 MB
Stars
1.3K
Age
5mo
Commits · 90 Days