Skip to content

USB host dual role #9697

@p3lim

Description

@p3lim

Hi,

I'd like to see support for USB host dual role in CircuitPython, something that was mentioned on the Feather product page is already supported in Arduino. Arduino seems to be using TinyUSB for this, the same as CircuitPython.

My specific use-case is this; I use CircuitPython to drive a keyboard, and I'd like to extend this keyboard with one or two USB host ports. I'd connect a mouse to one port, and a more generic HID device to the 2nd port (like a USB flash drive or a yubikey). Kind of similar to what GP2040-CE supports: https://gp2040-ce.info/controller-build/usb-host/

Some of the work seems to be done already in #8155 as a response to #5986. I was able to listen to a mouse and yubikey OTP (which just simulates key presses) just fine on a RP2040-based board with a USB port (like the Feather) using usb.core. "Echoing" the mouse input through to the computer should be possible, but the passthrough isn't here yet (e.g. for yubikey HID CDC, FIDO2/U2F).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions