I have a Linux based embedded system which I would like to behave as a USB HID keyboard when connected to a PC with a USB cable.

I'm assuming that the USB driver will be operating in Host mode by default, how could the driver be edited / rewritten so that the device identifies itself as an HID device instead?


This only works if the Linux embedded system can either also emulate a USB client device, or implements USB OTG ("on-the-go"), which can switch between both modes. Many embedded systems do have USB OTG.

If your Linux embedded device only acts as a host USB adapter, you won't even be able to connect it to the PC host USB adapter, no matter how much your rewrite drivers etc.

USB is assymetric by design.

If you don't insist on physical connection with an USB cable, there are other ways to make a remote system act as an USB client, for example using usbip over a network.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.