<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tinyusb.git/examples/device/midi2_device/CMakePresets.json, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/tinyusb.git/atom/examples/device/midi2_device/CMakePresets.json?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/tinyusb.git/atom/examples/device/midi2_device/CMakePresets.json?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/'/>
<updated>2026-05-16T16:00:05Z</updated>
<entry>
<title>midi2: device example - portable, add protocol fallback</title>
<updated>2026-05-16T16:00:05Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-16T16:00:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=43a72cb614e2fdd27788057a6f9e843d458f1ca5'/>
<id>urn:sha1:43a72cb614e2fdd27788057a6f9e843d458f1ca5</id>
<content type='text'>
Remove the rp2040-only guard; the example now follows the audio_test
pattern (only Espressif uses its own build system). Add CMakePresets.json
and generic product strings.

The runtime fallback picks the path that matches the host state, per
message, mirroring the idea behind the UAC examples:
  Alt 0                   USB-MIDI 1.0 32-bit Event Packets (packet_write)
  Alt 1 + MIDI 1.0 negotiated   UMP MT 0x2 (ump_write)
  Alt 1 + MIDI 2.0 negotiated   UMP MT 0x4 (ump_write)

Build-tested on rp2040, rp2350, stm32f0/f1/f2/f3/f4/f7/g0/g4/h5/h7/l0/l4/u0/u5/wb/c0,
samd2x_l2x, samd5x_e5x, same7x, nrf, imxrt, lpc17, lpc55, mcx, ra,
da1469x, efm32.

Ref #3571
</content>
</entry>
</feed>
