You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Confirmed with cmake-3.22.1 and arm-none-eabi-gcc (15:10.3-2021.07-4) 10.3.1
$ cd pico_spdif_recorder
$ mkdir build && cd build
$ cmake .. # (for Raspberry Pi Pico 1 series)
$ cmake -DPICO_PLATFORM=rp2350 -DPICO_BOARD=pico2 .. # (for Raspberry Pi Pico 2)
$ make -j4
Download "*.uf2" on RPI-RP2 or RP2350 drive
Serial command interface
Serial interface is available from USB port of Raspberry Pi Pico.
Key
Function
Space
Recording Start Standby / Recording Stop
r
Resolution change 16bit/24bit (default: 16bit)
s
Manual split
b
Auto blank split on/off (default: on)
v
Verbose for monitoring messages
c
Clear WAV file suffix to 1
w
Configure Wi-Fi (for Raspberry Pi Pico W only)
h
Help
Recording start/stop/split features
Standby recording start while silence and auto start when sound detected
Auto stop and standby restart when long blank detected
Auto split of WAV file when short blank detected
Manual immediate split of WAV file without gap
LED indicator
Slow blink: Recording is on-going.
Fast blink: Background file proceses to close previous file and prepare next file are on-going. During this term, no command requests can be accepted.
Repeated Slow blink and Fast blink: indicating errors (see log on serial console.)
microSD card
Card recommendation for Hi-Res recording
Due to the limitation of single bit SPI interface driven by Raspberry Pi Pico, even with highest class microSD cards (as of 2024), recording in 24bit 176.4 KHz or 192.0 KHz is challenging. It will sometimes causes the drops of audio sampling data. The bandwidth status can be monitored in Verbose mode.
The most severe situation for bandwidth is to start suceeeding track recording when previous long-time track more than 20 minutes has to be closed.
With following recommended microSD cards, recording in 24bit 96.0 KHz will be stable as far as experimentally confirmed.
24bit/192KHz is worth trying for non-long-time tracks. 24bit/96KHz is stable.
2
SanDisk
Extreme PRO 256GB
SDSQXCD-256G-GN6MA
24bit/192KHz is too challenging. 24bit/96KHz is stable.
File timestamp
File timestamp is synchronized to NTP if using Raspberry Pi Pico W and connected to Wi-Fi.
Otherwise, timestamp starts from 0:00 a.m. Jan. 1st, 2024 (UTC+0).
exFAT format (thus, > 64GB SD-XC cards) is recommended to reflect timezone.
In case of FAT32 format, timestamp cannot reflect timezone, therefore, it's always shown as UTC+0 time.
Card trouble shooting
In case of card mount error or fundamental access errors, please confirm with FatFs test
WAV Tagger Tool
The wav_tagger directory contains a Python tool for post-processing recorded WAV files. It automatically merges or splits WAV files based on album metadata (YAML format) and adds ID3v2.3 tags with UTF-8 encoding. This tool is particularly useful for organizing WAV files recorded with the blank split feature.