TinyUSB
tinyusb 组件实现了 USB 设备功能的基础。目前在以下 ESP32 微控制器变体上支持:
- ESP32-P4
- ESP32-S2
- ESP32-S3
该组件仅初始化 TinyUSB 驱动程序,允许微控制器在连接到 USB 主机时充当 USB 设备。
# 示例最小配置条目tinyusb:- id (可选, ID):手动指定此组件的 ID。
- usb_product_id (可选, 整数):USB 产品标识符。默认为
0x4001。 - usb_vendor_id (可选, 整数):USB 供应商标识符。默认为
0x303A(乐鑫)。 - usb_lang_id (可选, 整数):USB 语言标识符。默认为
0x0409(英语 - 美国)。 - usb_manufacturer_str (可选, 字符串):制造商字符串描述符。默认为
"ESPHome"。 - usb_product_str (可选, 字符串):产品名称字符串描述符。默认为
"ESPHome"。 - usb_serial_str (可选, 字符串):序列号字符串描述符。如果未指定,将使用设备的 MAC 地址。
供应商和产品 ID
Section titled “供应商和产品 ID”指定自定义 usb_vendor_id 和 usb_product_id 值时,请注意:
- USB 供应商 ID 由 USB 实施者论坛 (USB-IF) 官方分配。
- 使用未分配或第三方的供应商/产品 ID 组合可能会导致意外的(主机)行为。
- 默认供应商 ID
0x303A分配给乐鑫。 - 对于爱好者和开发目的,您可以使用测试 ID,但这些不应用于生产设备。
usb_lang_id 字段使用 USB 规范定义的 USB 语言 ID。常见值包括:
0x0409- 英语(美国)- 默认0x0809- 英语(英国)0x0407- 德语(德国)0x040C- 法语(法国)
更完整的列表可以在这里找到。