Skip to content

Apps on the Arduino GIGA R1: /flash data, MP3 from flash, USB MIDI device - #36

Merged
bdbarnett merged 2 commits into
mainfrom
giga-apps
Nov 7, 2026
Merged

bdbarnett merged 2 commits into
mainfrom
giga-apps

Conversation

@bdbarnett

@bdbarnett bdbarnett commented Nov 7, 2026 •

Copy link
Copy Markdown
Contributor

On an STM32 board the filesystem root only holds mounts, so appkit's data root is /flash/data there. The other changes are for a board with no SD card and no USB host port:

  • MP3 plays the songs in /flash/music when there's no sdcard role, and plays on without the spectrum where pygraphics isn't installed.
  • Weather uses the largest Montserrat the firmware has when montserrat_40 isn't compiled in.
  • Synth Station makes the board a USB MIDI device when it has no USB host and its board_peripherals lists a usb_midi role. Starting the device re-enumerates the USB port, so a board that has machine.USBDevice but doesn't list the role keeps its port as it is. The GIGA's role is in Giga: usb_device and usb_midi roles for the USB-C port pydevices#432.

I tried each one on a GIGA R1 with the Display Shield at 800x480. Weather showed the forecast, MP3 played a song from /flash/music, and Windows saw the board as a MIDI port while Synth Station ran. Its instruments need ulab, which that firmware didn't have, so no sound came from it yet. The appkit services contract has a case for the new root, and tests/test_synthstation_midi.py checks the role gate.

appkit keeps its data in /flash/data on an STM32, whose / only holds
mounts. MP3 plays from /flash/music when the board has no card slot, and
plays without its spectrum where pygraphics is missing. Weather falls back
to the largest font the firmware has. Synth Station becomes a USB MIDI
device on a board whose USB port can be one.
Starting the device re-enumerates the board's USB port, so a board that
has machine.USBDevice but doesn't list the role keeps its port as it is.
@bdbarnett
bdbarnett merged commit 66cc2ff into main Nov 7, 2026
6 checks passed
@bdbarnett
bdbarnett deleted the giga-apps branch November 7, 2026 02:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant