STM32 DFU 驱动修复与飞控 USB 诊断
飞控检测不到时,原因几乎总是四类之一:充电线、板子处于错误模式、缺少或错误的驱动(Windows 上的 STM32 DFU 驱动),或系统未授予权限。本页逐步排查,含 Windows 常用修复(ImpulseRC Driver Fixer 与 Zadig),以及 macOS、Linux、Android 检查项。
Android 版 FlySpark 含 USB 与 DFU 诊断:列出手机可见的 USB 设备、识别类型(运行中的飞控、DFU 引导加载器、USB 串口适配器、遥控器),并提示下一步。Android 无需驱动,重点在线缆、OTG、权限与板子模式。
此工具在 Android 版 FlySpark App 中运行。演示可直接在浏览器中使用。
- 免费
- 无需硬件的演示
简要
STM32 DFU 驱动让电脑在引导加载器模式(USB ID 0483:DF11)下刷写飞控。Windows 用 Zadig 或 ImpulseRC Driver Fixer 修复。Android 无需驱动;FlySpark USB 与 DFU 诊断显示手机检测结果与建议操作。
要点
- DFU 模式显示为 STM32 BOOTLOADER(0483:DF11);运行固件为虚拟 COM(0483:5740)。
- Windows 刷 DFU 需在 STM32 BOOTLOADER 上安装 WinUSB(Zadig 或 ImpulseRC,见 Betaflight 文档)。
- Linux 串口需 dialout 组;DFU 需 0483:df11 与 2e3c:df11 的 udev 规则(Betaflight 文档)。
- FlySpark 诊断识别 16 组 VID:PID,含 STM32/AT32/GD32 DFU、CP210x、CH340、CH9102、FTDI、ESP32-S3/C3、EdgeTX 等。
- 报告 DFU 接口的设备均显示为 bootloader,即使 ID 不在列表中。
- 建议:数据线、OTG、仅 USB 供电、按住 BOOT 插线,或 CLI 输入 bl。
- 诊断在 FlySpark Android 应用;浏览器有模拟设备演示。
Betaflight
INAV
ArduPilot
PX4- BLHeli_S
Bluejay
AM32
ExpressLRS
EdgeTX
DroneCAN
MAVLink
FlySpark
功能
- 01
USB 设备逐项命名
列出 VID:PID、制造商与产品名、芯片族及 FlySpark 识别类型。
- 02
Bootloader 检测
按 ID 识别 STM32/AT32/GD32 ROM DFU;任何 DFU 接口均显示 Bootloader (DFU)。
- 03
一键授权
尚未授权的设备显示 ALLOW ACCESS,唤起 Android 权限对话框。
- 04
即插即刷新
插拔时列表刷新,可观察板子在运行固件与 DFU 间切换。
- 05
找不到设备?
To configure 与 To flash 两份清单涵盖数据线、OTG、供电、BOOT 与 bl 命令。
- 06
直达对应工具
DFU 板子可 Open the firmware flasher;遥控器或 SD 卡可 Open the EdgeTX radio tool。
- 07
遥控器与适配器
识别 EdgeTX 串口/存储/摇杆模式,CP210x、CH340、CH9102、FTDI、ESP32 USB、ST-Link。
- 08
浏览器演示
无需插线即可查看运行中飞控、bootloader 与遥测电台的说明方式。
飞控检测不到的原因
先看线缆。许多充电线只供电,LED 亮但电脑/手机看不到设备。换已知可传数据的线。
再看模式。STM32 飞控有两种 USB 身份:运行 Betaflight/INAV/ArduPilot 时为虚拟 COM(STM32 常见 0483:5740),调参软件当串口打开;ROM bootloader 时为 STM32 BOOTLOADER(0483:DF11),仅刷机工具使用。bootloader 下调参连不上;运行固件时刷机工具需先重启进 bootloader。
然后是驱动与权限。Windows 上两种身份各需驱动,能调参仍可能刷机失败。Linux/Android 需权限才能打开设备。
Windows 安装 STM32 DFU 驱动
桌面 Betaflight 系刷机通过 WinUSB 与 bootloader 通信。Windows 无 STM32 BOOTLOADER 驱动或被其他驱动占用时,刷机报找不到 DFU 或卡在重启进 bootloader。
多数飞手先用 ImpulseRC Driver Fixer 自动安装。无效则进 DFU,打开 Zadig,Options › List All Devices,选 STM32 BOOTLOADER,目标 WinUSB,Replace/Install Driver。设备管理器若显示 Guillemot STM DFU Device 等,需卸载并删除驱动后重装 WinUSB。
只改 bootloader 设备驱动。调参用的虚拟 COM 用当前 Windows 自带串口驱动即可。
macOS、Linux 与 ChromeOS
macOS 对 STM32 虚拟 COM 与 DFU 无需额外驱动;不出现则查线、Hub、模式。
Linux 设备可见但普通用户可能无权限:串口通常需 dialout 组(注销再登录);DFU 需 udev 规则允许 0483:df11,见 Betaflight 文档。
电脑浏览器版 FlySpark 经 Web Serial 打开飞控串口(Chrome/Edge),适用相同串口权限规则。网页版不刷机。
Android:无驱动,但需 OTG 与权限
Android 可直接访问 STM32 虚拟 COM、DFU 与常见 USB 串口芯片。OTG 与权限可能阻碍:用 OTG 转接头或 USB-C 数据线;部分手机需开启 USB OTG。插入时允许 FlySpark 使用;若曾拒绝,诊断中点 ALLOW ACCESS。
供电也会干扰:飞控同时接电池与 USB 时重插可能无法干净重启;清单建议拔电池、仅 USB 供电再插线。
进入 DFU bootloader
两种方式:运行固件时在 Betaflight CLI 输入 bl(INAV 为 dfu),FlySpark 刷机工具会发送;或断电按住 BOOT(或无按键则短接 BOOT 焊盘)插 USB 后松开。Android 诊断卡片会变为 Bootloader (DFU) 并显示芯片族如 STM32 ROM DFU。
留在 bootloader 无法调参。刷机后若连不上,拔插 USB 且不要按 BOOT。
一览
USB 与 DFU 诊断识别的设备
| 0483:DF11 | STM32 ROM DFU bootloader |
|---|---|
| 2E3C:DF11 | AT32 ROM DFU bootloader |
| 28E9:0189 | GD32 ROM DFU bootloader |
| 0483:5740 | STM32 虚拟 COM(飞控或电台 USB Serial) |
| 2E3C:5740 | AT32 虚拟 COM |
| 10C4:EA60, 1A86:7523, 1A86:55D4 | CP210x、CH340、CH9102 USB 串口 |
| 0403:6001, 0403:6015 | FTDI FT232、FT230X |
| 303A:1001 | ESP32-S3/C3 USB(ExpressLRS 硬件) |
| 1209:4F54, 0483:5720, 0483:5710 | EdgeTX/OpenTX 电台、SD 存储、摇杆模式 |
| 0483:3748, 0483:374B | ST-Link V2/V2-1(FlySpark 不使用) |
| 任何带 DFU 接口的设备 | 显示 Bootloader (DFU) |
| 平台 | FlySpark Android;浏览器与应用内有模拟演示 |
对比
各系统连接飞控所需
| 功能 | Windows | macOS | Linux | Android + FlySpark |
|---|---|---|---|---|
| 虚拟 COM(调参) | 当前 Windows 自带串口驱动 | 无需驱动 | dialout 组 | 无需驱动,允许访问 |
| STM32 BOOTLOADER(刷机) | ImpulseRC 或 Zadig 装 WinUSB | 无需驱动 | udev 规则 | 无需驱动,允许访问 |
| 需要数据线 | 是 | 是 | 是 | 是另需 OTG |
FlySpark
排查飞控检测不到
换线
使用已知数据线;许多充电线不传数据。
查模式
运行固件=串口;DFU=STM32 BOOTLOADER。调参与刷机模式不同。
修驱动或权限
Windows 为 bootloader 装 WinUSB;Linux 加权限;Android 允许 FlySpark。
用 USB 诊断
Android 打开 USB and DFU doctor 查看手机实际检测结果。
指南 01
用 USB 与 DFU 诊断检查飞控
FlySpark Android 应用内。
打开 Tools,选 USB and DFU doctor。
OTG 连接飞控。
读卡片:Flight controller=运行固件;Bootloader (DFU)=可刷机。
若显示 ALLOW ACCESS,点选并接受 Android 提示。
无卡片则在 Not seeing your device? 选 To configure 或 To flash 逐步排查。
DFU 板子点 Open the firmware flasher。
指南 02
Windows 用 Zadig 修复 STM32 BOOTLOADER
桌面刷机报无 DFU 设备时。
按住 BOOT 插电脑进入 DFU。
设备管理器确认 STM32 BOOTLOADER 或未知设备。
Zadig:Options › List All Devices,选 STM32 BOOTLOADER。
目标 WinUSB,Replace/Install Driver。
拔线,再进 DFU 重试刷机。
指南 03
排除充电线
最先做的快速测试。
用该线连接电脑/手机与已知 USB 设备,确认是否出现。
不出现则线仅充电或损坏,换数据线。
Android 开诊断插飞控:LED 亮但无卡片,多为线或 OTG 问题。
故障排除
常见问题与处理
问题
板子亮灯但任何地方都无设备
处理
充电线/损坏线或 USB 口松动。换已知数据线或换口。
问题
Betaflight 无连接或无端口可选
处理
未呈现串口:查线、是否卡在 bootloader;Windows 查 STM32 Virtual ComPort。
问题
Windows 刷机无 DFU 设备
处理
ImpulseRC Driver Fixer 或 Zadig 为 STM32 BOOTLOADER 装 WinUSB。
问题
STM32 BOOTLOADER 变回 Guillemot STM DFU Device
处理
卸载 Guillemot 并删驱动,Zadig 重装 WinUSB。
问题
诊断显示 ALLOW ACCESS
处理
FlySpark 尚无权限,点 ALLOW ACCESS 并接受提示。
问题
诊断为 Bootloader (DFU) 但调参连不上
处理
在 bootloader 中。刷机或拔插 USB 且不按 BOOT。
问题
诊断显示 Game controller
处理
遥控器为摇杆模式。重插并选 USB Serial (VCP) 或 USB Storage。
问题
Unknown device 且 Connect 页 Hidden
处理
ID 未识别。Connect 页开启 Show all devices 再试。
问题
"Could not list USB devices"
处理
Android 拒绝 USB 查询。拔设备、关开诊断、再插。
术语
术语表
- DFU
- Device Firmware Upgrade,STM32 内置 bootloader 通过 USB 接收固件的模式。
- VCP
- Virtual COM port:运行固件时飞控在 USB 上呈现为串口。
- VID:PID
- USB 设备的厂商与产品 ID,如 0483:DF11。
- WinUSB
- Windows 通用 USB 驱动,桌面 DFU 刷机所需。
- Zadig
- Windows 工具,为所选 USB 设备安装 WinUSB 或 libusb。
- ImpulseRC Driver Fixer
- Windows 工具,为已连接飞控安装所需驱动。
- USB OTG
- On-The-Go:手机作 USB 主机,可接飞控。
- ROM bootloader
- STM32 出厂内置代码,通常无法擦除,几乎总能再次 DFU 刷机。
常见问题
常见问题
STM32 DFU 驱动是什么?
Windows 在 STM32 bootloader 模式用的驱动。Betaflight 系桌面刷机需在 STM32 BOOTLOADER 上用 WinUSB;ImpulseRC 或 Zadig 安装。
Android 需要 Zadig 或 ImpulseRC 吗?
不需要。Android 无需 USB 驱动;提示时允许 FlySpark 使用设备。
FlySpark 能修 Windows 驱动吗?
不能。USB 与 DFU 诊断在 Android。Windows 请用 ImpulseRC 或 Zadig。
飞控上电但连不上?
常见为充电线;或处于 bootloader、缺驱动/权限。
刷机后 Betaflight 连不上?
可能仍在 bootloader。拔插 USB,不按 BOOT。
如何进 DFU?
插 USB 时按住 BOOT,或 Betaflight CLI 输入 bl(INAV 为 dfu)。FlySpark 刷机工具可代发。
CP2102、CH340 适配器要驱动吗?
Android 上 FlySpark 不需要。电脑上部分系统需要芯片厂商驱动。
USB 诊断在 iPhone 可用吗?
不可用。iPhone 应用无法像 Android 那样枚举 USB 飞控;浏览器为演示。
Connect 页 Hidden 含义?
FlySpark 未识别设备 ID 因而隐藏。可开 Show all devices 再试。
电台显示为游戏手柄?
摇杆模式。重插并选 USB Serial (VCP) 或 USB Storage。
DFU 会永久变砖吗?
极少。STM32 ROM bootloader 不可擦,按 BOOT 通常可再进 DFU。读保护板需电脑工具先清除。
参考
来源
本页背景事实所依据的官方文档。
- USB FlashingBetaflight · betaflight.com
- Firmware InstallationBetaflight · betaflight.com
- Zadig - USB driver installation made easyAkeo Consulting · zadig.akeo.ie
- Firmware Flasher TabBetaflight · betaflight.com
- USB host overviewAndroid Developers · developer.android.com





