Being in unfamiliar territory it took me a little while to grasp what you were saying there but I believe you are correct.The Type A port on that board is run by a PIO-based USB instance.
But the host_cdc_msc_hid example in the Pico SDK does not use PIO, hence it is not communicating on that Type A port on the Adafruit board.
If I have understood correctly the Pico SDK example uses the on-chip USB interface in host mode connected to the on-board USB-C or micro-USB socket. An OTG or similar cable is needed to allow Memory Sticks and the like to be connected to that. Presumably its 'printf' all get directed towards a UART. The code won't know or care that an external USB-A socket is present, never interacts with it.
It should be possible to switch TinyUSB from using the on-chip interface to using Pico-PIO-USB and the USB-A socket on the Adafruit board but I have no idea of how one would do that. I guess that's what the examples Adafruit point to do, which seem the same TinyUSB examples the Pico SDK references in the 'pico-examples/usb/dual' directory.
Statistics: Posted by hippy — Wed Sep 24, 2025 7:45 pm