Commit Graph

10 Commits

Author SHA1 Message Date
Cristian Maglie bec50cb3b9 HID: Renamed fields in HIDDescriptorListNode and HID_Descriptor
In particular HIDDescriptorListNode.cb has been renamed to
HIDDescriptorListNode.descriptor because it contains decriptor data
and not callbacks.

Moreover the HID_Descriptor.descriptor field has been renamed
to HID_Descriptor.data so the structure has now two fields length
and data.

   typedef struct __attribute__((packed)) {
     uint16_t length;
     const void* data;
   } HID_Descriptor;

   class HIDDescriptorListNode {
   public:
     HIDDescriptorListNode *next = NULL;
     const HID_Descriptor *descriptor;
     HIDDescriptorListNode(const HID_Descriptor *d) : descriptor(d) { }
   };

This imply a change in the use of the node from:

  node->cb->lenght
  node->cd->descriptor

to

  node->descriptor->length
  node->descriptor->data
2015-09-22 16:49:14 +02:00
Nico c37a3c9d50 Remove Raw HID definitions at wrong place 2015-09-20 11:04:42 +02:00
NicoHood aa5a91f1a3 Added 16 byte endpoint support 2015-08-12 17:48:17 +02:00
NicoHood 9ff93e7100 Fixed HID Reports >255 bytes 2015-08-12 17:48:17 +02:00
Martino Facchin 9c5c82bd0f rework HID-based libraries and add Due fallback 2015-07-16 13:13:53 +02:00
Martino Facchin 3ee69bc21c allow HID submodules to create runtime descriptors
with this PR you can add

\#include Keyboard.h
\#include Mouse.h
\#include HID.h

in the top of the sketch and you will expose a Mouse+Keyboard

From the library pow, simply add

static HID_Descriptor cb = {
	.length = sizeof(_hidReportDescriptor),
	.descriptor = _hidReportDescriptor,
};
static HIDDescriptorListNode node(&cb);
HID.AppendDescriptor(&node);

in the class' constructor and you are done!
2015-07-16 13:13:52 +02:00
Martino Facchin 1c7d0e15e2 rework HID class functions scopes 2015-07-16 13:13:52 +02:00
Martino Facchin 512e369e80 rename Setup typedef struct to USBSetup
was really too common
2015-07-16 13:13:52 +02:00
Martino Facchin 880b0468fe fix HID descriptors bigger than 127 bytes 2015-07-16 13:13:51 +02:00
Martino Facchin cc9a80b7a6 move HID library to AVR specific location 2015-07-16 13:13:51 +02:00