Open-source DIY build · 100% local AI

Press a button.Remember everything.

Pocket Protector is a push-button voice recorder you build yourself. Every recording is transcribed, labeled by speaker, and made searchable on your own Mac. Ask it what was said, and it answers with the exact moment.

YOU ASK What did we decide about the deck material? answer cites session + time Record button ESP32-C3 · GPIO 4 Status LED Pi · GPIO 27 INMP441 mic I2S · 16 kHz mono
1
button to press
60 s
audio chunks, synced as you go
5 s
between checks for new sessions
~180
words per searchable chunk
6
cited excerpts behind every answer
0
cloud AI services
How it works

From click to answer, on hardware you own.

The device records. Your Mac does the thinking. The two talk over your private Tailscale network, and the audio never goes anywhere else.

GPIO pulse Tailscale ask.py

1 · Press

An always-on ESP32-C3 reads the button and sends the Pi a 150 ms pulse to start or stop.

2 · Record

The Pi captures 16 kHz mono in one-minute chunks, then rsyncs the finished session to your Mac.

3 · Understand

Whisper transcribes, pyannote labels who spoke, and Ollama embeds it into a local Chroma index.

4 · Ask

llama3.1:8b answers from the six closest excerpts and cites the session and m:ss range.

Built for the conversations you'll want back.

One press to capture

No app, no phone, no wake word. Click to start, click to stop. Triple-click to power on, hold to shut down.

Speaker 1 Speaker 2 Speaker 3

Knows who said what

pyannote splits every session by speaker, so transcripts read like a script: Speaker 1, Speaker 2, and so on.

Search by meaning

Ask in your own words. Answers come only from your recordings, with the session and timestamp to check them against.

Lid + buttonenclosure.3mf ESP32-C3 Super Miniswitch · 2N2222 · 1 kΩ Raspberry Pi+ INMP441 I2S mic PowerBoost + batteryFM5324HJ1 boost IC Enclosure base3D-printed · .3mf
What's inside

Five layers. Off-the-shelf parts.

A tiny always-on controller handles the button and the power. The Pi only runs when you need it, and shuts itself down cleanly before the power is cut.

  • Raspberry Pi[PI MODEL]
  • ESP32-C3 Super MiniButton + power control
  • INMP441 MEMS micI2S audio in
  • PowerBoost + battery5V, switched by the ESP32
  • Button, 2N2222, 1 kΩThe whole interface
See wiring and parts →
Private by design

Your conversations never leave the house.

  • Transcription, speaker labels and answers all run on your Mac.
  • The Pi hands audio over Tailscale with SSH keys.
  • Recordings, transcripts and .env files are git-ignored.
  • After one gated model download, it works offline.
Tailscale button recorder your Mac