A compact wearable recorder that captures everyday speech as Ogg Opus files and transfers them to a local life archive.
简体中文 · Latest release · Hardware docs · Sync app · Protocol
DayVault is a complete personal audio-recording chain:
- Two PDM microphones capture speech from opposite sides of a chest-worn device.
- STM32L452 firmware adaptively fuses both channels into one 16 kHz mono stream.
- Audio is encoded directly to Ogg Opus at a target 24 kbit/s and stored on microSD.
- The Windows app detects the device over USB and synchronizes recordings into a folder for transcription and archiving.
No parallel WAV or raw PCM copy is kept during normal recording. At 24 kbit/s, continuous audio is roughly 260 MB per day before filesystem overhead.
I wanted a small device that could stay with me throughout the day and preserve conversations and moments I would otherwise forget. At night, I can transfer the recordings, turn them into text, and keep a searchable record of what happened.
| Area | Implemented behavior |
|---|---|
| Recording | Dual SPH0655 PDM capture, adaptive fusion, 16 kHz mono Ogg Opus, 20 ms frames, 24 kbit/s target. |
| Storage | Timestamped recordings on microSD, safe finalization, resumable downloads, CRC32 verification, and circular cleanup support. |
| USB | USB-C CDC control, WinUSB bulk transfer, time synchronization, charging detection, and software or ROM DFU paths. |
| Power | Battery measurement on PA0, low-voltage protection, STOP2 sleep, RTC wake checks, and USB-aware recovery. |
| Desktop | Automatic sync, newest-first list, readable sizes, start time, duration, battery and charging display, open, locate, save-as, and confirmed deletion. |
| Enclosure | Two-part FDM-printable chest-clip enclosure with microphone and USB openings. |
| Subsystem | Part | Role |
|---|---|---|
| MCU | STM32L452RCT6 | Audio capture, Opus pipeline, storage, USB, RTC, and power management. |
| Microphones | 2 × SPH0655LM4H-1-8 | Opposing digital PDM speech capture. |
| Storage | microSD over SPI1 | Local Ogg Opus recording storage. |
| USB | USB-C Full Speed | Sync, control protocol, charging input, and DFU. |
| 3.3 V rail | TPS63031 | Buck-boost supply from the single-cell battery. |
| Charger | MCP73831T-2ACI/OT | 4.20 V single-cell Li-ion/LiPo charging. |
| Timekeeping | STM32 RTC + 32.768 kHz crystal | Stable timestamps and low-power wake checks. |
The latest GitHub Release contains:
DayVaultSync-v1.1.1.exe- packaged Windows synchronization app.DayVault-firmware-v1.1.1.bin- STM32L452 firmware image.- SHA-256 checksums in the release notes.
Firmware updates must target DFU alternate interface 0 at 0x08000000. Never write alternate interface 1 or the option-byte region at 0x1FFF7800.
Run the desktop app from source:
cd tools/dayvault_sync
pip install -r requirements.txt
python main.py
Build the Windows executable:
cd tools\dayvault_sync
build_exe.bat
Build the firmware:
cd firmware
platformio run -e dayvault
Run the maintained tests:
cd tools/dayvault_sync
python -m pytest -q
cd ../../
python -m pytest -q Mechanical/tests
| Path | Contents |
|---|---|
EDA/ |
EasyEDA project and exported hardware data. |
Docs/ |
Hardware, pinout, battery, recording, and serial protocol documentation. |
firmware/ |
PlatformIO STM32 firmware and native tests. |
Mechanical/ |
Blender enclosure source, generator, tests, STL files, and renders. |
tools/dayvault_sync/ |
PySide6 Windows synchronization app. |
- Hardware overview
- MCU pinout
- Component pinout
- BOM
- Opus recording
- High-speed transfer
- Serial command reference
- Mechanical enclosure
DayVault is an active hardware prototype. Recording, Opus storage, USB synchronization, battery reporting, low-voltage sleep, and the printed enclosure are working on the current board. Long-duration reliability, acoustic tuning across more wearing conditions, charging thermals, and enclosure revisions still need continued real-world testing.
Recording other people may require notice or consent depending on local law and context. Protect recordings and transcripts as sensitive personal data.
This is a wearable Li-ion prototype. Use a protected cell, verify polarity, test charging temperature, provide strain relief, and do not leave early hardware unattended while charging.
No open-source license has been selected. Unless a license is added later, all rights remain with the repository owner.



