CF image for Google Home Mini running Linnet + Home Assistant (local, no Google cloud) #11

Open
opened 2026-05-31 09:15:06 -07:00 by pyr0ball · 0 comments
Owner

Concept

Build a CF-flavored firmware image for the Google Home Mini (Gen 1/2) that replaces Google Assistant with a fully local stack: Whisper STT, Piper TTS, Home Assistant, and Linnet for real-time tone annotation. Turns a cheap/salvageable smart speaker into a privacy-first home node with no cloud dependency.

Reference

Technical approach documented at: https://courk.cc/running-custom-code-google-home-mini-part1

The approach uses a NAND flash interposer system ("NandBug") built around an ICE40HX1K FPGA + FT2232H USB interface. The original NAND is desoldered and hosted on a daughterboard; the FPGA arbitrates between the Google Home PCB and the programmer. Key challenge: rootfs is protected by dm-verity (see Part 2+ for exploit path).

Hardware: Marvell ARMADA 1500 Mini Plus SoC + 256MB TC58NVG1S3HBAI6 NAND flash. Most components are BGA; CPU is largely undocumented.

CF software stack on device

Layer Replacement
Google Assistant Whisper STT + local LLM intent parser + Piper TTS
Cloud speech/NLU Fully local, no egress
Tone/context annotation Linnet (real-time tone annotation)
Home automation backend Home Assistant (HASS) integration
Wake word openWakeWord or custom trained

Why this matters for CF

Google Home Minis are cheap, widely available, and have decent mic arrays and speakers. Jailbroken and reflashed, they become a privacy-first home node that integrates with the FOSS/OSH home assistant robot concept (roadmap#43). Linnet integration adds the tone annotation layer that benefits ND users who want context surfaced from household voice interactions.

Hardware effort required

  • NAND interposer board (ICE40 FPGA + FT2232H) — custom PCB, OSH design
  • NAND desoldering (hot air / BGA rework)
  • dm-verity bypass (see courk.cc Part 2+)

This is a medium-difficulty hardware hack. Could become a CF hardware kit (PCB design + flashing tool).

Next steps

  • Read full courk.cc series (all parts)
  • Assess dm-verity bypass approach and Linux bring-up status
  • Evaluate whether ARMADA 1500 has enough compute for Whisper tiny/base on-device
  • Design NandBug-compatible interposer PCB as OSH (KiCad)
  • Define CF image build system (Buildroot or Yocto)
  • Coordinate with Linnet on embedded integration API
## Concept Build a CF-flavored firmware image for the Google Home Mini (Gen 1/2) that replaces Google Assistant with a fully local stack: Whisper STT, Piper TTS, Home Assistant, and Linnet for real-time tone annotation. Turns a cheap/salvageable smart speaker into a privacy-first home node with no cloud dependency. ## Reference Technical approach documented at: https://courk.cc/running-custom-code-google-home-mini-part1 The approach uses a NAND flash interposer system ("NandBug") built around an ICE40HX1K FPGA + FT2232H USB interface. The original NAND is desoldered and hosted on a daughterboard; the FPGA arbitrates between the Google Home PCB and the programmer. Key challenge: rootfs is protected by dm-verity (see Part 2+ for exploit path). **Hardware:** Marvell ARMADA 1500 Mini Plus SoC + 256MB TC58NVG1S3HBAI6 NAND flash. Most components are BGA; CPU is largely undocumented. ## CF software stack on device | Layer | Replacement | |---|---| | Google Assistant | Whisper STT + local LLM intent parser + Piper TTS | | Cloud speech/NLU | Fully local, no egress | | Tone/context annotation | Linnet (real-time tone annotation) | | Home automation backend | Home Assistant (HASS) integration | | Wake word | openWakeWord or custom trained | ## Why this matters for CF Google Home Minis are cheap, widely available, and have decent mic arrays and speakers. Jailbroken and reflashed, they become a privacy-first home node that integrates with the FOSS/OSH home assistant robot concept (roadmap#43). Linnet integration adds the tone annotation layer that benefits ND users who want context surfaced from household voice interactions. ## Hardware effort required - NAND interposer board (ICE40 FPGA + FT2232H) — custom PCB, OSH design - NAND desoldering (hot air / BGA rework) - dm-verity bypass (see courk.cc Part 2+) This is a medium-difficulty hardware hack. Could become a CF hardware kit (PCB design + flashing tool). ## Next steps - [ ] Read full courk.cc series (all parts) - [ ] Assess dm-verity bypass approach and Linux bring-up status - [ ] Evaluate whether ARMADA 1500 has enough compute for Whisper tiny/base on-device - [ ] Design NandBug-compatible interposer PCB as OSH (KiCad) - [ ] Define CF image build system (Buildroot or Yocto) - [ ] Coordinate with Linnet on embedded integration API
pyr0ball added the
backlog
label 2026-05-31 09:15:06 -07:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Circuit-Forge/minerva#11
No description provided.