MODUBS_BLE主机
<p>默认波特率:9600
默认节点号:2
功能简介:使用串口控制的蓝牙BLE4.2主机,可连接指定mac设备,读写指定notify,主要用于对接迅鸣物联网蓝牙设备,其他设备对接请咨询售前客服。</p>
<h2>【组合指令】</h2>
<p><strong>设置mac+密码+执行指令:</strong>
02 10 1005 0008 10 c213040a7337 3738333630363432 32 31 8D48 //使用密码进行开锁【自动触发】
字段说明:
节点号 - 指令类型 - 起始地址 - 寄存器个数 - 字节长度 - mac地址 - 密码 - 指令 - crc16
mac地址:高位在后,以用nRF Conect扫描到mac为例
密码:密码是高位在前,示例密码为:“78360642”。
指令:长度可变,按照蓝牙锁协议解析
crc16:modbus模式【<a href="http://www.ip33.com/crc.html,计算值高低位需要调换">http://www.ip33.com/crc.html,计算值高低位需要调换</a>】</p>
<p>未激活设备测试指令:
02 10 1005 0008 10 000000000001 3030303030303030 32 31 6Eb6 【服务使用默认值,操作速度快】
02 10 1069 0008 10 000000000001 3030303030303030 32 31 F7d3 [服务通过扫描方式发现]</p>
<p>提示:
1、该指令会自动连接并发送指令。
2、如果从机已连接,则会自动断开重连,发送指令。
3、如果从机没有开启连接超时断开,则根据需求执行断开连接指令。【一直处于连接状态会导致其他主机无法与从机连接】
4、通常“一主一丛”场景时长连接可使蓝牙通信响应时间\<1秒,指令响应迅速;
5、“一主多从”与“多主一从”场景,不能进行长连接。【从机默认开启连接超时自动断开】</p>
<h2>【配置】</h2>
<p><strong>设置mac寄存器:</strong>
02 10 1005 0003 06 c213040a7337 7766</p>
<p><strong>设置mac+pwd寄存器:【开机后必须同时mac+pwd配置一次后才能执行,触发指令】</strong>
02 10 1005 0007 0e c213040a7337 3738333630363432 04EC</p>
<h2>【手动控制】</h2>
<p><strong>已连接+开启notify状态,向从机发送指令:</strong>
02 10 100C 0001 02 3231 7719 //[开锁]</p>
<p><strong>已连接状态下,执行断开从机连接指令:</strong>
02 06 1017 0005 FD3e</p>
<p><strong>配置mac+pwd但未连接状态,执行连接设备+开启notify:</strong>
02 06 1017 0002 BCfc</p>
<p><strong>已连接状态,执行开启notify:</strong>
02 06 1017 0008 3Cfb</p>
<p>~~<strong>清除连接配置,并断开连接:</strong>
01 06 1017 0000 3D0E~~</p>
<p><strong>执行一次全局扫描扫描模式:</strong>
02 06 1017 0006 BD3f //返回所有扫描到的主服务为FFF0的设备</p>
<p><strong>扫描mac寄存器指定设备:</strong>
02 06 1017 0007 7Cff //扫描完成后,通过读设备状态判断结果</p>
<p><strong>执行从机信号扫描</strong>
02 06 1017 0009 FD3b //执行完成后,需要读取结果</p>
<h2>【读取数据】</h2>
<p><strong>读取当前连接状态:</strong>
02 03 1017 0001 30fd //【0:断开,1:扫描到寄存器mac设备,2:连接,3:订阅成功并收到随机数完成认证】</p>
<p><strong>读取从机信号扫描结果</strong>
02 03 1019 0001 513e //返回最强信号rssi值、扫描到的全部节点数量</p>
<p><strong>读取从机状态</strong>
02 03 10cc 0003 c107 //返回信号强度、扫描更新时间、锁状态、电池电量、从机锁id</p>
<hr />
<h2>[信号强度检测,靠近自动连接并交互数据方案]</h2>
<p>1、断开连接【避免蓝牙主机处于连接状态,而无法进行扫描指令】:02 06 1017 0005 fd3e
2、设置目标从机【MAC+密码】:02 10 1005 0007 0e 000000000001 3030303030303030 823a
3、循环扫描目标从机
4、扫描到后检测信号强度复合条件,则发送连接指令
5、循环读取从机锁控状态+发送电量数据到从机【modbus写锁控状态到从机,主机读】【mobus发送电量到主机,主机通过蓝牙写入从机,modbus读取从机电量】
6、根据连接状态循环3-5步骤</p>
<h2>[指定信号强度检测设备是否靠近方案]</h2>
<p>1、断开连接【避免蓝牙主机处于连接状态,而无法进行扫描指令】:02 06 1017 0005 fd3e
2、执行信号扫描:02 06 1017 0009 FD3b
3、等待2秒完成信号扫描【等待时间与蓝牙主机模块设置的扫描超时时间有关,默认1.6秒】
4、读取结果【返回最强信号rssi值、扫描到的全部节点数量】:02 03 1019 0001 513e
5、循环2-4步。</p>
<hr />
<h2>【蓝牙网关使用方案】</h2>
<p>1、发送从机连接+查询指令:02 10 1005 0008 10 000000000001 3030303030303030 3236 2f74
2、等待4秒主机完成查询操作
3、读取从机状态:02 03 10cc 0003 c107 ,解析返回数据更新【信号强度、扫描更新时间、锁状态、电池电量】
4、断开从机连接:02 06 1017 0005 fd3e
5、循环1-4步。</p>
<hr />
<h1>寄存器地址表</h1>
<table>
<thead>
<tr>
<th style="text-align: center;">地址HEX</th>
<th style="text-align: center;">用途</th>
<th style="text-align: center;">地址</th>
<th style="text-align: center;">功能</th>
<th style="text-align: center;">R/W</th>
<th style="text-align: center;">排序</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center;">1004</td>
<td style="text-align: center;"></td>
<td style="text-align: center;">4100</td>
<td style="text-align: center;">RSSI</td>
<td style="text-align: center;"></td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1005</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4101</td>
<td style="text-align: center;">MAC</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">低位</td>
</tr>
<tr>
<td style="text-align: center;">1006</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4102</td>
<td style="text-align: center;">MAC</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1007</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4103</td>
<td style="text-align: center;">MAC</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">高位</td>
</tr>
<tr>
<td style="text-align: center;">1008</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4104</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">低位</td>
</tr>
<tr>
<td style="text-align: center;">1009</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4105</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">100a</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4106</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">100b</td>
<td style="text-align: center;">默认handle方式控制</td>
<td style="text-align: center;">4107</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">高位</td>
</tr>
<tr>
<td style="text-align: center;">100c</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4108</td>
<td style="text-align: center;">步骤+指令</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">100d</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">低位</td>
</tr>
<tr>
<td style="text-align: center;">100e</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">100f</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1010</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1011</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1012</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1013</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1014</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1015</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1016</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4109</td>
<td style="text-align: center;">参数</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">高位</td>
</tr>
<tr>
<td style="text-align: center;">1017</td>
<td style="text-align: center;">寻车库</td>
<td style="text-align: center;">4119</td>
<td style="text-align: center;">BLE状态</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1018</td>
<td style="text-align: center;">寻车库</td>
<td style="text-align: center;">4120</td>
<td style="text-align: center;">设备状态</td>
<td style="text-align: center;">R</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1019</td>
<td style="text-align: center;">寻车库</td>
<td style="text-align: center;">4121</td>
<td style="text-align: center;">扫码到车桩数量</td>
<td style="text-align: center;">R</td>
</tr>
<tr>
<td style="text-align: center;">1069</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4201</td>
<td style="text-align: center;">MAC</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">低位</td>
</tr>
<tr>
<td style="text-align: center;">106a</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4202</td>
<td style="text-align: center;">MAC</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">106b</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4203</td>
<td style="text-align: center;">MAC</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">高位</td>
</tr>
<tr>
<td style="text-align: center;">106c</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4204</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">低位</td>
</tr>
<tr>
<td style="text-align: center;">106d</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4205</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">106e</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4206</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">106f</td>
<td style="text-align: center;">扫描方式控制</td>
<td style="text-align: center;">4207</td>
<td style="text-align: center;">密码</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;">高位</td>
</tr>
<tr>
<td style="text-align: center;">1070</td>
<td style="text-align: center;">透传数据</td>
<td style="text-align: center;">4208</td>
<td style="text-align: center;">步骤+指令</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">10cc</td>
<td style="text-align: center;">通用</td>
<td style="text-align: center;">4300</td>
<td style="text-align: center;">RSSI<<8 or 电量%</td>
<td style="text-align: center;">R</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">10cd</td>
<td style="text-align: center;">通用</td>
<td style="text-align: center;">4301</td>
<td style="text-align: center;">电源电压mv</td>
<td style="text-align: center;">R</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1130</td>
<td style="text-align: center;">称重</td>
<td style="text-align: center;">4400</td>
<td style="text-align: center;">指令</td>
<td style="text-align: center;">W</td>
<td style="text-align: center;"></td>
</tr>
<tr>
<td style="text-align: center;">1131</td>
<td style="text-align: center;">秤重</td>
<td style="text-align: center;">4401</td>
<td style="text-align: center;">重量</td>
<td style="text-align: center;">RW</td>
<td style="text-align: center;"></td>
<td></td>
</tr>
</tbody>
</table>
<p>备注:默认handle方式无需扫码直接连接mac后使用默认hanle发起通信,速度块;扫描方式需要先扫描服务,响应速度慢,但兼容性强。</p>