docs: 创建配网使用指南

新增 docs/配网使用指南.md,包含:
- 配网流程说明(首次配置、扫描、配网、绑定)
- 分组管理操作(添加/移除设备到组)
- 高级功能(VENDOR 命令、停止配网)
- 组地址规划建议
- 配网状态事件说明
- 故障排查指南
- 服务列表参考
This commit is contained in:
impressionyang 2026-04-16 12:06:12 +08:00
parent d21e7f1b3f
commit fa7a03b9eb

262
docs/配网使用指南.md Normal file
View File

@ -0,0 +1,262 @@
# SigMesh Gateway 配网使用指南
## 概述
本指南介绍如何使用 SigMesh Gateway 集成的配网功能,将 Bluetooth Mesh 设备添加到网络中。
## 配网流程
### 第一步:首次配置
添加集成时,需要配置以下配网参数:
1. **串口配置**
- 选择串口设备(如 `/dev/ttyUSB0`
- 设置波特率(默认 115200
2. **配网参数**(首次使用需要)
- **Network Key**: 16 字节网络密钥32 字符十六进制)
- **App Key**: 16 字节应用密钥32 字符十六进制)
- **Network ID**: 2 字节网络 ID4 字符十六进制)
- **IV Index**: 4 字节 IV 索引(整数)
- **组地址起始值**: 组地址范围起始(默认 0xC000
> **注意**: 如果网关已经配置过,可以使用默认值(全 0
### 第二步:扫描设备
配置完成后,通过以下方式开始扫描设备:
**方法 1: 通过 Options Flow推荐**
1. 进入 HA 设置 → 设备与服务
2. 找到 SigMesh Gateway 集成
3. 点击"配置"
4. 选择"开始扫描设备"
**方法 2: 通过服务调用**
```yaml
service: sigmesh_gateway.start_scan
data: {}
```
### 第三步:配网设备
扫描到设备后,可以通过服务调用进行配网:
```yaml
service: sigmesh_gateway.start_provisioning
data:
device_address: "001A" # 设备地址16 进制)
```
配网过程:
1. 发送配网启动命令
2. 等待设备加入(超时时间 180 秒)
3. 配网完成后自动绑定 App Key
### 第四步:绑定 App Key可选
如果需要手动绑定 App Key
```yaml
service: sigmesh_gateway.bind_appkey
data:
device_address: "001A"
element_address: 0
```
## 分组管理
### 添加设备到组
将设备添加到组地址,实现组控制:
**SIG 标准分组**:
```yaml
service: sigmesh_gateway.add_to_group
data:
target_address: "001A" # 目标设备地址
element_address: 0 # 元素地址
group_address: "C001" # 组地址16 进制)
model_id: 4352 # Model ID (0x1100 传感器)
is_sig: true # SIG 标准分组
```
**VENDOR 自定义分组**:
```yaml
service: sigmesh_gateway.add_to_group
data:
target_address: "001A"
element_address: 0
group_address: "C001"
model_id: 4354 # VENDOR Model ID
is_sig: false
```
### 从组中移除设备
```yaml
service: sigmesh_gateway.remove_from_group
data:
target_address: "001A"
element_address: 0
group_address: "C001"
model_id: 4352
is_sig: true
```
## 高级功能
### 发送 VENDOR 命令
发送自定义 VENDOR 命令到设备:
```yaml
service: sigmesh_gateway.send_vendor_command
data:
target_address: "001A"
element_address: 0
opcode: "1102" # VENDOR 操作码
payload: "0000" # 数据负载16 进制)
```
### 停止配网
```yaml
service: sigmesh_gateway.stop_provisioning
data: {}
```
## 组地址规划
### 推荐组地址范围
| 用途 | 地址范围 | 说明 |
|------|----------|------|
| 灯光组 | 0xC001 - 0xC0FF | 照明设备分组 |
| 传感器组 | 0xC100 - 0xC1FF | 传感器分组 |
| 开关组 | 0xC200 - 0xC2FF | 开关设备分组 |
### 组地址配置示例
假设有一个灯光场景:
- 客厅主灯(设备地址 0001
- 客厅灯带(设备地址 0002
- 餐厅主灯(设备地址 0003
将客厅灯具分到一组:
```yaml
# 客厅主灯加入组 0xC001
service: sigmesh_gateway.add_to_group
data:
target_address: "0001"
group_address: "C001"
model_id: 4872 # 0x1308 灯光模型
# 客厅灯带加入组 0xC001
service: sigmesh_gateway.add_to_group
data:
target_address: "0002"
group_address: "C001"
model_id: 4872
```
之后可以通过组地址 0xC001 同时控制客厅所有灯具。
## 配网状态
配网过程中会触发 `sigmesh_gateway_prov_state` 事件,包含以下状态:
| 状态 | 说明 |
|------|------|
| idle | 空闲,无配网操作 |
| scanning | 扫描设备中 |
| prov_starting | 配网启动中 |
| prov_in_progress | 配网进行中 |
| prov_completed | 配网完成 |
| prov_failed | 配网失败 |
| timeout | 配网超时 |
监听配网状态事件:
```yaml
automation:
- alias: "配网状态通知"
trigger:
platform: event
event_type: sigmesh_gateway_prov_state
action:
- service: notify.notify
data:
message: "配网状态:{{ trigger.event.data.state }}"
```
## 故障排查
### 问题 1: 配网超时
**现象**: 配网状态变为 timeout
**可能原因**:
- 设备未进入配网模式
- 网络密钥配置不正确
- 信号强度不足
**解决方法**:
1. 确认设备已进入配网模式(参考设备说明书)
2. 检查 Network Key 配置
3. 将网关靠近设备
### 问题 2: 设备无法加入组
**现象**: 调用 add_to_group 后设备无响应
**可能原因**:
- 设备未完成配网
- 设备不支持该 Model
- 组地址超出范围
**解决方法**:
1. 确认设备已完成配网
2. 检查 model_id 是否正确
3. 使用 0xC000 以上的组地址
### 问题 3: 低功耗设备无法接收组消息
**现象**: 低功耗设备不响应组控制
**解决方法**:
将 Lightness Model 和 Vendor Model 分配到同一组:
```yaml
# 添加 Lightness Model 到组
service: sigmesh_gateway.add_to_group
data:
target_address: "0001"
group_address: "C001"
model_id: 4864 # 0x1300 LIGHT_LIGHTNESS_SERVER
is_sig: true
# 添加 Vendor Model 到同一组
service: sigmesh_gateway.add_to_group
data:
target_address: "0001"
group_address: "C001"
model_id: 4610 # VENDOR Model
is_sig: false
```
## 服务列表
| 服务名称 | 功能 |
|----------|------|
| `sigmesh_gateway.start_scan` | 开始扫描设备 |
| `sigmesh_gateway.stop_provisioning` | 停止配网 |
| `sigmesh_gateway.start_provisioning` | 开始配网指定设备 |
| `sigmesh_gateway.bind_appkey` | 绑定 App Key |
| `sigmesh_gateway.add_to_group` | 添加设备到组 |
| `sigmesh_gateway.remove_from_group` | 从组中移除设备 |
| `sigmesh_gateway.send_vendor_command` | 发送 VENDOR 命令 |
---
**文档版本**: 1.0
**最后更新**: 2026-04-16