ygelfand/echolocal
Turn an Amazon Echo Dot or Echo Show into a fully local Home Assistant voice satellite, media player, display and Bluetooth proxy. No Amazon, no cloud.
About ygelfand/echolocal
ygelfand/echolocal is an open-source project on GitHub, mainly written in Go. Turn an Amazon Echo Dot or Echo Show into a fully local Home Assistant voice satellite, media player, display and Bluetooth proxy. No Amazon, no cloud. It currently holds 439 stars and 23 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).
Project Overview
AI Homed tracks it on the Today's Trending board, currently at rank #55 with 25 new stars today.
GitHub Repository Details
README
EchoLocal
Turn an Amazon Echo Dot or Echo Show into a local Home Assistant voice satellite, speaker and display.
A pure-Go replacement for Amazon's services. It speaks the ESPHome native API, so Home Assistant discovers it the way it discovers any ESPHome device.
Devices
| Device | Codename | Screen | Camera | | --------------------- | -------- | --------------- | ------ | | Echo Dot (2nd gen) | biscuit | LED ring | No | | Echo Show 5 (1st gen) | checkers | 5.5", 960 × 480 | Yes | | Echo Show 5 (2nd gen) | cronos | 5.5", 960 × 480 | Yes | | Echo Show 8 (1st gen) | crown | 8", 1280 × 800 | Yes |
Features
Every device
- Wake words on the device with microWakeWord and
- Speaker: a Home Assistant
media_playerfor announcements, TTS and music, ducking under the
- White noise: two layers from white, pink, brown, rain, ocean, fan, fire, brook, cabin,
- Intercom: calls between devices on your network. Audio on the Dot, audio and video on the Shows.
- Timers and alerts, with custom tones for chimes, timers and wake sounds.
- Bluetooth proxy for Home Assistant, so the device extends your Bluetooth for integrations
9c5fa6f1-91c4-4f56-bb9f-d92acfd9d40b, major 1, and a minor
from the last two bytes of its factory MAC, for tools like
BLE Positioning System.
- Light sensor, reported to Home Assistant.
- Updates from Home Assistant, stable or development channel.
Echo Dot
LED ring. Twelve individually addressable segments, effects for ambient, motion, alerts and room-reactive behavior, and a color per segment. The ring can follow the room's volume.
Echo Show
- A native dashboard with a clock in one of eight faces, the weather, and your Home Assistant
- Tessera dashboards
- 33 audio visuals on the GPU, for the screen saver or for each assistant while it listens and
- Nine styles and eighteen color themes
- Messages from Home Assistant, timers on screen
- An Immich photo screen saver
- A Chromecast receiver for YouTube, YouTube TV and Prime Video and more
- A Bluetooth speaker
- An RTSP camera on port 8554 with ONVIF discovery, and a snapshot camera in Home Assistant.
- Settings on the screen or from Home Assistant, and config sync between devices
The optional integration
Everything above works with stock Home Assistant. The EchoLocal integration (HACS) adds a dashboard and cards for these devices, turn history with recordings, a wake word library, custom tones, groups and a health view.
Installing
You need the device connected over USB with TWRP as its recovery. Follow the XDA guide for yours:
Downloadecholocal for your computer from the
latest release:
| Computer | File |
| ------------------- | ------------------------------ |
| Mac (Apple silicon) | echolocal_darwin_arm64 |
| Mac (Intel) | echolocal_darwin_x86_64 |
| Linux (x86-64) | echolocal_linux_x86_64 |
| Linux (ARM64) | echolocal_linux_arm64 |
| Windows (x86-64) | echolocal_windows_x86_64.exe |
| Windows (ARM64) | echolocal_windows_arm64.exe |
On macOS and Linux:
mv echolocal_darwin_arm64 echolocal
chmod +x echolocal
xattr -d com.apple.quarantine echolocal # macOS only, if Gatekeeper blocks it
./echolocal install --name living-room
On Windows:
Rename-Item echolocal_windows_x86_64.exe echolocal.exe
.\echolocal.exe install --name living-room
The installer detects the device, flashes its boot image, installs EchoLocal, and asks for your Wi‑Fi if the device isn't on a network yet.
It then shows up in Home Assistant. Add it, and Home Assistant sets its encryption key.
Building it yourself
make build-echod # echod for the Echo Dot
make build-echod BOARD=crown # echod for an Echo Show: checkers, cronos or crown
make install-echod # build, install and restart it on the attached device (requires prior full installation)
How it fits together
- echod runs on the device: the hardware, the screen, the wake word engines, the conversation,
- echolocal is the host CLI: installing, Wi‑Fi, and offline tools for debugging the device.