参数配置协议说明
备注
- 适用网关型号:VG-L4GRF80
- 协议编写格式:json
- 更新说明
- 协议更新日期:2023年11月17日
- 适用固件版本:V2.3或更新版本
- 协议更新内容:
- 增加网关白名单操作
- 增加appId
说明: 协议由三部分组成,如下:
- method:包含指令的类型,指令的目标对象
- sys:指令的基本属性,包含指令来源对象,指令应答需求
- params:指令携带的参数或者信息,以列表的方式装载不同的数据
在线远程操作和离线usb连接操作指令一致,如果服务器的通讯协议为MQTT,则MQTT的发布和订阅主题为基于method
的值重新改造得来,格式:thing.\({device_id}.\).\({process}.\),比如:
目标网关设备的设备ID为01010101
- 获取设备信息时,发布的主题:
thing.01010101.gw.config.get
- 如果要得到设备上报上来的设备信息,则需要订阅主题:
thing.01010101.sv.config.push
- 接收心跳包,则需要订阅主题:
thing.01010101.sv.ping
- 回复心跳包,则需要发布主题:
thing.01010101.gw.pong
表 - 字段说明
序号 | 字段 | 类型 | 范围 | 说明 |
---|---|---|---|---|
1 | method | 字符串 | =============================================================== ({target}** 详见 sys.src <br>**\) 过程操作,比如config、property、ack、login、ping、pong${action} 操作动作,比如get、set、push。不是每个method都有action |
|
2 | sys | 对象 | ||
- src | 字符串 | ext、sub、gw、sv | 数据来源对象 ext为外设,比如网关的串口外设之类的 sub为无线或者有线的组网终端节点 gw为网关设备 sv为服务器 |
|
- ack | 数字 | =0,目标对象无需回复 =1,需要回复 method 为thing.sv.ack 的信息 |
||
3 | params | 列表 |
表 - 指示灯说明
序号 | 指示灯 | 功能 | 说明 |
---|---|---|---|
1 | RF | 无线收发指示灯 | 收到或者有无线数据发送时闪烁一下 |
2 | COM | 串行口收发指示灯 | RS485接口收到或者有串行数据发送时闪烁一下 |
3 | NET | 网络状态收发指示灯 | 网络连接状态指示灯 1. 熄灭:如果是以太网方式联网,则表示网线未连接,如果是4G方式联网,则表示4G未能正常连接基站,可能原因未插SIM卡或者SIM卡无效 2. 快闪(200ms周期):硬件有故障,有损坏的可能 3. 慢闪(2S周期):网络连接正常,但是未能正常连接指定的服务器 4. 常亮:已连接指定服务器 |
4 | CH | 联网通道指示灯 | 联网通道指示灯 1. 常亮:通过以太网联网 2. 熄灭:通过4G通道联网 3. 以500毫秒周期翻转闪烁:正在自动选择可联网通道 |
5 | PWR | 电源灯 | 电源指示灯,以2秒周期翻转闪烁 |
表 - 外置接口说明
序号 | 接口 | 功能 | 说明 |
---|---|---|---|
1 | ANT-RF | 无线天线 | SMA母座,一般为sub-G无线天线,比如433MHz频段天线或者470MHz频段天线 或者868MHz频段天线或者915MHz频段天线或者2.4GHz频段天线 |
2 | RST | 复位按键 | 复位按键 1. 短按:重启设备 2. 长按3秒以上:恢复出厂设置,并自动重启 |
3 | USB | USB-micro-B接口 | USB-micro-B接口 1. 可用于参数配置 2. 可用于固件升级 |
4 | SIM | SIM卡卡座 | 尺寸:中卡,可支持中国移动、中国联通以及中国电信 |
5 | ANT-4G | 4G通讯天线 | SMA母座 |
6 | DC-IN | 供电电源 | 电压12V,电流1A以上,类型:内径:2.5mm 外径:6mm |
7 | G RS485-A RS485-B |
RS485接口 | G:接地或悬空 RS485-A:接485总线的A RS485-B:接485总线的B |
8 | LAN | RJ45接口 | 以太网网线连接 |
一、设备信息¶
表 - params[0].deviceInfor字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | ver | 字符串 | 1.0 | 当前网关的固件版本 | |
2 | dvId | 字符串 | 当前网关设备ID | ||
3 | appId | 字符串 | 当前网关应用ID,默认与dvId相同,主要是应用于无线通讯,无线终端上行数据带的目标设备id要与appId一致 | ||
4 | netCh | 数字 | 0~2 | 0 | 联网通道, =0自动选择上网方式, =1使用以太网联网, =2使用4G联网 |
1、设备信息获取¶
示例
{
"method": "thing.gw.config.get",
"sys": {
"src": "sv",
"ack": 0
},
"params": [{
"deviceInfor": 1
}]
}
回复
{
"params": [{
"deviceInfor": {
"ver": "1.4",
"dvId": "72A60000",
"appId": "72A60000",
"netCh": 0
}
}],
"method": "thing.sv.config.push",
"sys": {
"src": "gw",
"ack": 0
}
}
2、设备信息设置¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"deviceInfor": {
"netCh": 0,
"appId": "00000000"
}
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 1,
"src": "gw"
}
}
二、RS485的串口参数¶
表 - params[0].uart485字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | br | 数字 | 4个字节 | 9600 | 串口波特率 |
2 | dl | 数字 | 0~2 | 0 | 串口数据长度, =0串口数据长度为8bit, =1串口数据长度为9bit, =2串口数据长度为7bit |
3 | sb | 数字 | 0~2 | 0 | =0串口停止位为1bit, =1串口停止位为0.5bit, =2串口停止位为2bit, =3串口停止位为1.5bit |
4 | ll | 数字 | 无效 | 预留 | |
5 | el | 数字 | 无效 | 预留 | |
6 | fm | 数字 | 无效 | 预留 | |
7 | cb | 数字 | 无效 | 预留 |
1、RS485的串口参数获取¶
示例
{
"method": "thing.gw.config.get",
"sys": {
"src": "sv",
"ack": 0
},
"params": [{
"uart485": 1
}]
}
回复
{
"params": [{
"uart485": {
"dl": 0,
"fm": 0,
"sb": 0,
"ll": 0,
"el": 0,
"br": 9600,
"cb": 0
}
}],
"method": "thing.sv.config.push",
"sys": {
"src": "gw",
"ack": 0
}
}
2、RS485的串口参数设置¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"uart485": {
"br": 9138840,
"dl": 0,
"sb": 0,
"cb": 0,
"el": 0,
"fm": 0
}
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 1,
"src": "gw"
}
}
三、lora无线配置参数¶
表 - params[0].lwqnRf0字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | dm | 数字 | 0~1 | 无效 | 调制模式, =0为FSK, =1为lora |
2 | swl | 数字 | 2个字节 | 无效 | 同步字长度 |
3 | lr_cr | 数字 | 1~4 | lora的coderate, =1为4/5, =2为4/6, =3为4/7, =4为4/8 |
|
4 | ch | 数字 | 1个字节 | 无线信道 | |
5 | rxto | 数字 | 2个字节 | 无效 | 接收超时时间,单位:毫秒 |
6 | txto | 数字 | 2个字节 | 无效 | 发送超时时间,单位:毫秒 |
7 | pwr | 数字 | 6~31 | 发射功率, | |
8 | bf | 数字 | 4个字节 | 无线基础频点,用于根据信道计算最终频点 | |
9 | band | 数字 | 1个字节 | 无效 | 无线频段,用于根据信道计算最终频点 |
10 | lr_crcl | 数字 | 1个字节 | lora的crc长度 | |
11 | pm | 数字 | 1个字节 | 无效 | 数据包模式 |
12 | pl | 数字 | 2个字节 | 8 | 前导码长度 |
13 | lr_ldr | 数字 | 0~1 | 无效 | 使能低速率模式, =0自动根据配置使能, =1关闭低速率模式, =2打开低速率模式 |
14 | lr_hd | 数字 | 无效 | 使能head模式, =0关闭head模式, =1打开head模式 |
|
15 | fpl | 数字 | 0 | 固定包模式长度, =0动态数据包模式, !=0固定包长度 |
|
16 | crc | 数字 | 无效 | 无线crc模式 | |
17 | lr_sf | 数字 | 6~11 | 无线lora的扩频因子 | |
18 | dd | 数字 | 无效 | 无线模组数据方向 | |
19 | lr_bw | 数字 | 0~3 | 无线lora的带宽, 0: 62.5 kHz, 1: 125 kHz, 2: 250 kHz, 3: 500 kHz |
|
20 | sw | 字符串 | 无效 | 同步字,hex格式 | |
21 | br | 数字 | 无效 | 无线波特率 | |
22 | cs | 数字 | 4个字节 | 920000 | 无线信道间隔,单位:Hz |
1、lora无线配置参数获取¶
示例
{
"method": "thing.gw.config.get",
"sys": {
"src": "sv",
"ack": 0
},
"params": [{
"lwpnRf0": 1
}]
}
回复
{
"params": [{
"lwqnRf0": {
"dm": 1,
"swl": 4,
"lr_cr": 4,
"ch": 1,
"rxto": 3000,
"txto": 0,
"pwr": 31,
"bf": 433000000,
"band": 1,
"lr_crcl": 0,
"pm": 0,
"pl": 8,
"lr_ldr": 0,
"lr_hd": 0,
"fpl": 0,
"crc": 0,
"lr_sf": 10,
"dd": 0,
"lr_bw": 2,
"sw": "",
"br": 2,
"cs": 920000
}
}],
"method": "thing.sv.config.push",
"sys": {
"src": "gw",
"ack": 0
}
}
2、lora无线配置参数设置¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"lwpnRf0": {
"band": 0,
"br": 0,
"bf": 0,
"ch": 0,
"crc": 0,
"cs": 0,
"dd": 0,
"dm": 0,
"fpl": 0,
"lr_bw": 0,
"lr_cr": 1,
"lr_crcl": 0,
"lr_hd": 0,
"lr_ldr": 0,
"lr_sf": 5,
"pl": 8,
"pm": 0,
"pwr": 0,
"rxto": 8,
"swl": 8,
"txto": 0
}
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 1,
"src": "gw"
}
}
四、联网服务器参数¶
表 - params[0].server字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | url | 字符串 | 最长50字符 | 服务器域名 | |
2 | ip | 字符串 | 0 | 服务器ip地址 | |
3 | port | 数字 | 2字节 | 服务器端口号 | |
4 | np | 数字 | 0~7 | 4 | 服务器通讯协议, =0为TCP-server, =1为TCP-client, =2为UDP-server, =3为UDP-client, =4为MQTT, =5为HTTP, =6为HTTP-server |
5 | mlp | 字符串 | 最长20字符 | mqtt账号 | |
6 | mla | 字符串 | 最长20字符 | mqtt密码 | |
7 | hp | 数字 | 2字节 | 心跳周期,单位:秒 | |
8 | mcid | 字符串 | 最长20字符 | 无效 | mqtt客户端ID,由软件自动生成 |
9 | mpt | 字符串 | 最长20字符 | 无效 | mqtt发布主题,由软件自动生成 |
10 | mst | 字符串 | 最长20字符 | 无效 | mqtt订阅主题,由软件自动生成 |
11 | pw | 数字 | 4个字节 | 0 | 设备登录密码 |
1、联网服务器参数获取¶
示例
{
"method": "thing.gw.config.get",
"sys": {
"src": "sv",
"ack": 0
},
"params": [{
"server": 1
}]
}
回复
{
"params": [{
"server": {
"mlp": "xxxx",
"mpt": "xxxx",
"mcid": "ABCDEFG13123",
"hp": 0,
"ip": "000.000.000.000",
"np": 4,
"port": 1883,
"mla": "xxxx",
"mst": "xxxx",
"url": "",
"pw": 0
}
}],
"method": "thing.sv.config.push",
"sys": {
"src": "gw",
"ack": 0
}
}
2、联网服务器参数设置¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"server": {
"netProtocol": 0,
"hp": 0,
"port": 0,
"pw": 0,
"ip": "...",
"mcid": "",
"mla": "",
"mlp": "",
"mpt": "",
"mst": "",
"url": ""
}
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 0,
"src": "gw"
}
}
五、网关设备重启¶
表 - params[0].restart字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | restart | 数字 | 1 | 1 | 重启设备指令 |
1、设备重启¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"src": "sv",
"ack": 1
},
"params": [{
"restart": 1
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 0,
"src": "gw"
}
}
六、设置无线节点参数¶
表 - params[0].subParams字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | device_id | 字符串 | 必填,目标终端节点设备ID | ||
2 | dtTyp | 字符串 | hex、str | 非必填,buffer数据包的数据格式,不填为str |
|
3 | cmd | 数字 | 0 | 必填,设置命令 | |
4 | rfCh | 数字 | 0~255 | 非必填,,无线信道,不填则使用设备当前设置信道 | |
5 | buffer | 字符串 | 必填,配置参数 |
1、无线节点参数设置¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"src": "sv",
"ack": 1
},
"params" : [ {
"subParams" : {
"device_id" : "00000000",
"cmd" : 0,
"rw" : 0,
"dtTyp" : "hex",
"rfCh" : 0,
"buffer" : "123"
}
} ]
}
回复
七、网关无线设备白名单¶
表 - params[0]字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | nodeId | 数字 | 1 | 1 | 获取白名单 |
1、白名单获取¶
示例
{
"method": "thing.gw.config.get",
"sys": {
"ack": 0,
"src": "ext"
},
"params": [{
"nodeId": 1
}]
}
回复 表 - params[0].nodeId字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | list | 列表 | 白名单列表 | ||
2 | counts | 数字 | 白名单列表个数 | ||
3 | maxCounts | 数字 | 支持最大白名单列表个数 |
{
"method": "thing.sv.config.push",
"sys": {
"src": "gw",
"ack": 0
},
"params": [{
"nodeId": {
"list": ["D0824896"],
"counts": 1,
"maxCounts": 150
}
}]
}
2、白名单添加¶
表 - params[0].nodeIdAdd字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | list | 列表 | 需要添加的白名单列表,可以同时添加多个 |
示例,将一个设备id为1231231
添加入白名单中
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"nodeIdAdd": {
"list": ["1231231"]
}
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 0,
"src": "gw"
}
}
3、白名单移除¶
表 - params[0].nodeIdAdd字段说明
序号 | 字段 | 类型 | 范围 | 默认值 | 说明 |
---|---|---|---|---|---|
1 | list | 列表 | 需要移除的白名单列表,可以同时移除多个 |
示例,将一个设备id为1231231
从白名单中移除
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"nodeIdRmv": {
"list": ["1231231"]
}
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 0,
"src": "gw"
}
}
4、白名单清空¶
示例
{
"method": "thing.gw.config.set",
"sys": {
"ack": 1,
"src": "sv"
},
"params": [{
"nodeIdClr": 1
}]
}
回复
{
"params": [{
"message": "config set ok",
"code": 200
}],
"method": "thing.sv.ack",
"sys": {
"ack": 0,
"src": "gw"
}
}