History: usbd_cd_hid


This page describes all changes made to the usbd_cd_hid package, USBD HID Class Driver, since its release.

Version

8.5 (2018-09-26, 8:00):

  • Added boundary checks for parameters.

8.4 (2017-06-29, 10:27):

  • Eliminated compiler warnings.

8.3r2 (2018-08-29, 18:31):

  • Document HTML link added to the documentation folder.
  • History and document files renamed to the package name.

8.3:

  • If Report ID is enabled for generic HID, read report length was incorrectly set to one higher than the correct length.

8.2:

  • IN and OUT reports were only identified correctly if HID interfaces in the Configuration Descriptor were in order, staring with Interface0 ( Ifc Nr.0,1 and so on. )

8.1:

  • New config parameter HID_CHECK_OUT_REPORT_SIZE added to enable the option to verify the length of the OUT report.
  • usbd_ghid_read_data() function also provides the length of the received OUT report.

7.2:

  • usbd_kbd_set_report() always returned USBD_HID_ERROR.
  • usbd_mhid_set_report() prototype changed to return error code.

7.1:

  • The following notifications were added in order to be able to receive a callback when the IN report was physically sent:

           - Keyboard: USBD_KBD_IN_CB

           - Mouse: USBD_MOUSE_IN_CB (usbd_mhid_register_ntf() was added as well)

           - Generic: USBD_GHID_IN_CB

  •  usbd_kbd_set_key_report() was removed and usbd_kbd_set_report() was added in order to be able to send a raw report with the modifier keys and the key states.
  •  usbd_mhid_set_report() was added to allow sending raw mouse report that contains the state of the buttons and X/Y coordinates.
  •  usbd_hid_stop() and usbd_hid_delete() functions were implemented.

6.2:

  • usbd_kbd_set_key_report() added.
  • Under some conditions the driver could miss to send an IN report.

6.1:

  •  Multi-interface support added.

5.6:

  •  psp_types.h used instead of stdint.h and stddef.h.
  •  Compiler warnings were eliminated.

5.5:

  • Set_Protocol/Get_Protocol requests were implemented to meet HID boot device requirements.
  • Compiler error was fixed (when one of USBD_GHID_IN_MAX_REPORT_NUM or USBD_GHID_OUT_MAX_REPORT_NUM was zero).

5.4:

  • Merged HID class driver history files. All HID modules uses the same version as USBD HID base.  


   usbd_hid_generic.txt

   --------------------

   4.1:

  •  Added support for different report sizes.

   4.0:

  •  Added support for more generic IN/OUT reports.

   3.0:

  •  Initial check-in.


   usbd_hid_kbd.txt

   ----------------

   2.0:

  •  Initial check-in.


   usbd_hid_mouse.txt

   ------------------

   2.0:

  •  Initial check-in.

   

5.3:   

  • Corrected callback handling in usbd_hidtx_task() to call the registered callback in case of IN report only.

5.2:

  • Init fix for task IDs.

5.1:

  • Reset interface and transfer variables before creating the resources. The old version could start an RX transfer if the compiler didn't reset all variables leading to incorrect operation.

5.0:

  • Initial check-in.