https://github.com/nrf-rs/nrf-usbd
Driver for the USBD peripheral in nRF microcontrollers
https://github.com/nrf-rs/nrf-usbd
nrf52 nrf53 rust usb
Last synced: about 1 month ago
JSON representation
Driver for the USBD peripheral in nRF microcontrollers
- Host: GitHub
- URL: https://github.com/nrf-rs/nrf-usbd
- Owner: nrf-rs
- License: apache-2.0
- Created: 2021-06-10T11:34:37.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-01T22:26:09.000Z (2 months ago)
- Last Synced: 2025-05-07T13:56:31.553Z (about 1 month ago)
- Topics: nrf52, nrf53, rust, usb
- Language: Rust
- Homepage:
- Size: 125 KB
- Stars: 20
- Watchers: 7
- Forks: 5
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
[](https://crates.io/crates/nrf-usbd)
[](https://docs.rs/nrf-usbd)
# `nrf-usbd`
[`usb-device`](https://github.com/rust-embedded-community/usb-device) implementation for Nordic
Semiconductor nRF microcontrollers.## Supported microcontrollers
* `nrf52840`
* `nrf52833`
* `nrf52820`
* `nrf5340`, maybe?## Usage
This driver is relatively low-level, and is intended for use through a HAL library.
Such HAL library should implement `UsbPeripheral` for the corresponding USB peripheral object.
This trait declares all the peripheral properties that may vary from one device family to the other.## Examples
See the [`nrf-hal`](https://github.com/nrf-rs/nrf-hal) for the reference HAL implementation.
See the [`example`](./example) directory for an example on how to use it standalone without a HAL.
This is discouraged, the recommended usage is through `nrf-hal`.