# 0.15.0

*February 10, 2023*

- Add codespell to detect typo
- Add support for fuzzing and badge for oss-fuzz
- [osal]
  - Allow the use of non-static allocation for FreeRTOS
  - Fix FreeRTOS wrong task switch in some cases
- Fix tu_fifo memory overflown when repeatedly write to overwritable fifo (accumulated more than 2 depths)
- Better support for IAR (ARM) with ci build check for stm32 mcus.
- Fix Windows build for some mingw gnu make situations

## Controller Driver (DCD & HCD)

- Add new port support (WIP) for WCH CH32V307 USB Highspeed
- Add new port support (WIP) for PIC32MM/MX & PIC24

### nRF

- Fix endpoint internal state when closed
- Fix reception of large ISO packets

### rp2040

- [dcd] Implement workaround for Errata 15. This enable SOF when bulk-in endpoint is in use and reduce its bandwidth to only 80%
- [hcd] Fix shared irq slots filling up when `hcd_init()` is called multiple times
- [hcd] Support host bulk endpoint using hw "interrupt" endpoint. Note speed limit is 64KB/s

### samd

- [dcd] Add support for ISO endpoint

### dwc2

- [dcd] Add support for stm32u5xx

### esp32sx

- Fix Isochronous transfers only transmitted on even frame

### lpc_ip3511

- [dcd] Add isochronous support and fix endpoint accidental write

### ft90x

- Improve and enhance support for FT9xx MCU, tested with more examples

## Device Stack

### Video

- Add support for MJPEG
- Fix probe on macOS

### MIDI

- Support port name strings
- fix MS Header wTotalLength computation

### HID

- Add FIDO descriptor template
- change length in `tud_hid_report_complete_cb()` from `uint8_t` to `uint16_t`

### CDC

- Fix autoflush for FIFO < MPS
- Fix tx fifo memory overflown when DTR is not set and `tud_cdc_write()` is called repeatedly with large enough data

### USBTMC

- Fix packet size with highspeed

## Host Stack

- Retry a few times with transfers in enumeration since device can be unstable when starting up
- [MSC] Rework host mass storage API. Add new `host/msc_file_explorer` example

### CDC

- Add support for host cdc
- Fix host cdc with device without IAD e.g Arduino Due

## Contributors

Thanks to everyone who contributed to this release: @battlesnake, @benishor, @brtchip-gdm, @DRNadler, @gregdavill, @hadess, @hathach, @hfegran, @HiFiPhile, @jbruneaux31, @jmark1m, @kasjer, @kaysievers, @kilograham, @kkitayam, @kripton, @Lan-Hekary, @LynnL4, @maddyaby, @mingpepe, @nathaniel-brough, @P33M, @pete-pjb, @ReimuNotMoe, @rppicomidi, @scoudreau, @Skyler84, @Staacks, @tore-espressif, @tswan-quasi, @tyustli.
