docs: add multi-model flashing guide for N16R8, N8R2 and N4R2
This commit is contained in:
1 parent
1b1835b5a3
commit
5e410d3186
2 files changed
+63
-14
No files matched your search
@@ -1,9 +1,10 @@
|
||||
# RemoteMapper-ESP32 · 小米蓝牙遥控器 2 Pro (RC003) ➔ USB 复合硬件桥接器
|
||||
|
||||
> 🎯 **基于 ESP32-S3 N16R8 的硬件级中间人协议桥接方案**
|
||||
> 🎯 **基于 ESP32-S3 (N16R8 / N8R2 / N4R2) 的硬件级中间人协议桥接方案**
|
||||
> 彻底解决 Windows 内核驱动丢弃「音量+ / 音量- / 返回键」的顽疾,告别 VB-Cable 虚拟声卡依赖,实现真·即插即用!
|
||||
> ⚠️ **硬件型号限定**:目前固件**仅支持「小米蓝牙遥控器 2 Pro(型号:RC003)」**,暂不支持其他型号遥控器。
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 💡 为什么需要这个硬件项目?(背景与痛点)
|
||||
@@ -129,21 +130,63 @@
|
||||
整个使用流程简单清晰,分为以下六个核心步骤:
|
||||
|
||||
### 步骤 1:硬件采购与接线
|
||||
1. **采购核心板**:购买 **ESP32-S3-DevKitC-1 N16R8** 开发板(淘宝约 25~35 元,务必选择带 **16MB Flash + 8MB Octal PSRAM** 的版本);
|
||||
2. **准备遥控器**:小米蓝牙遥控器 2 Pro (型号: MC003)
|
||||
1. **采购开发板**:购买任意 **ESP32-S3-DevKitC-1** 主控板(淘宝约 18~35 元):
|
||||
* 🌟 **全系列主流型号无缝兼容**:
|
||||
* **N16R8**(16MB Flash + 8MB Octal PSRAM):旗舰大容量配置,出厂默认目标;
|
||||
* **N8R2**(8MB Flash + 2MB Quad PSRAM):性价比极高的高频主流款,内存与存储极为充裕;
|
||||
* **N4R2**(4MB Flash + 2MB Quad PSRAM):极简低成本版,固件极致精简后仅 1.16MB,仍完整保留 A/B 双分区 OTA 升级能力!
|
||||
2. **准备遥控器**:小米蓝牙遥控器 2 Pro(型号: RC003)
|
||||
3. **关键数据线连接**:
|
||||
* ESP32-S3 开发板通常有两个 Type-C 口:一个标注为 **`UART`**,另一个标注为 **`USB`**(或 **`OTG`**);
|
||||
* **⚠️ 必须将数据线插在 `USB / OTG` 接口**(直连芯片内部原生 USB 控制器,才能模拟物理麦克风与键盘;UART 口仅用于串口烧录通信,无法模拟 USB 设备)。
|
||||
* ESP32-S3 开发板通常有两个 Type-C 口:一个标注为 **`UART`**(或 COM),另一个标注为 **`USB`**(或 **`OTG`**);
|
||||
* **⚠️ 日常使用必须将数据线插在 `USB / OTG` 接口**(直连芯片原生内部 USB 控制器,才能免驱模拟物理麦克风与键盘;UART 口仅用于串口日志调试,无法模拟 USB 输入外设)。
|
||||
|
||||
---
|
||||
|
||||
### 步骤 2:一键刷入固件
|
||||
1. 将 ESP32-S3 通过 USB/OTG 口连接至电脑;
|
||||
2. 在本项目根目录下,直接双击运行:
|
||||
```cmd
|
||||
flash.bat
|
||||
```
|
||||
3. 脚本会自动调用 esptool 识别端口并烧录固件,等待提示 `Successfully created esp32s3 image` 烧录完成。
|
||||
### 步骤 2:固件编译与一键烧写(多型号支持)
|
||||
|
||||
将 ESP32-S3 开发板通过数据线连接至电脑,根据开发板型号选择对应的烧录方式:
|
||||
|
||||
#### 方式 1:双击批处理脚本(最简便)
|
||||
在本项目根目录下运行:
|
||||
* **默认烧写 N16R8**:直接双击运行 `flash.bat`
|
||||
* **命令行指定型号烧写**:
|
||||
```cmd
|
||||
flash.bat n8r2 # 烧录至 N8R2 开发板
|
||||
flash.bat n4r2 # 烧录至 N4R2 开发板
|
||||
flash.bat n16r8 # 烧录至 N16R8 开发板
|
||||
```
|
||||
|
||||
#### 方式 2:PlatformIO 命令行精确构建与烧录
|
||||
在本项目根目录下打开终端,可直接使用以下命令进行编译与烧写:
|
||||
|
||||
```bash
|
||||
# ========================================================
|
||||
# 1. 旗舰版 N16R8 (16MB Flash, 8MB Octal PSRAM)
|
||||
# ========================================================
|
||||
# 仅编译固件
|
||||
python -m platformio run -e esp32s3_n16r8
|
||||
# 编译并烧录至开发板
|
||||
python -m platformio run -e esp32s3_n16r8 -t upload
|
||||
|
||||
# ========================================================
|
||||
# 2. 性价比版 N8R2 (8MB Flash, 2MB Quad PSRAM)
|
||||
# ========================================================
|
||||
# 仅编译固件
|
||||
python -m platformio run -e esp32s3_n8r2
|
||||
# 编译并烧录至开发板
|
||||
python -m platformio run -e esp32s3_n8r2 -t upload
|
||||
|
||||
# ========================================================
|
||||
# 3. 极简版 N4R2 (4MB Flash, 2MB Quad PSRAM)
|
||||
# ========================================================
|
||||
# 仅编译固件
|
||||
python -m platformio run -e esp32s3_n4r2
|
||||
# 编译并烧录至开发板
|
||||
python -m platformio run -e esp32s3_n4r2 -t upload
|
||||
```
|
||||
|
||||
> 💡 **烧录排错小贴士(Boot 模式)**:
|
||||
> 若提示连接开发板超时或无法识别 COM 口,可按住开发板上的 **`BOOT` 按键不放**,点按一下 **`RST` 复位键**(或重新拔插一次 USB 线),松开 `BOOT` 按键即可强制开发板进入 ROM Download 下载模式,然后再执行上述烧录命令。
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -1,10 +1,16 @@
|
||||
@echo off
|
||||
set TARGET_ENV=esp32s3_n16r8
|
||||
if "%1"=="n8r2" set TARGET_ENV=esp32s3_n8r2
|
||||
if "%1"=="n4r2" set TARGET_ENV=esp32s3_n4r2
|
||||
if "%1"=="n16r8" set TARGET_ENV=esp32s3_n16r8
|
||||
|
||||
echo ========================================================
|
||||
echo Flashing RemoteMapper-ESP32 Firmware to ESP32-S3
|
||||
echo Flashing RemoteMapper-ESP32 [%TARGET_ENV%] to ESP32-S3
|
||||
echo ========================================================
|
||||
python -m platformio run -e esp32s3_n16r8 -t upload
|
||||
python -m platformio run -e %TARGET_ENV% -t upload
|
||||
if %ERRORLEVEL% NEQ 0 (
|
||||
echo [ERROR] Flash Failed!
|
||||
exit /b %ERRORLEVEL%
|
||||
)
|
||||
echo [SUCCESS] Flash completed successfully!
|
||||
|
||||
Reference in new issue
Block a user