Skip to content

Open Source ESPHome Firmware for Your Private AI-Powered Satellite1 Voice Assistant & Multisensor

License

Notifications You must be signed in to change notification settings

FutureProofHomes/Satellite1-ESPHome

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Satellite1 Core Board ESPHome Firmware

Open-Source ESPHome Firmware for Your Private AI-Powered Satellite1 Voice Assistant & Multisensor
Explore the docs »

View Demos · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About the Project

The Satellite1 ESPHome firmware should be flashed on your FutureProofHomes Core Board. For flashing instructions please visit Docs.FutureProofHomes.net. After the firmware is successfully flashed and your Core Board is connected to your Wifi it will appear in your Home Assistant as a new device called "Satellite1".

Key Features of the Firmware

  • Works with the Home Assistant Platform so you can control your home.
  • Optionally connect the Satellite1 to Local AI Ollama or OpenAI ChatGPT to chat with an AI and control your home. Do this at your own risk.
  • This firmware enables your FutureProofHomes Core Board to mount with our HAT board which then unlocks:
  • On-Demand flashing of our open source XMOS firmware for audio echo cancellation and other audio processing algorithms.
  • On-Device WakeWord support.
  • Temperature/Humidity/Light sensor readings of the room
  • Attachable mmWave Radar for Human Presence Detection
  • Music streaming via HA Media Browser or Music Assistant
  • Volume Up/Down & Action Buttons
  • Hardware & Software Mute Buttons
  • 360 degree LEDs & Notification Animations
  • Support for TTS Announcements via Home Assistant
  • USB-C Power Delivery for easy power input
  • GPIO expansion ports for to quickly add accessories like speakers, sensors, radios, amplifiers, etc.
  • (COMING SOON) Bluetooth Room Presense Detection (currently this feature is crashing)

Why Open Source?

We believe it is irresponsible to ask customers to trust that our microphone and AI in-a-box protects your privacy. To hold ourselves and the whole world accountable it is prudent to open-source our work so that we can all benefit from this amazing technology. Let's build together.

Why Purchase from FutureProofHomes?

Put simply, your purchase helps fund our team and further innovation. Also, the FutureProofHomes team will work hard to give you top-quality products that are tested, fully-functional, in stock (as often as possible) and lead with great community support. You can purchase Satellite1 components individually, or purchase the entire devkit as a package. Help us, help you!

(back to top)

Built With

  • ESPHome

(back to top)

Getting Started

Go to Docs.FutureProofHomes.net and follow the instructions to assemble, flash and set up your Core Board.

Prerequisites

  • FutureProofHomes Core Board & USB-C cable to plug into your computer.
  • Highly recommend our FutureProofHomes HAT board to unlock all the features.

Usage

For more examples, please refer to the Documentation

(back to top)

Core Board Roadmap

  • TBD

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Developing, Testing & Debugging

Create/activate environment by running from project root:

source scripts/setup_build_env.sh

Build firmware on your local machine:

esphome compile config/satellite1.yaml

Upload firmware to your Core Board:

esphome upload config/satellite1.yaml

Connect the device to your wifi network:

  1. Go to: web.esphome.io
  2. Click on "Connect" and select the correct JTAG/serial debug unit
  3. Click on the three dots and select 'Configure WiFi'

Tail the Core Board's Logs:

  1. Go to: web.esphome.io and connect then click logs... or
  2. Tail the ESPHome logs of the Core Board's running firmware from the command line:
esphome logs config/satellite1.yaml

Home Assistant Voice Assistant Debugging

  1. Set up you local pipeline
  2. Troubleshoot your pipeline

License

Distributed under the ESPHOME License. See LICENSE.txt for more information.

(back to top)

Contact

FutureProofHomes - Website

(back to top)

YouTube

Checkout out our growing YouTube Channel - YouTube.com/@FutureProofHomes

(back to top)

Acknowledgments

  • @gnumpi for all the amazing C code
  • @qnlbnsl for all the Github Action & automated release work
  • Nabu Casa for making this all possible
  • Your name here soon...

(back to top)