diff options
| -rw-r--r-- | embassy-usb/README.md | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/embassy-usb/README.md b/embassy-usb/README.md index 400fc6695..a053c940b 100644 --- a/embassy-usb/README.md +++ b/embassy-usb/README.md | |||
| @@ -20,6 +20,11 @@ Async USB device stack for embedded devices in Rust. | |||
| 20 | To add `embassy-usb` support for new hardware (i.e. a new MCU chip), you have to write a driver that implements | 20 | To add `embassy-usb` support for new hardware (i.e. a new MCU chip), you have to write a driver that implements |
| 21 | the [`embassy-usb-driver`](https://crates.io/crates/embassy-usb-driver) traits. | 21 | the [`embassy-usb-driver`](https://crates.io/crates/embassy-usb-driver) traits. |
| 22 | 22 | ||
| 23 | Before writing a new driver, you can first verify whether the chip uses a common USB IP. Several widely used USB IPs already have implementations available, such as: | ||
| 24 | |||
| 25 | - **Synopsys OTG (dwc2)**: Available at [embassy-usb-synopsys-otg](https://crates.io/crates/embassy-usb-synopsys-otg). This IP is used by vendors like STMicroelectronics, Espressif, and others. | ||
| 26 | - **Musbmhdrc (musb)**: Available at [musb](https://crates.io/crates/musb). This IP is used by vendors like TI, MediaTek, Puya, and others. | ||
| 27 | |||
| 23 | Driver crates should depend only on `embassy-usb-driver`, not on the main `embassy-usb` crate. | 28 | Driver crates should depend only on `embassy-usb-driver`, not on the main `embassy-usb` crate. |
| 24 | This allows existing drivers to continue working for newer `embassy-usb` major versions, without needing an update, if the driver | 29 | This allows existing drivers to continue working for newer `embassy-usb` major versions, without needing an update, if the driver |
| 25 | trait has not had breaking changes. | 30 | trait has not had breaking changes. |
