Excellent news and glad I could help.Thanks for all the suggestions, I added "the hack" to the cmakelists file and it now builds![]()
![]()
It does seem the VS Code Pico Extension is looking in 'CMakeLists.txt' for a "pico_sdk_init" line and not offering a compile option if it cannot find one. Most projects will have that line in their 'CMakeLists.txt' but it's not required and not all will.
Perhaps a feature request needs raising to have an option to disable that requirement in the VS Code Pico Extension. or to add the hack when a project is imported and it isn't present.
Another request might be to have Import Project give a pop-up when the code won't or can't be compiled.
Though the best option may be to always allow compiling and have the VS Code Pico Extension insert fatal error reports in the 'CMakeLists.txt' so the user is told why it's not compilable or won't work whenever a compilation is attempted.
It looks to me like VS Code Pico Extension may not be expanding the '${PROJECT}', so 'picotool' is taking that literally, not finding the file, and failing.Pressed "Run" in VS code and then get this errorCode:
The terminal process "C:\Users\Steve\.pico-sdk\picotool\2.2.0-a4\picotool\picotool.exe 'load', 'c:/Users/Steve/Documents/Pi projects/host_hid_to_device_cdc/build/${PROJECT}.elf', '-fx'" terminated with exit code: -4.
That does seem to be a bug so worth reporting.
It would be worth running the following to verify the pins are as expected -I get "TinyUSB Host HID <-> Device CDC Example" appear on putty, just nothing when I press a key on the keyboard on putty.
Code:
C:\Users\Steve\.pico-sdk\picotool\2.2.0-a4\picotool\picotool.exe info -a "c:/Users/Steve/Documents/Pi projects/host_hid_to_device_cdc/build/host_hid_to_device_cdc.uf2"Beyond that I am not really able to help with functionality issues.
They should only be needed if you have a low-speed device. That info came from -Is the consensus that I need 15k pull down resistors on D+ and D- as well the 22/27ohm resistors on D+ and D-?
I asked for clarification if that meant two 15K pull-downs on the USB socket pins but got no answer or confirmation.Also make sure to use some 15k pull-downs on USB lines, otherwise low speed devices won't work.
Googling produced all kinds of conflicting information regarding 1.5K pull-ups and 15K pull-downs on one or both of the signal lines, are unclear if that's for device or host.
No pulls are required when using the on-board USB as device or host but probably are required for Pico-PIO-USB.
The easiest path might be to find a USB keyboard or mouse which isn't low-speed and use that.
Statistics: Posted by hippy — Fri Feb 20, 2026 11:54 am