USB ports, one Arduino multiple HID?

Hi all

I think the answer to this question is No, from what I've googled, but thought I would check. Is there any Arduino or clone that supports 2 HID ports rather than 1? i.e. is there any Arduino compatible device that can run Mouse and Keyboard libraries and Joystick library, with 2 usb connectors, to emulate multiple HIDs?

I'm looking at possible feature creep on my USB controller (2 Leonardos) which could introduce a third Arduino to the system (network connection, udp client, wifi breakout, libraries too big to pile onto either of the existing Leos). That's getting a little over-complicated, and I could simplify things if I could put all the USB traffic on one 'duino with 2 USB ports.

I thought the Due might be the ticket but if I understand the specs, it has an additional USB host port not a HID port. Don't know enough about the Due or USB to know whether this could be hijacked into a 2nd HID port.

I get the impression that you didn't understand the USB/HID concept. You have one Leonardo emulate multiple HID devices with it's single USB port. You don't need another USB port to add another device, the software just have to provide the correct USB structures (as is the case for keyboard and mouse which are two devices too). I guess the limiting factor will be the rather small RAM size of the Leonardo.

If a gamepad is the joystick you thought of, the HID library provides all the routines you need for this. If the Leoardo gets overloaded, use a Teensy.

[sound of facepalm] in my early googling I never ran across any description of a project that used both Mouse/Kbrd and Joystick libraries on the same Leonardo (or Teensy). This is months ago now, but I even think I got some kind of error when I tried to use all 3 libraries in the same sketch (I must try this again). So I just accepted that as a given, that Joystick lib would not play nice with Mouse/Kbrd and therefore I needed two processors to implement both. I might have needed 2 processors anyway to overcome the memory limitation (both sketches are well over 60% mem usage).. but still...

If I can get just one Leo (or maybe a Due, for more GPIO and mem) to support all the HID activity, then my life gets so much easier, many new possibilities open up. I'm kind of staggering from this news, actually.

I've documented this project fully, and published a couple of months ago -- had plenty of reads (and gratifyingly some Respects as well) but no one 'til now has thought to tell me that 2 Leos were not actually necessary! I'm gobsmacked.

I can't say I regret the 2-Leo version as it forced me to learn more about i2c, discover the I2C_Anything library, etc. But as I consider upgrades and feature creep, being able to shove all the HID onto one processor changes my conceptual space. Thanks for opening up this new possibility for me. Version 2 might look very different :-) I'll try a quick prototype this very night.

UPDATE: yes (egg on face!) I was able to load all three libraries (Mouse, Keyboard, Joystick) and create instances of all three device types on one Leonardo. I blush for my ignorant assumption, & thank Pylon for cluing me in. Looks like v2 of my project will use a Due (a beast of a controller compared to a Leo!). But that will get me into the challenging new territory of 3.3v power, level converters etc -- and a much more expensive board, so those dc power issues will have to be taken very seriously. More reading ahead :-)