Examples
Small programs that each prove one thing. Flash one, confirm it works, move on. They are also the shortest honest answer to “how do I use this?”
Runs today, on a bare Seed
None of these needs a Rodeo board — a Daisy Seed and a USB cable is the whole setup, plus a jumper wire or two.
| Example | What it proves |
|---|---|
usb_midi_cdc | TinyUSB on the Seed’s micro-USB: composite USB-MIDI and a serial port. Echoes every MIDI message, plays middle C once a second, and echoes what you type. |
sat_chain | The satellite chain driver, with the Seed’s pin 3 wired to pin 2: a ring with no satellites. It discovers an empty chain and scans it at 250 a second; pull the wire and it finds the break within a second, put it back and it recovers on the next retry. Status over the Seed’s USB serial. |
io_connectors | The I/O connectors checking themselves: jumper pin 30 (CV1) to pin 29 (CV2) and pin 23 (A2) to pin 8 (D1), and it sweeps the DAC and reads it back on the ADC, then toggles a digital output and reads it back. Then it reports a pot on A1. |
usb_device | The full device: stereo audio in and out at 48 kHz / 24-bit, USB-MIDI, serial and a RAM disk, simultaneously. The serial port switches what the computer records — the Seed’s inputs, a digital loopback, or a test tone. |
cd rodeo-sdk/examples/usb_devicemake && make program-dfuusb_device is the interesting one. The computer plays to “Rodeo” and it comes
out of the Seed’s outputs; the Seed’s codec clock sets the rate and a feedback
endpoint keeps the computer in step, so there is no resampling and no drift.
The bring-up set, on real boards
One example per board, each proving its own subsystem and nothing else, listed
in planning/REV_B_PLAN.md under Milestone 1. Nine of the eleven have passed on
Rev B hardware since 28 October 2026 — power, both codecs, MIDI, the I/O
connectors, the satellite chain, the SD card, USB-MIDI, disk mode, USB audio
and the SPI expansion header. The OLED test is written and has not been run.
They are also the reference for how an instrument uses each subsystem, which is most of what they are worth now that they pass.
The prototype’s bring-up examples (01_blink to 10_audio_levels) target the
prototype rather than the boards being shipped, and live in the frozen copy at
rev-a/rodeo-sdk/examples/.