<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tinyusb.git/examples/host/midi2_host, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/tinyusb.git/atom/examples/host/midi2_host?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/tinyusb.git/atom/examples/host/midi2_host?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/'/>
<updated>2026-06-29T03:16:25Z</updated>
<entry>
<title>docs: add build-doc tooling and a README for every example</title>
<updated>2026-06-29T03:16:25Z</updated>
<author>
<name>hathach</name>
<email>thach@tinyusb.org</email>
</author>
<published>2026-06-29T03:16:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=4b1c8d16f72bb5d8f2eb8a2e8dde35abdd2f2a88'/>
<id>urn:sha1:4b1c8d16f72bb5d8f2eb8a2e8dde35abdd2f2a88</id>
<content type='text'>
Documentation tooling:
- Add the `build-doc` skill and `tools/build_doc.py` wrapper for local
  Sphinx builds (clean / -W / open).
- Enable Markdown (MyST) in conf.py and auto-collect
  examples/{device,host,dual}/*/README.md into a 3-level Examples nav
  (Examples &gt; Device/Host/Dual &gt; example), noting each page's source
  location and normalizing headings to a single H1.
- Remove the stale `.claude/commands/build-doc.md`; point the AGENTS.md
  Documentation section at the skill.

Example docs:
- Add a README.md for every device/host/dual example: what it does, USB
  interface table, notable tusb_config.h settings, generic CMake + Make
  build steps, and how to try it.
- Fold each *_freertos variant into its base README, noting the FreeRTOS
  source path and any RTOS-specific behavior.

Generated docs/examples/ output is git-ignored. Builds clean with
`sphinx-build -W`.

Co-Authored-By: Claude Opus 4.8 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>midi2_host: silence IAR Pe550 for midi2_idx</title>
<updated>2026-05-29T17:46:16Z</updated>
<author>
<name>hathach</name>
<email>thach@tinyusb.org</email>
</author>
<published>2026-05-29T17:46:16Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=fc933e341df29e2ab6fa62508d45a92c65a621fb'/>
<id>urn:sha1:fc933e341df29e2ab6fa62508d45a92c65a621fb</id>
<content type='text'>
The variable is set in mount/umount callbacks but not read elsewhere
in the example (rx_cb already receives idx as a parameter). IAR
treats Pe550 as an error under --warnings_are_errors. Tag it
TU_ATTR_UNUSED so the example still shows the pattern of tracking
the device index without erroring on unused-set.

Co-Authored-By: Claude Opus 4.7 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>midi2_host: drop unreachable return 0 for IAR Pe111</title>
<updated>2026-05-29T17:42:14Z</updated>
<author>
<name>hathach</name>
<email>thach@tinyusb.org</email>
</author>
<published>2026-05-29T17:42:14Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=0761df7420df3e62041f17e0c3e0f49d98b0667c'/>
<id>urn:sha1:0761df7420df3e62041f17e0c3e0f49d98b0667c</id>
<content type='text'>
Same fix as midi2_device — IAR rejects the unreachable statement
after the while(1) superloop. Let int main fall off the end.

Co-Authored-By: Claude Opus 4.7 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>bsp: fix tcpp0203 lto uninit error</title>
<updated>2026-05-17T12:05:03Z</updated>
<author>
<name>HiFiPhile</name>
<email>admin@hifiphile.com</email>
</author>
<published>2026-05-17T12:05:03Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=116395a1b24f2cb1787b4110a8c3749a0435f1ee'/>
<id>urn:sha1:116395a1b24f2cb1787b4110a8c3749a0435f1ee</id>
<content type='text'>
Signed-off-by: HiFiPhile &lt;admin@hifiphile.com&gt;
</content>
</entry>
<entry>
<title>midi2: skip.txt comments</title>
<updated>2026-05-17T01:54:25Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T01:54:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=2a58e8256ebe683106ef3070b5b418c8ba88c8f0'/>
<id>urn:sha1:2a58e8256ebe683106ef3070b5b418c8ba88c8f0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>midi2: skip 3 more boards with same tcpp0203 BSP bug</title>
<updated>2026-05-17T01:37:45Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T01:37:45Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=7cf579dd49ab84163497ebc4348d208794a7e635'/>
<id>urn:sha1:7cf579dd49ab84163497ebc4348d208794a7e635</id>
<content type='text'>
stm32h573i_dk, stm32n657nucleo and stm32n6570dk have the same
pre-existing uninitialized io_ctx.GetTick in their board.h that we
already skip on stm32h7s3nucleo. Trips with Make+LTO; CMake passes.
</content>
</entry>
<entry>
<title>midi2: add sources to TINYUSB_SRC_C, skip family</title>
<updated>2026-05-17T00:35:21Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T00:35:21Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=7c214f9d4f47cfadf18fc7e67d15cc22b1bc6f99'/>
<id>urn:sha1:7c214f9d4f47cfadf18fc7e67d15cc22b1bc6f99</id>
<content type='text'>
Make build was missing midi2_device.c/midi2_host.c from
src/tinyusb.mk. Skip stm32h7s3nucleo board which exposes a
pre-existing uninitialized warning in its board.h (board_init2)
under Make+LTO.
</content>
</entry>
<entry>
<title>midi2: fix CI matrix with only.txt and skip.txt</title>
<updated>2026-05-16T23:39:20Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-16T23:39:20Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=214de5181c7d011035f0071b3bb99c1c79206876'/>
<id>urn:sha1:214de5181c7d011035f0071b3bb99c1c79206876</id>
<content type='text'>
Restrict midi2_host build to MCUs with USB host support (cloned from
midi_rx) and skip SAMD11 from midi2_device (ROM overflow on link).
</content>
</entry>
<entry>
<title>midi2: host example - simplify and rename to midi2_host</title>
<updated>2026-05-16T16:00:30Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-16T16:00:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=3efac1b28c4174b0734ef106ce8496fa39657b47'/>
<id>urn:sha1:3efac1b28c4174b0734ef106ce8496fa39657b47</id>
<content type='text'>
Drop Feather-specific scaffolding (SSD1306 display, font, PIO-USB pin
override) and rename the directory to midi2_host. The example is now a
single main.c + tusb_config.h pair following the midi_rx pattern, with a
printf-only UMP decoder for Channel Voice messages.

Build-tested on adafruit_feather_rp2040_usb_host, daisyseed (stm32h7),
mimxrt1010_evk, stm32f407disco, raspberry_pi_pico2, b_u585i_iot2a,
portenta_c33, stm32h503nucleo, stlinkv3mini, feather_stm32f405.

Ref #3571
</content>
</entry>
<entry>
<title>refactor: replace midi2_host (Waveshare) with midi2_host_feather</title>
<updated>2026-05-12T14:07:45Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-04-08T02:46:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=b4880761bcadbee86d047e0a3b329859926caad5'/>
<id>urn:sha1:b4880761bcadbee86d047e0a3b329859926caad5</id>
<content type='text'>
Remove the Waveshare RP2350-USB-A host example and board definition.
The Feather RP2040 USB Host is the TinyUSB reference board for
PIO-USB host and does not require the CFG_TUSB_DEBUG workaround
needed by the Waveshare (R13 pull-up issue).

One host example is sufficient for the PR. The Feather variant has
an improved display with splash, spinner, and 6-line live view.
</content>
</entry>
</feed>
