Trying to build an arduino-based Mouse/Keyboard enhancer. This will let me do things like press certain keyboard or mouse shortcuts on the input side, then do something custom on the output side. For instance, this would let me add keyboard shortcuts at the hardware level instead of having to do them at the OS level.

As such, I'm looking for a board which can act both as a USB host (i.e. it can have a keyboard and mouse plugged into it) as well as one that can show up as a USB HID device to the computer it's plugged into.

The boards that I'm aware of which have something close to this are the Leonardo and chip-similar, which work to emulate a keyboard/mouse to the computer they're attached to, but which don't let you connect a keyboard/mouse to them.

So is there such a board?

  • Leonardo + USB Host Shield? – Majenko Oct 11 '18 at 17:07
  • Trying to keep it on a really small board like a trinket (which I'm seeing if it already does what I need.) I'm planning on making this so it's like a thumb drive that plugs inline into a computer (i.e. Keyboard/Mouse-->This device--> Computer) – MarqueIV Oct 11 '18 at 17:08
  • 3
    You require a chip with two usb peripherals in it, one of which at least has host capabilities. I only know of one chip family with that off hand and I haven't ported it to Arduino yet. Maybe there is as ST arm chip with it. – Majenko Oct 11 '18 at 17:14
  • Well I know the ZERO (and I'm guessing other SAM/M0-based boards) supports both host and device, but even though it has two USB ports, it doesn't look like it does so simultaneously. One seems dedicated to serial/programming while the 'native' one can be used for both. – MarqueIV Oct 11 '18 at 19:06
  • They only have one usb port. The other is connected through a usb to UART adapter to the serial port. You need one with two natives. I only know of the PIC32MM series that has that in a small MCU, and as I say I haven't ported that sub family of the PIC32 yet, though it is on the cards... Along with host support for the USB stack for PIC32... The Beaglebone Black has both host and device ports, but that is a Linux embedded computer and too big and complex. – Majenko Oct 11 '18 at 19:14

The TMK USB to USB converter is a thumb drive sized board with ATMega32u4 and max3421e with pass through/remapper software. It has the same functionality as a Leonardo with USB host shield.


  • This looks promising. I'm asking there too, but do you know if this can be used exactly like a Leo with the Host shield (i.e. can I use my own custom firmware, even if I have to flash a boot loader on it manually?) – MarqueIV Oct 24 '18 at 15:39

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.