Skip to content

USB Device Stack #3546

@jfischer-no

Description

@jfischer-no

For some time now I have been working on the USB Device Stack for RIOT. Currently I have a functioning device stack with CDC ACM device support (loopback). It is progressing slowly, because I do it only in my free time, but steadily. I plan to open a PR at end of the week.
The stack shall/will be designed to run on built-in USB-Controllers (on ARM SoCs or similar).

Here I would like to put my ideas on the stack to discussion and track the progress.

I see three steps as the main task:

  1. Implementation of USB Device Stack with CDC-ACM support, thus RIOT can act (inside a USB adapter) as a border router.
  2. Implementation of USB HCI protocol, thus RIOT can be used inside a USB BLE adapter (if BLE LL is finished).
  3. Since there is no common interface such as HCl for IEEE802.15.4 devices under Linux, it is close to take it from bluez and/or adapt it to use with Linux IEEE802.15.4 subsystem.

I think if it is so far, RIOT will be a universal OS for IoT. Especially the step two may increase the popularity of RIOT and increases the acceptance of IEEE802.15.4 devices.

The TODO list for the stack:

  • USB Device Stack, WIP -> USB device stack #3890
    • CDC-ACM support
    • CDC-ECM support
    • netdev support over bulk endpoints (radio on the SoC can be used by the native port)
  • RIOT-OS as Hard-MAC for Linux IEEE802.15.4 subsystem
  • Implementation of USB HCI protocol, -> USB BLE HCI protocol #4684

Supported hardware:

Metadata

Metadata

Assignees

Labels

Area: driversArea: Device driversDiscussion: RFCThe issue/PR is used as a discussion starting point about the item of the issue/PRPlatform: ARMPlatform: This PR/issue effects ARM-based platforms

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions