usbd-storage

Experimental USB Mass Storage implementation for usb-device.

Subclasses

Implemented subclasses: * SCSI device - number of SCSI commands is not exhaustive. Open a PR, if you want to add one. * USB Floppy Interface

It is possible to implement a vendor specific subclass.

Transports

Currently, only Bulk Only transport is implemented. It is possible to implement a vendor-specific transport.

Features

This crate has a couple of opt-in features that all could be used independently.

| Feature | Description | | ------- |---------------------------------------| | bbb | Include Bulk Only Transport | | scsi | Include SCSI subclass | | ufi | Include USB Floppy Interface sublcass | | defmt | Enable logging via defmt crate |

Examples

Currently, examples are tested under macOS only.

| Name | Description | | ---- |----------------------------------------------------------------------------------------------------------------------------------| | stm32f411x_scsi_bbb.rs | SCSI USB Mass Storage device (USB stick) based on Bulk Only Transport that stores data in RAM. | | stm32f411x_ufi_bbb.rs | USB Floppy Drive. Emulates a USB attached external floppy disk drive with insearted read-only diskette and a dancing cat .gif. |