Skip to content

Commit 6359293

Browse files
committed
Merge branch 'docs/update_usb_solutions' into 'master'
feat: add usb device solutions docs See merge request ae_group/esp-iot-solution!943
2 parents 85af877 + 6a93275 commit 6359293

File tree

4 files changed

+258
-24
lines changed

4 files changed

+258
-24
lines changed
Lines changed: 116 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,120 @@
1-
21
USB Device Solution
32
--------------------
43

54
:link_to_translation:`zh_CN:[中文]`
5+
6+
USB Audio Device Solution
7+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
8+
9+
The USB audio device solution is based on the UAC 2.0 (USB Audio Class) protocol standard, which allows Espressif SoCs to function as audio devices, providing convenient and high-quality audio transmission capabilities. For example, it can be used as a microphone or speaker connected to a computer or other USB audio-enabled devices for audio input and output.
10+
11+
Features:
12+
~~~~~~~~~
13+
14+
* Supports UAC 2.0
15+
* Supports various audio formats and sampling rates
16+
* Supports audio input and output
17+
18+
Hardware:
19+
~~~~~~~~~
20+
21+
* Chip: ESP32-S2, ESP32-S3
22+
* Peripheral: USB-OTG
23+
24+
Links:
25+
~~~~~~
26+
27+
* `ESP-BOX USB Speaker with Display <https://github.com/espressif/esp-box/tree/master/examples/usb_headset>`_
28+
29+
USB Video Device Solution
30+
^^^^^^^^^^^^^^^^^^^^^^^^^^
31+
32+
The USB Video device solution is based on the UVC (USB Video Class) protocol standard, which allows Espressif SoCs to function as video devices, providing convenient and high-quality video transmission capabilities. It can be applied to USB doorbell cameras or USB + Wi-Fi dual-mode network cameras.
33+
34+
Features:
35+
~~~~~~~~~
36+
37+
* Supports UVC 1.5
38+
* Supports synchronous and bulk transfer modes
39+
* Supports functioning as a virtual camera device
40+
41+
Hardware:
42+
~~~~~~~~~
43+
44+
* Chip: ESP32-S2, ESP32-S3
45+
* Peripheral: USB-OTG
46+
47+
Links:
48+
~~~~~~
49+
50+
* `USB Network Camera <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_webcam>`_
51+
52+
USB Mass Storage Device Solution
53+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
54+
55+
The USB mass storage device solution is based on the MSC (Mass Storage Class) protocol standard. It can also be combined with Wi-Fi functionality to build wireless shared storage devices such as USB wireless flash drives, card readers, digital music players, and digital media players.
56+
57+
Features:
58+
~~~~~~~~~
59+
60+
* USB-Wi-Fi bidirectional access
61+
* Multiple device connections
62+
* Emulates a USB flash drive
63+
64+
Hardware:
65+
~~~~~~~~~
66+
67+
* Chip: ESP32-S2, ESP32-S3
68+
* Peripheral: USB-OTG
69+
70+
Links:
71+
~~~~~~
72+
73+
* `USB + Wi-Fi Wireless Flash Drive <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_msc_wireless_disk>`_
74+
75+
USB HID Device Solution
76+
^^^^^^^^^^^^^^^^^^^^^^^^^^
77+
78+
The USB HID device solution is based on the HID (Human Interface Device) protocol standard. It can function as a USB keyboard, mouse, gamepad, and other devices to enable human-computer interaction. When combined with wireless features such as Wi-Fi, Bluetooth, and ESP-Now, it can also be used to build wireless HID devices.
79+
80+
Features:
81+
~~~~~~~~~
82+
83+
* Supports various HID devices
84+
* Supports custom HID devices
85+
* Supports both USB HID and BLE HID modes
86+
87+
Hardware:
88+
~~~~~~~~~
89+
90+
* Chip: ESP32-S2, ESP32-S3
91+
* Peripheral: USB-OTG
92+
93+
Links:
94+
~~~~~~
95+
96+
* `USB HID Keyboard and Mouse Example <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_hid_device>`_
97+
* `USB HID Surface Dial Example <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_surface_dial>`_
98+
99+
USB Drag-and-Drop OTA Upgrade
100+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
101+
102+
Based on esp-tinyuf2 as a virtual USB flash drive, this solution supports drag-and-drop UF2 firmware onto the flash drive for OTA updates. It also supports mapping NVS data to files on the flash drive, allowing modification of NVS by modifying the files.
103+
104+
Features:
105+
~~~~~~~~~
106+
107+
* OTA updates by dragging and dropping UF2 firmware
108+
* Modifying NVS through virtual file manipulation
109+
110+
Hardware:
111+
~~~~~~~~~
112+
113+
* Chip: ESP32-S2, ESP32-S3
114+
* Peripheral: USB-OTG
115+
116+
Links:
117+
~~~~~~
118+
119+
* `Read/Write NVS with USB Flash Drive <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_uf2_nvs>`_
120+
* `Virtual USB Flash Drive UF2 OTA Upgrade <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_uf2_ota>`_

docs/en/usb/usb_overview/usb_host_solutions.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ USB Host Solution
44

55
:link_to_translation:`zh_CN:[中文]`
66

7-
ESP32-S2/S3 and similar chips come with built-in USB-OTG peripherals, supporting the connection of various type of USB devices through the USB interface. The following provides an overview of the USB Host solutions supported by the ESP32-S2/S3 chips.
7+
ESP32-S2/S3 chips have built-in USB-OTG peripherals, which support USB host mode. Based on the USB host stack and various USB host class drivers provided by ESP-IDF, they can connect to a variety of USB devices through the USB interface. The following describes the USB Host solutions supported by ESP32-S2/S3 chips.
88

99
ESP USB Camera Video Solution
1010
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -133,5 +133,5 @@ Hardware:
133133
Links:
134134
~~~~~~~
135135

136-
* `usb_host_msc component <https://components.espressif.com/components/espressif/usb_host_msc>`_
137-
* Example Code: Mounting USB Flash Drive + File System Access `here <https://github.com/espressif/esp-idf/tree/master/examples/peripherals/usb/host/msc>`_
136+
* `USB Flash Drive OTA component <https://github.com/espressif/esp-iot-solution/tree/master/components/usb/esp_msc_ota>`_
137+
* `Mount USB Flash Drive + File System Access Example <https://github.com/espressif/esp-idf/tree/master/examples/peripherals/usb/host/msc>`_
Lines changed: 119 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,123 @@
11

22
USB Device 方案
3-
---------------
3+
------------------
44

55
:link_to_translation:`en:[English]`
6+
7+
ESP32-S2/S3 等芯片内置 USB-OTG 外设,支持 USB 设备模式,可以通过 USB 连接到 PC 或者其他 USB 主机设备。结合设备 TinyUSB 协议栈和设备类驱动,可用于开发多种 USB 设备,如 HID 设备、CDC 设备、复合设备等。以下介绍基于 USB 设备的相关解决方案。
8+
9+
USB 音频设备方案
10+
^^^^^^^^^^^^^^^^^
11+
12+
USB 音频设备方案基于 UAC 2.0 (USB Audio Class)协议标准 ,使乐鑫 SoC 可作为音频设备,提供便捷和高质量的音频传输功能,例如将其作为麦克风或扬声器,连接到计算机等支持 USB 音频的设备上,实现音频的输入和输出。
13+
14+
特性:
15+
~~~~~~
16+
17+
* 支持 UAC 2.0
18+
* 支持多种音频格式和采样率
19+
* 支持音频输入和输出
20+
21+
硬件:
22+
~~~~~~
23+
24+
* 芯片:ESP32-S2,ESP32-S3
25+
* 外设:USB-OTG
26+
27+
链接:
28+
~~~~~~
29+
30+
* `ESP-BOX 带屏 USB 音响 <https://github.com/espressif/esp-box/tree/master/examples/usb_headset>`_
31+
32+
USB 视频设备方案
33+
^^^^^^^^^^^^^^^^^
34+
35+
USB UVC 设备方案基于 UVC(USB Video Class)协议标准,使乐鑫 SoC 可作为视频设备,提供便捷和高质量的视频传输功能,可应用在 USB 门铃摄像头,或 USB + Wi-Fi 双模网络摄像头。
36+
37+
特性:
38+
~~~~~~
39+
40+
* 支持 UVC 1.5
41+
* 支持同步和批量两种传输模式
42+
* 支持作为虚拟摄像头设备
43+
44+
硬件:
45+
~~~~~~
46+
47+
* 芯片:ESP32-S2,ESP32-S3
48+
* 外设:USB-OTG
49+
50+
链接:
51+
~~~~~~
52+
53+
* `USB 网络摄像头 <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_webcam>`_
54+
55+
USB 存储设备方案
56+
^^^^^^^^^^^^^^^^^^
57+
58+
USB 存储设备方案基于 MSC(Mass Storage Class)协议标准,结合 Wi-Fi 功能,还可构建无线共享存储设备,如 USB 无线 U 盘、读卡器、数字音乐播放器、数字多媒体播放器等。
59+
60+
特性:
61+
~~~~~~
62+
63+
* USB - Wi-Fi 双向访问
64+
* 多设备接入
65+
* 模拟 U 盘
66+
67+
硬件:
68+
~~~~~~
69+
70+
* 芯片:ESP32-S2,ESP32-S3
71+
* 外设:USB-OTG
72+
73+
链接:
74+
~~~~~~
75+
76+
* `USB + Wi-Fi 无线 U 盘 <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_msc_wireless_disk>`_
77+
78+
USB HID 设备方案
79+
^^^^^^^^^^^^^^^^^^
80+
81+
USB HID 设备方案基于 HID(Human Interface Device)协议标准,可作为 USB 键盘、鼠标、游戏手柄等设备,实现人机交互功能。结合 Wi-Fi,蓝牙,ESP-Now 等无线功能,还可构建无线 HID 设备。
82+
83+
特性:
84+
~~~~~~
85+
86+
* 支持多种 HID 设备
87+
* 支持自定义 HID 设备
88+
* 支持 USB HID 和 BLE HID 双模
89+
90+
硬件:
91+
~~~~~~
92+
93+
* 芯片:ESP32-S2,ESP32-S3
94+
* 外设:USB-OTG
95+
96+
链接:
97+
~~~~~~
98+
99+
* `USB HID 键盘和鼠标示例 <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_hid_device>`_
100+
* `USB HID Surface Dial 示例 <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_surface_dial>`_
101+
102+
U 盘拖拽升级
103+
^^^^^^^^^^^^^^^
104+
105+
基于 esp-tinyuf2 作为虚拟 U 盘,支持拖拽 UF2 固件到 U 盘实现 OTA。同时支持将 NVS 数据映射到 U 盘文件,通过修改文件改写 NVS。
106+
107+
特性:
108+
~~~~~~
109+
110+
* 拖拽 UF2 固件进行 OTA
111+
* 通过虚拟文件修改 NVS
112+
113+
硬件:
114+
~~~~~~
115+
116+
* 芯片:ESP32-S2,ESP32-S3
117+
* 外设:USB-OTG
118+
119+
链接:
120+
~~~~~~
121+
122+
* `U 盘读写 NVS <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_uf2_nvs>`_
123+
* `虚拟 U 盘 UF2 升级 <https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_uf2_ota>`_

0 commit comments

Comments
 (0)