Log in

View Full Version : Leanardo++ HID output revisited


fovea1959
11-03-2015, 13:32
a revisit of http://www.chiefdelphi.com/forums/showthread.php?t=135440, it got a little derailed towards non-Arduino alternatives.

We are wanting to use an Arduino Leonardo as a joystick against the driver's station; this is pretty straightforward (http://www.imaginaryindustries.com/blog/?p=80). We're going to look at using the Launchpad also, but our students have the Arduino experience right now...

The gotcha is using the Leonardo as a HID *output* device; I'm not finding a lot of examples there.

Has anyone done this yet?

billbo911
11-03-2015, 14:07
a revisit of http://www.chiefdelphi.com/forums/showthread.php?t=135440, it got a little derailed towards non-Arduino alternatives....

The gotcha is using the Leonardo as a HID *output* device; I'm not finding a lot of examples there.

Has anyone done this yet?

That is why it got derailed.
Currently the Leonardo is excellent as a HID input device, but as an output device, there isn't much development there....yet.

Personally I would love to see the code used on the Launchpad to allow it to be used as a output device as well as an input device. Specifically, I would like to see how the Driver's Station sends data out to the USB HID device to tell it to set output(s). Additionally, I would like to know how the Launchpad, in this case, receives and processes that data.

Energia, a fork of the Arduino environment, doesn't "currently" support the HID environment, so it is difficult to see how the Launchpad achieves HID "output". Here is the quote I base this comment on:
however the libraries in Energia do not currently have support for USB HID devices, so you cannot modify the Gamepad firmware in Energia.

I too would love to see the Leonardo, as well as the Teensy 3.1 etc., configured to be able to do output as well as input. I just have not seen any examples of the code used to receive and process the the "output" information. Once that information makes it into the wild, we are VERY likely to see a variety implementations used in various ways on Leonardo and other controllers.