#embedded-hal #usb #async #hal

no-std embassy-usb-synopsys-otg

embassy-usb-driver implementation for Synopsys OTG USB controllers

4 releases (2 breaking)

0.3.1 Aug 27, 2025
0.3.0 Jul 22, 2025
0.2.0 Dec 6, 2024
0.1.0 Apr 30, 2024

#2281 in Embedded development

Download history 9352/week @ 2025-10-26 10908/week @ 2025-11-02 10185/week @ 2025-11-09 11344/week @ 2025-11-16 12465/week @ 2025-11-23 14274/week @ 2025-11-30 14321/week @ 2025-12-07 12323/week @ 2025-12-14 9373/week @ 2025-12-21 10226/week @ 2025-12-28 14874/week @ 2026-01-04 16309/week @ 2026-01-11 15962/week @ 2026-01-18 15277/week @ 2026-01-25 13546/week @ 2026-02-01 10577/week @ 2026-02-08

56,807 downloads per month
Used in 27 crates (2 directly)

MIT/Apache

515KB
12K SLoC

Embassy USB driver for the Synopsys USB OTG core

This crate implements embassy-usb-driver for Synopsys USB OTG devices.

It contains the "core" of the driver that is common across all chips using the Synopsys OTG IP, but it doesn't contain chip-specific initialization such as clock setup and GPIO muxing. You most likely don't want to use this crate directly, but use it through a HAL that does the initialization for you.

List of HALs integrating this driver:

If you wish to integrate this crate into your device's HAL, you will need to add the device-specific initialization. See the above crates for examples on how to do it.

Dependencies

~1MB
~19K SLoC