cross-posted from: https://lemmit.online/post/225981
This is an automated archive made by the Lemmit Bot.
The original was posted on /r/homeassistant by /u/janostrowka on 2023-07-19 12:49:02.
Hopefully this will come in handy for our Year of the Voice.
TL;DR: Justin Alvey replaces Google Nest Mini PCB with ESP32 custom PCB which he’s open-sourcing. Shows demo of running LLM voice assistant paired with Beeper to send and receive messages.
Tweet text thread (I would also highly recommend checking out the video demos on Twitter):
I “jailbroke” a Google Nest Mini so that you can run your own LLM’s, agents and voice models. Here’s a demo using it to manage all my messages (with help from @onbeeper) 📷 on, and wait for surprise guest! I thought hard about how to best tackle this and why
After looking into jailbreaking options, I opted to completely replace the PCB. This let’s you use a cheap ($2) but powerful & developer friendly WiFi chip with a highly capable audio framework. This allows a paradigm of multiple cheap edge devices for audio & voice detection…
& offloading large models to a more powerful local device (whether your M2 Mac, PC server w/ GPU or even “tinybox”!) In most cases this device is already trusted with your credentials and data so you don’t have to hand these off to some cloud & data need never leave your home
The custom PCB uses @EspressifSystem’s ESP32-S3 I went through 2 revisions from a module to a SoC package with extra flash, simplifying to single-sided SMT (< $10 BOM) All features such as LED’s, capacitive touch, mute switch are working, & even programmable from Arduino (/IDF)
For this demo I used a custom “Maubot” with my @onbeeper credentials (a messaging app which securely bridges your messaging clients using the Matrix protocol & e2e encryption) which runs locally serving an API
I’m then using GPT3.5 (for speed) with function calling to query this
Fro the prompt I added details such as family & friends, current date, notification preferences & a list additional character voices that GPT can respond in. The response is then parsed and sent to @elevenlabsio
I’ve been experimenting with multiple of these, announcing important messages as they come in, morning briefings, noting down ideas and memos, and browsing agents. I couldn’t resist - here’s a playful (unscripted!) video of two talking to each other prompted to be AI’s from "Her
I’m working on open sourcing the PCB design, build instructions, firmware, bot & server code - expect something in the next week or so. If you don’t want to source Nest Mini’s (or shells from AliExpress) it’s still a great dev platform for developing an assistant! Stay tuned!
It’s not a jailbreak it’s a chip/board swap.A jailbreak would let you run your own code in the original firmware/os at an administrative privilege level.
Still cool but I’d be even happier with a proper jailbreak or firmware overwrite that lets you use the original guts with your own software.
Agreed, I put it in quotes, and listed the PCB swap in the title for that reason. I probably should have used single quotes.
This is so cool! Especially for reviving old Mini’s.
Yeah I’m super keen to gut some old minis. Hopefully it works with the Google Home Minis as well.
Yeah, I have a Nest Mini that randomly died and is now just sitting in a box. This might be the perfect project, assuming whatever’s broken would get swapped out.
Man if I could do this mod and connect them to home assistant I would be very happy.
My aim for the year of voice is to replace my google minis with something that works locally with ha, if this gets integrated that way its gonna save me reasonable amounts of money on speakers :D
Same, but lack of an open source Cast receiver is going to make that a hard sell for me. I hate that it’s anticompetitive proprietary bullshit, but it works, and works really well.
I’m happy(ish) with my current setup, but I’d really love eventually having the option to replace my Echo and Home devices’ innards with something local and open-source.
Talk about innovation! A ‘Jail Broken’ Google Nest Mini running an open-source ESP32 PCB for a custom voice assistant is a game-changer. Here is detailed ESP32 pinout to explore its potential. It serves as an essential and basic guide. #ESP32 #DIY #SmartTech
Is it just me or is Google Home devices getting worse and worse? The voice recognition, the responses, etc etc.
Someone should definitely make a video on this. Would love to eye it out for confidence.
When I first bought the speakers/displays they seemed to be releasing software updates at a quick pace, but it seems like they have slowed to a crawl. Classic Google to abandon products to move onto the next shiny thing.
Over the last year or so there was big cuts to the Google Assistant teams, and then they merged the Assistant and Bard teams together.
Personally, I’ve recently had issues with one of mine not turning off the display at night. I was also really disappointed when they stopped integrating with third party shopping list apps. My devices are definitely less useful now.