MeshCore 入门

固件烧录
方法 1:通过 Web Flasher
使用 USB 线将设备连接到电脑。请确保数据线支持数据传输。
请在数据传输过程中保持 USB 线连接,否则设备可能会损坏。
在 Community Firmware 分组中选择 Seeed Studio Wio Tracker L1 Pro。
![]()
选择 Companion Bluetooth。烧录了 Bluetooth companion 固件的设备可以连接到 APP。如果你想烧录其他固件,请点击这里查看教程。
![]()
擦除 Flash
点击 Enter DFU Mode,选择名为 "L1 Pro" 或 "TinyUSB serial" 的串口。然后点击 Erase Flash 并选择串口。
![]()
如果你点击了 Erase Flash 但没有响应,请再次点击 Enter DFU,然后再点击 Erase Flash,以确保已成功进入 DFU 模式。
如果你看到 "Flashing erase firmware:100%",说明设备已成功擦除。
![]()
烧录固件
点击 Enter DFU Mode,选择名为 "L1 Pro" 或 "TinyUSB" serial 的串口。然后点击 Flash 并选择串口。
![]()
如果你点击了 Flash 但没有响应,请再次点击 Enter DFU,然后再点击 Flash,以确保已成功进入 DFU 模式。
当进度条完全填满时,表示 Flash 已完成。然后设备会自动重启。
![]()
方法 2:拖放烧录
使用 USB 线将设备连接到电脑。请确保数据线支持数据传输。
请在数据传输过程中保持 USB 线连接,否则设备可能会损坏。
在 Community Firmware 分组中选择 Seeed Studio Wio Tracker L1 Pro。
![]()
选择 Companion Bluetooth。烧录了 Bluetooth companion 固件的设备可以连接到 APP。如果你想烧录其他固件,请点击这里查看教程。
![]()
擦除 Flash
下载 UF2 文件。
![]()
双击 RST 按钮手动进入 DFU 模式。大约 10~15 秒后,你会看到一个名为 TRACKER L1 的磁盘弹出。
![]()
将下载好的 UF2 文件拖到弹出的磁盘中。
![]()
固件成功烧录后,该磁盘会消失。此时设备中没有固件,所以设备 不会 自动重启。
烧录固件
选择最新的固件版本。
![]()
下载 UF2 文件。
![]()
双击 RST 按钮手动进入 DFU 模式。大约 10~15 秒后,你会看到一个名为 TRACKER L1 的磁盘弹出。
![]()
将下载好的 UF2 文件拖到弹出的磁盘中。
![]()
固件成功烧录后,该磁盘会消失。此时设备中没有固件,所以设备不会自动重启。
配置
启动设备
将电源开关向上拨动以开启设备。
如果按下按钮时设备没有响应,请先为其充电。不要使用快充充电器。
获取 APP
从 Google Store 或 Apple Store 下载。或者点击这里获取 Meshcore APP。
![]()
通过 App 连接
点击 Connect 并选择目标设备。默认设备 ID 为 Meshcore-MAC Address。MAC 地址可以在设备底部的标签上看到。
![]()
输入设备屏幕上显示的 PIN 码,然后点击 Pair 以连接设备。
如果连接失败,请打开手机的蓝牙列表并 forget 或 Unpair 该设备,然后再尝试重新连接。
![]()
通过 Web 界面连接(BLE)
- 打开 MeshCore Web App 并点击 Settings 图标。
![]()
- 选择 BLE 选项卡,然后点击 Scan Now。
![]()
- 在系统蓝牙弹窗中选择你的设备(例如 MeshCore-xxxxxx),然后点击 Pair。
![]()
- 按提示输入设备屏幕上显示的蓝牙密码,然后点击 OK。此密码不是
123456。
![]()
- 等待状态变为已连接,并在 MeshCore 界面中看到你的节点。
![]()
配置 LoRa
为了开始通过 mesh 通信,你必须设置所在区域。该设置控制设备使用的频率范围,应根据你所在的地区进行设置。
![]()
然后重启设备,否则配置不会生效。
区域列表
| Region Code | Description | Frequency Range (MHz) | Duty Cycle (%) | Power Limit (dBm) |
|---|---|---|---|---|
| UNSET | Unset | N/A | N/A | N/A |
| US | United States | 902.0 - 928.0 | 100 | 30 |
| EU_868 | European Union 868 MHz | 869.4 - 869.65 | 10 | 27 |
现在你已经在设备上设置了 LoRa 区域,可以继续配置任意LoRa 参数以满足你的需求。
配置 GPS
如果你想使用 GPS,请将其设置为启用。
你可以在 APP 的 Position Settings 中启用 GPS。或者你也可以进入设备的 GPS 页面,通过按下四向摇杆来打开或关闭 GPS。
![]()
配置蜂鸣器
点击用户按钮四次来控制蜂鸣器的开启或关闭。
![]()
配置传感器
Wio Tracker L1 出厂时预装了 MeshCore 固件 1.12。通过内置 Grove 接口支持 Grove 传感器的功能是在固件 1.13 中加入的;最新版本为 1.16。
Grove 传感器需要固件 1.13 或更高版本。如果你的设备仍然运行出厂固件 1.12,请按照 Method1 via Web Flasher 操作,并选择最新版本。
从 1.13 开始,这就为环境传感器的直接集成打开了大门——温度、湿度、空气质量等——都可以通过 L1 内置的 Grove 接口实现,无需焊接或额外硬件。将兼容的 Grove 传感器插入该接口后,它会被自动识别。
消息传输
如果你有两台受支持的设备,并且你附近没有太多 MeshCore 用户,可以将两台设备都刷写为 BLE Companion 固件,这样你就可以使用这些设备与附近的朋友和家人进行通信。
![]()
广播(Advert)
MeshCore 允许你手动广播你的姓名、位置和公钥,这些信息也会被签名以防止伪造。当你点击 advert 按钮时,它会通过 LoRa 广播这些数据。MeshCore 将此称为 Advert。Advert 有两种方式:“zero hop”和“flood”。
- Zero hop 表示你的 advert 只会广播给能听到它的设备,仅此而已。
- Flooded 表示它会被广播出去,然后由所有听到它的中继器重复转发。
你可以在 APP 上发送 advert,也可以直接在设备的 advert 页面上发送。
![]()
公共消息
在你配置好 LoRa 之后,你可以在主信道中发送消息。同一频段内的所有附近用户都能收到。
私密消息
只有当两台设备都收到了对方的 advert 时,它们之间才会建立连接。
常见问题
设备变砖与 Bootloader 恢复
说明:
设备没有响应,没有 LED 指示灯,无法与你的应用配对。如果你在刷写自定义固件后发现设备完全失效,你也可以尝试重新安装 bootloader。
Bootloader 通过 USB 串口(Serial DFU)使用 adafruit-nrfutil 进行恢复。
在刷写过程中,请保持线缆连接稳定,并且 不要 断开连接——即使串口号发生变化也不要断开。
步骤 1:准备工作
- 一台 Wio Tracker L1 系列设备(L1 / L1 Pro)
- 一根已知良好的 USB 数据线(不是仅充电线)
- 一台安装了 Python 3 和 pip 的 Windows、macOS 或 Linux 电脑
- Bootloader 压缩包:点击此处下载 Bootloader —— 不要解压 ZIP;
adafruit-nrfutil会直接使用它
步骤 2:安装 adafruit-nrfutil
- Windows
- macOS
- Linux
检查 Python 3 和 pip 是否可用(如果缺少 pip,请先运行 python -m ensurepip --upgrade):
python --version
python -m pip --version

然后进行安装并验证(本指南测试使用的版本为 0.5.3.post16):
python -m pip install --user adafruit-nrfutil
adafruit-nrfutil version

python3 --version
python3 -m pip install --user adafruit-nrfutil
adafruit-nrfutil version
如果缺少 pip,请先运行 python3 -m ensurepip --upgrade。
使用 pipx 安装 adafruit-nrfutil:
sudo apt install pipx
pipx install adafruit-nrfutil
pipx ensurepath
在 Fedora 上,使用 sudo dnf install pipx 而不是 apt。重新打开终端,然后进行验证:
adafruit-nrfutil version
请始终使用 adafruit-nrfutil version 检查版本。不要使用 adafruit-nrfutil --version。
步骤 3:检查串口
记下设备的串口——下面的示例会因电脑不同而有所差异:
- Windows
- macOS
- Linux
打开 Device Manager → Ports (COM & LPT),例如:
USB Serial Device (COM43)

ls /dev/cu.*
设备会显示为 /dev/cu.usbmodemXXXX。
ls /dev/ttyACM*
设备通常显示为 /dev/ttyACM0;如果没有列出,也可以尝试 ls /dev/ttyUSB*。
步骤 4:刷写 bootloader
将端口替换为你在步骤 3 中找到的端口:
- Windows
- macOS
- Linux
adafruit-nrfutil --verbose dfu serial --package "wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip" -p COM43 -b 115200 --singlebank --touch 1200
如果 ZIP 不在终端当前文件夹中,请将其完整路径传给 --package,例如 "C:\path\to\wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip"。
adafruit-nrfutil --verbose dfu serial --package "wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip" -p /dev/cu.usbmodemXXXX -b 115200 --singlebank --touch 1200
adafruit-nrfutil --verbose dfu serial --package "wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip" -p /dev/ttyACM0 -b 115200 --singlebank --touch 1200
步骤 5:处理串口变化
--touch 1200 会将设备重启到 DFU 模式,因此串口通常会发生变化,第一次命令可能会以类似下面的回溯信息结束:
Touched serial port COM43
...
FileNotFoundError: could not open port 'COM43'
这并不是失败——设备已经在新的端口上进入 DFU 模式。例如,在测试的 Windows 电脑上,它从 COM43 变为 COM45:

保持 USB 线缆连接。 找到新的端口(刷新 Device Manager → Ports (COM & LPT),或重新运行 ls /dev/cu.* / ls /dev/ttyACM*),然后在新端口上再次刷写,这一次不要使用 --touch 1200:
- Windows
- macOS
- Linux
adafruit-nrfutil --verbose dfu serial --package "wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip" -p COM45 -b 115200 --singlebank
adafruit-nrfutil --verbose dfu serial --package "wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip" -p /dev/cu.usbmodemXXXX -b 115200 --singlebank
adafruit-nrfutil --verbose dfu serial --package "wio_tracker_l1_bootloader-0.10.0_s140_7.3.0.zip" -p /dev/ttyACM0 -b 115200 --singlebank
步骤 6:确认结果
当输出以 Device programmed. 结尾时,说明刷写成功:

之后,电脑上会出现一个 UF2 盘(截图来自测试用的 Windows 电脑)。其卷标会随 bootloader 构建版本而变化——测试设备显示为 XIAO-BOOT——这并不是通过/失败的判断标准;不要根据驱动器名称或 INFO_UF2.TXT 来判断结果:

步骤 7:重新安装应用固件
恢复 bootloader 并不会重新安装应用固件——在你再次刷写之前,设备仍然没有可用的固件。
完成上述步骤后,请按照 Firmware Flashing 操作来刷写应用固件。
故障排查
- 安装后无法识别
adafruit-nrfutil:将 Python 用户脚本目录添加到 PATH 中(Windows 为Scripts,macOS 为用户主目录下的bin);在 Linux 上,执行pipx ensurepath后请重新打开终端。 - 端口忙 / 访问被拒绝:关闭串口监视器、Web Flasher 标签页、Arduino IDE 或任何占用该端口的程序。
- 在
Touched serial port ...之后出现FileNotFoundError: could not open port ...:设备已经在新的端口上进入 DFU 模式——请参考步骤 5。 - 无法进入 DFU 模式:请参阅 Unable to enter DFU & Entering DFU Mode Manually。
手动 DFU 恢复
如果 --touch 1200 无法让设备进入 DFU 模式(例如固件完全无响应),请手动进入:连接设备,双击按下 Reset(黄色 LED 常亮),像步骤 3 那样找到 DFU 串口,然后在该串口上运行步骤 5 的命令,但不要加 --touch 1200。成功效果与步骤 6 相同。
无法进入 DFU 与手动进入 DFU 模式
将设备连接到电脑并双击按下 Reset 按钮——黄色 LED 将保持常亮,并且在电脑上会出现一个 DFU 串口。
要在此模式下烧录 bootloader,请参考 设备变砖与 Bootloader 恢复,但跳过 --touch 1200——设备已经处于 DFU 模式。
退出 DFU 模式
单击 Reset 按钮一次即可退出 DFU 模式。
设备自动关机
描述
- 设备开机后,过一段时间会自动关机或重启。
- 串口日志运行一段时间后停止。
这可能是由于在设备处于以下状态时,手动强制重启或关机导致的:尚未完成消息传输过程、正在配置中……
故障排查
Flash Erase 固件
恢复出厂设置
如果你想恢复到默认设置,可以执行恢复出厂设置。你可以通过两种方法进行恢复出厂设置。
-
Flash Erase 固件
-
在应用中点击
Factory Reset按钮。设备将自动以出厂配置重启。
信号质量
-
SNR 反映通信链路的质量。正常设备通常在 -7 dB 以上工作。SNR 低于 -10 dB 的设备表示性能较差。
-
RSSI 由设备及其周围环境共同决定。正常设备通常在 -110 dBm 以上工作。RSSI 低于 -115 dBm 的设备被认为性能较差。
为获得最佳信号效果,请在开阔、无遮挡且干扰最小的区域使用设备。
兼容天线
如果你需要为 L1 Pro 更换天线,点击这里获取一个。
资源
- Bootloader(串口 DFU 包)
- (V1) 3D 打印参考文件
- (V2 新四向摇杆) 3D 打印参考文件
- L1 外壳设计挑战赛
- 外形轮廓文件
- TELEC 认证
- FCC 认证
- CE 认证
- 功耗测试与电池寿命计算