5,254,743 AI resources indexedWorking toward the world’s largest AI resource index.

PDF

USB Stack Skill

USB device and host stack implementation expertise

Installable skillMITBy a5c-aiUpdated Oct 30, 2026
INTENDED FOROpenClawInstall in a listed agent.

instructions.md

---
name: usb-stack-ae086a9c9e6b
description: USB device and host stack implementation expertise
category: Communication Protocols
allowed-tools:
  - Bash
  - Read
  - Write
  - Edit
  - Glob
  - Grep
graph:
  domains: [domain:embedded-systems]
  specializations: [specialization:embedded-systems]
  skillAreas: [skill-area:rtos-programming, skill-area:firmware-development]
  roles: [role:embedded-engineer]
---

# USB Stack Skill

## Overview

This skill provides USB device and host stack implementation expertise for embedded systems, covering descriptor generation, device class implementation, and protocol debugging.

## Capabilities

### USB Descriptor Generation
- Device descriptor configuration
- Configuration descriptors
- Interface descriptors
- Endpoint descriptors
- String descriptors
- BOS descriptors (USB 3.x)

### Device Class Implementation
- CDC (Communications Device Class)
- HID (Human Interface Device)
- MSC (Mass Storage Class)
- DFU (Device Firmware Upgrade)
- Audio class
- Video class
- Custom class implementation

### USB Stack Configuration
- TinyUSB configuration
- STM32 USB stack setup
- NXP USB stack integration
- Zephyr USB subsystem
- Endpoint buffer management

### Enumeration and Debugging
- Enumeration sequence debugging
- Protocol analysis
- USB analyzer integration
- Descriptor validation
- Compliance testing

### Advanced Features
- Composite device configuration
- USB power delivery
- High-speed/full-speed selection
- Isochronous transfers
- Interrupt transfers
- Bulk transfers

### DFU Implementation
- DFU bootloader design
- Runtime DFU mode
- Detach and download
- Upload capability
- Manifest phase handling

## Target Processes

- `device-driver-development.js` - USB driver implementation
- `bootloader-implementation.js` - USB DFU bootloader
- `hw-sw-interface-specification.js` - USB interface specification

## Dependencies

- TinyUSB or vendor USB stack
- USB protocol analyzers
- usb-tools (lsusb, usbmon)

## Usage Context

This skill is invoked when tasks require:
- USB device implementation
- Device class development
- USB bootloader creation
- Protocol debugging
- Descriptor optimization

## Device Class Examples

### CDC Virtual COM Port
```c
tusb_desc_interface_t cdc_interface = {
    .bLength            = sizeof(tusb_desc_interface_t),
    .bDescriptorType    = TUSB_DESC_INTERFACE,
    .bInterfaceNumber   = 0,
    .bAlternateSetting  = 0,
    .bNumEndpoints      = 2,
    .bInterfaceClass    = TUSB_CLASS_CDC,
    .bInterfaceSubClass = CDC_COMM_SUBCLASS_ACM,
    .bInterfaceProtocol = CDC_COMM_PROTOCOL_NONE,
    .iInterface         = 0
};
```

### HID Report Descriptor
```c
uint8_t const hid_report_desc[] = {
    HID_USAGE_PAGE(HID_USAGE_PAGE_DESKTOP),
    HID_USAGE(HID_USAGE_DESKTOP_MOUSE),
    HID_COLLECTION(HID_COLLECTION_APPLICATION),
        HID_USAGE(HID_USAGE_DESKTOP_POINTER),
        HID_COLLECTION(HID_COLLECTION_PHYSICAL),
            // ... buttons and axes
        HID_COLLECTION_END,
    HID_COLLECTION_END
};
```

## Configuration

```yaml
usb:
  vid: 0x1234
  pid: 0x5678
  device_class: cdc | hid | msc | dfu | composite
  speed: full | high
  endpoints:
    - ep1_in: bulk, 64
    - ep1_out: bulk, 64
```

Discuss this resource

Platform guidance

Imported from the listed AgentSkill.sh category. Complete supplied package files and notices are retained. Required external tools and credentials are not installed. No bundled code was executed during import. Individual agent task behavior has not been tested.