Update History
V2.5.3 / 30-April-2019Main
Changes
- Fix misra-c 2012 high severity violations
- Core driver:
- protect shared macros __ALIGN_BEGIN, __ALIGN_END with C directive #ifndef
- update Core driver and DFU Class driver to use USBD_SUPPORT_USER_STRING_DESC insead of USBD_SUPPORT_USER_STRING
- prevent accessing to NULL pointer if the get descriptor functions are not defined
- Update on USBD_LL_Resume(), restore the device state only if the current state is USBD_STATE_SUSPENDED
V2.5.2 / 27-Mars-2019Main
Changes
- DFU Class:
- fix compilation warning due to unreachable
instruction code introduced with CMSIS V5.4.0 NVIC_SystemReset() prototype change
V2.5.1 / 03-August-2018
Main
Changes
- Update license section by adding path to get copy of ST Ultimate Liberty license
- Core: Fix unexpected stall during status OUT phase
- DFU Class:
- rework hdfu struct to prevent unaligned addresses
- MSC Class:
- fix lba address overflow during large file transfers > 4Go
- Template Class:
- add missing Switch case Break on USBD_Template_Setup API
V2.5.0 / 15-December-2017
Main
Changes
- Update license section
- Update some functions to be MISRAC 2004 compliant
- Add HS and OtherSpeed configuration descriptor for HID and CustomHID classes
- Correct error handling in all class setup function
- Add usbd_desc_template.c/ usbd_desc_template.h templates files
- Add support of class and vendor request
- CDC Class: fix zero-length packet issue in bulk IN transfer
- Fix compilation warning with unused arguments for some functions
- Improve USB Core enumeration state machine
V2.4.2 / 11-December-2015
Main
Changes
- CDC Class
- usbd_cdc.c: change #include "USBD_CDC.h" by #include "usbd_cdc.h"
V2.4.1 / 19-June-2015
Main
Changes
- CDC Class
- usbd_cdc.c: comments update
- MSC Class
- usbd_msc_bot.h: update to be C++ compliant
- AUDIO Class
- usbd_audio.c: fix issue when Host sends GetInterface command it gets a wrong value
- usbd_audio.c: remove useless management of DMA half transfer
V2.4.0 / 28-February-2015
Main
Changes
- Core Driver
- Add support of Link Power Management (LPM): add new API GetBOSDescriptor(), that is used only if USBD_LPM_ENABLED switch is enabled in usbd_conf.h file
- usbd_core.c:
Fix bug of unsupported premature Host Out stage during data In stage
(ie. when endpoint 0 maximum data size is 8 and Host requests
GetDeviceDescriptor for the first time)
- usbd_ctlreq.c: Fix bug of unsupported Endpoint Class requests (ie. Audio SetCurrent request for endpoint sampling rate setting)
- HID Class
- Updating Polling time API USBD_HID_GetPollingInterval() to query this period for HS and FS
- usbd_hid.c: Fix USBD_LL_CloseEP() function call in USBD_HID_DeInit() replacing endpoint size by endpoint address.
- CDC Class
- usbd_cdc.c:
- Add missing GetInterface request management in USBD_CDC_Setup() function
- Update
USBD_CDC_Setup() function to allow correct user implementation of
CDC_SET_CONTROL_LINE_STATE and similar no-data setup requests.
V2.3.0 / 04-November-2014
Main
Changes
- Update all drivers to be C++ compliant
- CDC Class
- usbd_cdc.c: fix clear flag issue in USBD_CDC_TransmitPacket() function
- usbd_cdc_if_template.c: update TEMPLATE_Receive() function header comment
- Miscellaneous source code comments update
V2.2.0 / 13-June-2014
Main
Changes
- Source code comments review and update
- HID class
- Remove unused API USBD_HID_DeviceQualifierDescriptor()
- Add a new API in the HID class to query the poll time USBD_HID_GetPollingInterval()
- CDC class
- Bug fix: missing handling ZeroLength Setup request
- All classes
- Add alias for the class definition, it's defined as macro with capital letter
ex. for the HID, the USBD_HID_CLASS macro is defined this way #define USBD_HID_CLASS &USBD_HID and the application code can use the previous definition: &USBD_HID ex. USBD_RegisterClass(&USBD_Device, &USBD_HID) or the new USBD_HID_CLASS ex. USBD_RegisterClass(&USBD_Device, USBD_HID_CLASS)
V2.1.0 / 22-April-2014
Main
Changes
- usbd_conf_template.c: update file with the right content (it was using MSC memory management layer)
- usbd_conf_template.h: change include of stm32f4xx.h by stm32xxx.h and add comment to inform user to adapt it to the device used
- Several enhancements in CustomHID class
- Update the Custom HID class driver to simplify the link with user processes
- Optimize the Custom HID class driver and reduce footprint
- Add USBD_CUSTOM_HID_RegisterInterface() API to link user process to custom HID class
- Add Custom HID interface template file usbd_customhid_if_template.c/h
- Miscellaneous comments update
V2.0.0 / 18-February-2014
Main
Changes
- Major update
based on STM32Cube specification: Library Core, Classes architecture and APIs
modified vs. V1.1.0, and thus the 2 versions are not compatible.
- This version has to be used only with STM32Cube based development
V1.1.0 / 19-March-2012
Main
Changes
- Official support of STM32F4xx devices
- All source files: license disclaimer text update and add link to the License file on ST Internet.
- Handle test mode in the set feature request
- Handle dynamically the USB SELF POWERED feature
- Handle correctly the USBD_CtlError process to take into account error during Control OUT stage
- Miscellaneous bug fix
V1.0.0 / 22-July-2011Main
Changes
- First official version for STM32F105/7xx and STM32F2xx devices
LicenseThis
software component is licensed by ST under Ultimate Liberty license
SLA0044, the "License"; You may not use this component except in
compliance with the License. You may obtain a copy of the License at: http://www.st.com/SLA0044
For
complete documentation on STM32
Microcontrollers visit www.st.com/STM32
|