<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tinyusb.git/examples/device/midi2_device/src, 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/src?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/tinyusb.git/atom/examples/device/midi2_device/src?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/'/>
<updated>2026-06-28T19:34:35Z</updated>
<entry>
<title>example(midi2): update example to demonstrate multiple fb</title>
<updated>2026-06-28T19:34:35Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-06-28T19:28:29Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=516fb063d88ca02c3d4e6ff7523407f774bfde67'/>
<id>urn:sha1:516fb063d88ca02c3d4e6ff7523407f774bfde67</id>
<content type='text'>
Adds two Group Terminal Blocks (output and input) with names and
per-direction endpoint association, plus an explicit endpoint name.
</content>
</entry>
<entry>
<title>Fix one direction endpoint examples</title>
<updated>2026-06-14T12:25:02Z</updated>
<author>
<name>Jie Feng</name>
<email>hjf3108@gmail.com</email>
</author>
<published>2026-06-14T12:25:02Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=8c990885e304079e9e381f3899a53105c824624b'/>
<id>urn:sha1:8c990885e304079e9e381f3899a53105c824624b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ci: fix IAR Pe111 and stm32h7s3 flash overflow</title>
<updated>2026-05-29T17:11:19Z</updated>
<author>
<name>hathach</name>
<email>thach@tinyusb.org</email>
</author>
<published>2026-05-29T17:11:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=28beb0fe4db608c1a9001452d099cb5ea095377e'/>
<id>urn:sha1:28beb0fe4db608c1a9001452d099cb5ea095377e</id>
<content type='text'>
- examples/device/midi2_device/src/main.c: drop the unreachable
  `return 0;` after the `while(1)` superloop. IAR with
  --warnings_are_errors rejects Pe111 (statement is unreachable);
  C99 lets `int main` fall off the end, matching midi_test.

- examples/host/msc_file_explorer_freertos/skip.txt: skip
  stm32h7s3nucleo. The board has only 64 KB on-chip FLASH and the
  FreeRTOS + FatFS host MSC explorer now overflows by ~248 bytes
  after the async control queue refactor.

Co-Authored-By: Claude Opus 4.7 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>update example</title>
<updated>2026-05-18T21:08:03Z</updated>
<author>
<name>HiFiPhile</name>
<email>admin@hifiphile.com</email>
</author>
<published>2026-05-18T21:08:03Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=b54c8666ec35efb48305d943c87bc48800dd7d15'/>
<id>urn:sha1:b54c8666ec35efb48305d943c87bc48800dd7d15</id>
<content type='text'>
Signed-off-by: HiFiPhile &lt;admin@hifiphile.com&gt;
</content>
</entry>
<entry>
<title>midi2: drain pattern for RX FIFO</title>
<updated>2026-05-17T22:56:04Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T22:56:04Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=b31e7cdbbedec4a3286700f3ec24bb63fd7c224f'/>
<id>urn:sha1:b31e7cdbbedec4a3286700f3ec24bb63fd7c224f</id>
<content type='text'>
Default RX/TX buffers to EPSIZE for both device and host. Document
drain-in-loop on ump_read; example device callback drains until
empty.
</content>
</entry>
<entry>
<title>midi2: remove unused ump_noop helper</title>
<updated>2026-05-17T00:44:22Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T00:44:22Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=478e04778b8674b5ef4bf2557d305a06871ac473'/>
<id>urn:sha1:478e04778b8674b5ef4bf2557d305a06871ac473</id>
<content type='text'>
arm-clang fails with -Werror=unused-function; arm-gcc was silently
omitting it via LTO. The helper was never called.
</content>
</entry>
<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>
<entry>
<title>example: add MIDI 2.0 Device example (midi2_device)</title>
<updated>2026-05-12T14:07:44Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-03-25T02:38:24Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=290470bda38ce75bbadcce8939435953ca483269'/>
<id>urn:sha1:290470bda38ce75bbadcce8939435953ca483269</id>
<content type='text'>
Add Device example that plays Twinkle Twinkle Little Star using native
UMP format. Demonstrates all MIDI 2.0 Channel Voice message types:
16-bit velocity, 32-bit CC, 32-bit pitch bend, 32-bit channel/poly
pressure, per-note management, program change with bank select, and
JR timestamps.

USB descriptor exposes both Alt Setting 0 (MIDI 1.0) and Alt Setting 1
(UMP) per USB-MIDI 2.0 specification.

Tested on: Raspberry Pi Pico (RP2040), Linux (ALSA), Windows (MIDI
Services)
</content>
</entry>
</feed>
