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.