I am trying to build a data acquisition board using a FEZ Panda II connected via USB to a windows computer.
I changed to board to serial debugging, to free up the USB port.
I would like to use it as an HID, so the Windows PC will not require any additional device drivers.
The board will report the values (digitial and analog) at intervals, but will also receive commands. I.e. change digital output values, change the report time interval, reboot, etc.
For this I have created a “command protocol”, where the Windows PC transmits a command to the board, and the board replies with ACK/NACK and parameters.
Building a HID is no easy task (for me at least), but is is possible to declare a generic 30 byte input buffer, and 50 byte output buffer? Then I could more or less use it as a serial port.
I know GHI supports virtual serial ports, but it requires custom device drivers.
Copy the descriptor from a known device (by using USBView or USB sniffing software like USB Snoopy).
In the about tab of the project on Codeshare, there is a link to the HID descriptor tool, which lets you build your own HID Descriptor from scratch and generates a C array for it: