开始使用 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:打开网页
点击这里 进入网页。
![]()
步骤 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。否则,定位可能会不准确。

按键
| 按键操作 | 说明 |
|---|---|
| 长按 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 显示的串口访问用户组,并按照你的发行版说明进行操作。
步骤 3:烧录 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
如果执行此命令后串口发生变化,请按照下面的步骤 4 操作。
- macOS 平台:
adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader.zip -p /dev/tty.SLAB_USBtoUART -b 115200 --singlebank --touch 1200
- Linux 平台:
如果你在步骤 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。
步骤 4:处理串口变化
--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
请使用你的实际端口名称。如果端口无法打开,请按照步骤 2 中的说明检查其权限,并确保没有其他应用正在使用它。如果没有出现 DFU 端口,请双击 RST 并再次检查,然后再重试。
步骤 5:确认结果并重新安装应用固件
等待传输完成,并且工具打印出:
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。