开始使用 Meshtastic
当设备处于以下任一状态时,请不要手动重启或关闭电源。否则,设备可能会变砖。
- 尚未完成消息传输过程
- 正在配置中
入门指南
在正式部署之前,请先对节点进行测试和配置。
烧录固件
请不要使用 NRF-OTA 更新固件,否则可能导致设备完全无响应。
在烧录固件之前,请先执行擦除固件步骤!
访问 Meshtastic Web Flasher。选择 Seeed SenseCAP Solar Node 作为目标设备。

擦除固件
点击 trash 图标。
![]()
下载并拷贝擦除固件。

点击 Enter DFU Mode,选择并连接名为 XIAO-xxx 的串口,此时应出现一个名为 XIAO-xxx 的磁盘。将擦除固件拷贝到该磁盘中。

此过程可能需要一些时间。请等待 "XIAO-XXX" 磁盘消失。
烧录应用固件
选择你需要的固件版本,点击 flash。

下载 UF2 文件并进入 DFU 模式。将 UF2 文件拖入 DFU 磁盘。文件拷贝完成并设备重启后,固件即会被烧录。
安装电池和 GPS 模块(可选)
当你需要安装或更换电池时,请使用 button-top 18650(3.6 V)电池。

P1-Pro 版本内置电池和 GPS 模块。对于 P1 版本,如有需要,用户需要手动安装电池和 GPS 模块。
- 步骤 1:卸下所有螺丝并取下外壳。

- 步骤 2:安装电池和 GPS 模块。


- 步骤 3:重新装回外壳。

请确保外壳安装到位且螺丝拧紧,以保持设备的防水性能。
启动设备
设备在首次使用前需要通过连接 USB 线进行激活。如果蓝色 Mesh 指示灯闪烁,则表示设备已成功开机,如下方视频所示:
如果按下按键后设备没有反应,请先为其充电。不要使用快充充电器。
通过 App 连接
- iOS App
- Android App
- 在蓝牙面板中选择目标设备。

- 输入配对码(默认配对码为
123456),然后点击OK连接设备。

- 点击
+并选择目标设备。

- 输入配对码(默认配对码为
123456),然后点击OK连接设备。

通过网页连接
如果你希望在网页客户端中发送文本消息并与其他节点通信,现在可以将设备连接到 Meshtastic Web Client。
步骤 1:打开网页
Click here 访问该网页。
![]()
步骤 2:添加新设备
点击 "+ New Connection"。
![]()
有两种连接方式,你可以选择自己偏好的方式。
方法 1:通过蓝牙
选择蓝牙方式。在弹出的窗口中选择设备 ID。
![]()
方法 2:通过串口
选择串口方式。打开设备管理器查看设备连接到哪个端口,然后在弹出的窗口中选择该端口。
![]()
你的设备会显示在列表中。点击进行连接。如果连接成功,你可以在网页上直接看到设备状态。
![]()
配置 LoRa
为了开始在 Mesh 网络中通信,你必须设置所在区域。该设置控制设备使用的频率范围,应根据你所在的地区进行设置。
- iOS App
- Android App


区域列表
| Region Code | Description | Frequency Range (MHz) | Duty Cycle (%) | Power Limit (dBm) |
|---|---|---|---|---|
| UNSET | 未设置 | N/A | N/A | N/A |
| US | 美国 | 902.0 - 928.0 | 100 | 30 |
| EU_868 | 欧盟 868MHz | 869.4 - 869.65 | 10 | 27 |
更多完整列表请参考 LoRa Region by Country。
EU_868 必须遵守每小时 10% 的占空比限制,以滚动 1 小时为周期、每分钟计算一次。当达到该限制时,你的设备将停止发射,直到再次被允许发射为止。
现在你已经在设备上设置了 LoRa 区域,可以继续配置任意适合你需求的 LoRa Configs。
配置 GPS
请启用 GPS。你可以调整更新间隔和广播间隔,以获取更加实时的位置数据。

对于 iOS,请打开 Accurate Location。否则定位可能不准确。

按键
| Button Action | Description |
|---|---|
| 长按 PWR 3 秒 | 开机 |
| 快速按 PWR 两次 | 更新节点/位置信息 |
| 快速按 PWR 三次 | 打开/关闭 GPS |
| 长按 PWR 5 秒 | 关机 |
| 快速按 RST 两次 | 手动进入 DFU |
安装
由于设备将长时间在户外使用,请避免将面板水平安装。建议采用倾斜或斜向安装,以防止积水。此外,请确保所有螺丝已牢固拧紧且外壳安装到位。为了进一步提升防水性能,你也可以考虑额外进行密封处理。
- 部件清单

分步安装指南
- 步骤 1:使用垫圈和螺丝将部件 1 固定在设备底部。
- 步骤 2:使用螺丝连接万向节(部件 2)和支架(部件 3)。
- 步骤 3:连接 RF 线缆(部件 4)和天线(部件 5)。
- 步骤 4:在合适的位置安装箍环。
- 步骤 5:连接万向节支架。
- 步骤 6:松开螺丝,调整万向节到合适的位置,然后拧紧螺丝。
- 步骤 7:将天线连接到设备。
完整安装指南
- 你可以通过一个视频完成整个安装和初始化过程。
为 Solar Node 添加传感器(可选)
- 你可以按照此视频安装你的传感器。
- 以下传感器已验证与设备上的 Grove 接口兼容。
| 传感器类型 | 传感器型号 | |
|---|---|---|
| 环境传感器 | 气压 | BMP085 |
| 温度 | MCP9808、PCT2075 | |
| 温度和湿度 | SHT31/SHTC3/SHT4X、AHT10 | |
| 温度、湿度和气压 | BME280 | |
| 其他 | 心率和血氧饱和度(SpO₂) | MAX30102 |
| I2C 键盘 | CardKB | |
升级天线(可选)
- 你可以通过观看此视频,将天线更换为玻璃钢天线。
如果你需要增益更高的天线,我们推荐 860-930MHz 3dBi fiberglass 天线和 902-928MHz 5.8dBi fiberglass 天线。
常见问题
启动循环
- 原因
这通常是由固件烧录失败引起的。烧录固件时,请保持连接稳定。
- 故障排查
点击此处 重新烧录固件。
设备变砖
描述
设备无响应,LED 不亮,且无法与你的应用配对。
1)设备仍然可以进入 DFU 模式,则尝试烧录 bootloader。
烧录 Bootloader
在烧录 bootloader 时,请确保线缆连接稳定,并且在烧录过程中不要断开连接。
步骤 1:安装 Adafruit-nrfutil
对于 Windows 用户,按下 "Win" 键和 "R" 键,然后在弹出的窗口中输入 "cmd" 并按下 "Enter"。这将打开命令行。
对于 Mac 用户,按下 "Command" 键和 "Space" 键打开 Spotlight。然后输入 "terminal" 并按下 "Return"。这将打开命令行。
对于 Linux 用户,打开终端,并使用下面的 Linux 选项卡通过 pipx 安装该工具。
前置条件
在命令行中检查 Python 和 pip 是否安装成功。在 Linux 上,使用 python3 而不是 python 进行这些检查。
python --version
python -m pip --version
然后应该会出现 "Python xxx" 和 "pip xxx"。如果没有,请尝试重新安装 Python。
- 通过 PyPI 安装
- 通过源码安装
- Linux
对于 Windows 和 macOS,使用以下命令安装最新版本。Linux 用户应使用 Linux 选项卡。
pip3 install --user adafruit-nrfutil
检查安装路径:
python -m pip show adafruit-nrfutil
这是安装位置:

对于 Windows 用户,你可能需要手动添加该路径。复制上一步显示的安装位置,然后按如下方式添加:

如果你在通过 PyPI 安装时遇到问题,或者想要修改该工具,请使用此方法。首先克隆此仓库并进入其文件夹。
git clone https://github.com/adafruit/Adafruit_nRF52_nrfutil.git
cd Adafruit_nRF52_nrfutil
注意:以下命令使用 python3;然而,如果你在 Windows 上,可能需要将其改为 python,因为 Windows 上的 Python 3.x 安装仍然使用 python.exe 这个名称。
要在你的主目录用户空间中安装:
pip3 install -r requirements.txt
python3 setup.py install
如果在运行 pip3 install 时遇到权限错误,说明你的 pip3 版本较旧或被设置为尝试安装到系统目录。在这种情况下,请使用 --user 标志:
pip3 install -r --user requirements.txt
python3 setup.py install
如果你想安装到系统目录(通常不推荐):
sudo pip3 install -r requirements.txt
sudo python3 setup.py install
要生成该工具的自包含可执行二进制文件(Windows 和 macOS),运行以下命令:
pip3 install pyinstaller
cd Adafruit_nRF52_nrfutil
pip3 install -r requirements.txt
cd Adafruit_nRF52_nrfutil\nordicsemi
pyinstaller __main__.py --onefile --clean --name adafruit-nrfutil
你将在 Adafruit_nRF52_nrfutil\nordicsemi\dist\adafruit-nrfutil 中找到可执行文件(如果你在 Windows 上,则带有 .exe)。
为了方便使用,可以将其复制或移动到其他位置,例如 %PATH% 中的某个目录。
在 Ubuntu/Debian 上,使用 pipx 安装 adafruit-nrfutil。它将该工具与系统 Python 环境隔离,并避免出现 externally-managed-environment 错误:
sudo apt update
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。如果提示找不到命令,请检查 pipx ensurepath 是否完成,并重新打开终端。
步骤 2:检查你的端口号
将设备连接到电脑,并检查端口号。
以 Windows 用户为例:

以 Mac 用户为例:

对于 Linux 用户:
使用 USB 数据线连接 Solar Node P1 / P1-Pro。对比连接前后的以下输出,以识别其串口:
ls /dev/ttyACM*
设备通常显示为 /dev/ttyACM0;如果没有列出任何设备,也可以尝试 ls /dev/ttyUSB*。要手动进入 DFU 模式,快速双击设备的 RST 按钮,然后再次检查端口。使用当前的 DFU 端口进行烧录。
检查端口权限,将 /dev/ttyACM0 替换为你的实际端口:
ls -l /dev/ttyACM0
在 Ubuntu/Debian 上,串口通常属于 dialout 组。如果你遇到 Permission denied,并且端口属于 dialout,请将你的用户添加到该用户组:
sudo usermod -aG dialout "$USER"
注销并重新登录以使更改生效。在其他发行版上,请使用 ls -l 显示的串口访问用户组,并按照对应发行版的说明进行操作。
Step3: 烧录 Bootloader
在终端或命令提示符中,进入你下载 bootloader 压缩包的目录,并执行以下命令,将端口替换为你设备的正确端口:
保持 xiao_nrf52840_ble_bootloader.zip 为 ZIP 文件,不要解压。关闭所有连接到设备的串口监视器或浏览器烧录工具。如果在双击 RST 后设备已经处于 DFU 模式,则省略 --touch 1200,并使用其当前 DFU 端口。
- Windows 平台:
adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader.zip -p COMXX -b 115200 --singlebank --touch 1200
请将 COMXX 更改为你的 COM 端口号。例如,如果你的设备在 COM6 上,请将命令更改为:
adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader.zip -p COM6 -b 115200 --singlebank --touch 1200
如果执行此命令后串口发生变化,请继续执行下面的 Step 4。
- macOS 平台:
adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader.zip -p /dev/tty.SLAB_USBtoUART -b 115200 --singlebank --touch 1200
- Linux 平台:
如果你在 Step 2 中手动进入了 DFU 模式,请在运行此命令时不要带 --touch 1200。将 /dev/ttyACM0 替换为你当前的 DFU 端口:
adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader.zip -p /dev/ttyACM0 -b 115200 --singlebank
如果设备仍在运行应用固件并且有串口,你可以追加 --touch 1200 来请求进入 DFU 模式。如果没有响应,请双击 RST,重新确认 DFU 端口,然后在命令中不使用 --touch 1200。
Step4: 处理串口变化
--touch 1200 通过以 1200 波特率打开并关闭串口来请求 DFU 模式。操作系统随后可能会分配一个不同的端口。如果输出中显示 Touched serial port,随后又出现找不到端口的错误,请检查是否出现了新的 DFU 端口。仅凭这个错误并不能确认烧录成功,也不意味着设备已损坏。
保持 USB 线缆连接。在 Linux 上,再次运行 ls /dev/ttyACM*(或在适用时运行 ls /dev/ttyUSB*)。在 Windows 上,刷新设备管理器;在 macOS 上,检查 ls /dev/cu.*。使用新的 DFU 端口重试,并且省略 --touch 1200。例如,如果新的 Linux 端口是 /dev/ttyACM1:
adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader.zip -p /dev/ttyACM1 -b 115200 --singlebank
请使用你的实际端口名称。如果端口无法打开,请按照 Step 2 中的说明检查其权限,并确保没有其他应用正在使用它。如果没有出现 DFU 端口,请双击 RST 并再次检查,然后再重试。
Step5: 确认结果并重新安装应用固件
等待传输完成,并在工具中看到如下输出:
Device programmed.
此消息表明 bootloader 传输已成功完成。请在传输过程中保持线缆连接。仅凭端口变化或出现一个 USB 驱动器,并不能确认烧录成功。

烧录 bootloader 并不会重新安装 Meshtastic 应用固件。传输成功后,请按照 Flash Firmware 的说明安装应用固件,然后再使用设备。
无法在主信道上通信
如果设备无法与附近节点通信或发送消息,首先检查 LoRa 区域和调制解调器预设是否与周围节点一致。你还应检查默认的 PSK 是否被更改。在主信道上使用不同的 PSK 会导致设备无法与该信道上的其他节点通信。
最简单的排查方式是通过手机应用。打开应用,连接到目标设备,然后进入 Settings -> Channels。选择主信道并检查 PSK 值。如果它与周围节点不同,请将其更新为相同的 PSK,并保存信道设置。
- IOS 应用
- Android 应用
![]()
![]()
解决方案
如果你不确定修改了哪些设置,请按照 Factory Reset 指南将设备恢复到默认设置。如果只更改了 PSK,请将其恢复为 AQ==。
设备自动关机
描述
- 设备开机后,过一段时间会自动关机或重启。
- 串口日志运行一段时间后停止。
这可能是因为在以下状态之一时,手动强制重启或关闭设备导致的:消息发送过程尚未完成,或设备正在被配置。
故障排查
点击此处 执行 flash 擦除,然后重新烧录最新固件。
恢复出厂设置
如果你想恢复默认设置,可以执行恢复出厂设置。恢复出厂设置有两种方法。
-
点击此处 执行 flash 擦除,然后重新烧录最新固件。
-
在应用中点击
Factory Reset按钮。设备将自动以出厂配置重启。
私信发送失败
NodeDB 重置
NodeDB 是本地数据库,用于存储当前 Mesh 网络中已发现节点的信息。如果你遇到无法与某个节点通信的情况,可能是因为你的 NodeDB 中保存了该节点的过时信息,你需要对其进行更新。
NodeDB 存储的详细信息包括:
- 节点 ID
- 用户名
- 位置信息
- 信号信息(SNR)
- 最后一次看到的时间
打开应用并连接到目标设备。依次进入 Settings->Device->Device Config->Reset NodeDB。

交换用户信息
每个节点都会周期性地发送自己的节点信息,使 Mesh 中的其他节点能够“看到”和“识别”它。两个节点需要互相交换各自的节点信息,才能彼此通信。如果你无法与列表中的某个节点收发私信,可以在应用中手动提示它们交换信息。

重新生成私钥
两个节点需要彼此知道对方的私钥,才能进行通信。如果某个节点在私信传输中一直失败,请尝试为其重新生成私钥。

重启故障设备以使配置生效。
在重新生成密钥后,其他设备需要重新与该节点建立连接。因此,最好在其他设备的节点列表中删除该节点。
请注意以下选项之间的区别:
- Reset NodeDB:只清除节点数据库。
- Factory Reset:将设备恢复到出厂设置,并移除额外的配置信息。
功耗
功耗主要取决于数据传输频率和 GPS 更新速率等因素。 下列数据仅供参考;实际功耗会因真实使用环境而有所不同。
- 关机休眠模式功耗
| 描述 | 功耗 |
|---|---|
| GPS_LED 工作电流 | 1.02 mA |
| 上电但未激活 | 56.195 μA |
| 上电且已激活 | 611 μA |
示例:
| 电池容量 | 电池寿命 |
|---|---|
| 3350 | 136.8 |
| 12000 | 490.2 |
- 工作模式功耗
| 模式 | 电流 |
|---|---|
| 静态电流 | 10.65 mA |
| EU868 发射电流 | 157.74 mA |
| US915 发射电流 | 205.22 mA |
| GPS 工作电流 | 50 mA |
| GPS_LED 工作电流 | 1.02 mA |
信号质量
-
SNR 反映通信链路的质量。正常设备通常在 -7 dB 以上工作。SNR 低于 -10 dB 的设备表明性能较差。
-
RSSI 由设备及其周围环境共同决定。正常设备通常工作在 -110 dBm 以上。RSSI 低于 -115 dBm 的设备被认为性能较差。
为获得最佳信号性能,请在开阔、无遮挡且干扰最小的环境中使用设备。
充电电流

Xiao nRF-52840 Plus 的最大充电电流为 200 mA。CN3165 充电管理芯片支持 0.99 A。因此,最大充电电流为 1 A。