Annota

ESP32-S3 e-paper voice notes
Open-source firmware · PlatformIO / Arduino

A pocket e-paper recorder that transcribes itself.

Annota turns a Waveshare ESP32-S3 e-paper board — the 1.54" or the 3.97" — into a standalone voice-note device: record straight from the onboard mic, browse your notes on a button-driven e-paper UI, and send any clip off to an AI provider for a transcript with its own title and abstract — from the device or from the built-in web file manager. No app, no cloud dashboard, just a card full of MP3/WAV files and their .txt siblings.

Device
▮ 82%
  • ♪ Notes (4)
  • ● Record new
  • REC0014.wav
  • REC0013.wav · Budget review
  • REC0012.wav · Gift ideas
  • meeting_recap.mp3 · Q3 kickoff
Untranscribed notes first, then each note under its AI title
What it does
🎙️

Record on-device

Onboard mic straight to 16-bit WAV on the SD card; play notes back through the speaker.

📝

AI transcription

OpenAI Whisper (or Gemini) writes a sibling .txt with an AI title and abstract on top — from the device or the browser.

🌐

Web file manager

Play, transcribe, download and delete notes from any browser; one Sync button transcribes everything still pending.

🔌

USB drive mode

Plug into a computer and the whole SD card mounts as a USB drive. Eject it and the device picks up the changes.

📶

WiFi only when needed

Captive-portal setup, up to 5 saved networks, radio off by default — everything but transcription works offline.

🔋

Deep-sleep idle

Configurable idle timeout drops into deep sleep behind a logo screen (with a notes and battery summary on the 3.97; on the 1.54 it's under Home → Usage).

🔘

Button UI

Two buttons on the 1.54, a rotary switch plus BOOT on the 3.97 — a whole note browser with no touchscreen.

🌍

English, Italiano, Français

Device screen and web pages switch language together from the web Settings page.

Get it running
1
Flash the firmwareEasiest: the browser flasher (desktop Chrome or Edge, USB cable). Or build it yourself: pio run -e esp32-s3-epaper154 -t upload (or esp32-s3-epaper397)
2
Drop in an SD cardFAT32; MP3/WAV files at the root show up as notes
3
Join the setup APFirst boot opens "Annota-Setup" — connect from a phone and pick your WiFi network
4
Add an API keyHome → File transfer shows the device's address; open it, go to Settings and paste your OpenAI API key
5
Record and transcribeSelect "Record new", then Transcribe from the note's menu
Hardware
Boards
Waveshare ESP32-S3-ePaper-1.54 or ESP32-S3-ePaper-3.97
Display
1.54" 200×200 or 3.97" 800×480 (used in portrait) mono e-paper
Input
1.54: 2 buttons · 3.97: rotary switch (Up/Press/Down) + BOOT; no touch
Audio
ES8311 codec + NS4150B amp, onboard mic and speaker
Power
Battery; 3.97 adds an AXP2101 power management chip
Storage
microSD over SDMMC (1-bit on the 1.54, 4-bit on the 3.97)
UI
LVGL v9.2.2
Credits
Built by Corrado Ignoti.