微信小程序蓝牙开发

需要做一个类似于美团单车小程序扫码开锁的程序,需要使用到微信小程序的蓝牙模块功能与蓝牙锁进行交互

4.jpg

一、这里我先把我遇到的两个天坑在这里先说明一下:

1、根据锁的开发文档描述:读特征值是000036F6-0000-1000-8000-00805F9B34FB,但是在iOS上设置通知一直报10008错误码!实际开发下来发现:在Android手机是使用这个,在iOS手机确是0000FEC8-0000-1000-8000-00805F9B34FB这个问题一直没有搞懂!(上面这两个特征值至是举例)

2、开启读特征值通知成功后发送数据给锁,无法收到锁回复的数据 二、这里就主要总结一下BLE的开发步骤,与蓝牙设备进行交互 第一步:初始化蓝牙模块

第二步:监听寻找到新设备的事件

第三步:开始搜寻附近的蓝牙外围设备

第四步:在onBluetoothDeviceFound中搜索到的蓝牙进行连接

先停止搜索蓝牙

再连接蓝牙

第五步:获取蓝牙服务ID(一个蓝牙会有多个服务,所以需要取自己需要的服务ID)

第六步:根据蓝牙服务ID获取特征值ID(一个蓝牙服里会有多个特征值ID,所以需要取自己需要的特征值ID)

这里就会遇到我开头说的第一个问题。然后这里取读、写特征值需要根据你的蓝牙协议文档来

第七步:开启读特征值通知

第八步:监听读特征值变化也就是收到的蓝牙数据包

第九步:发送数据

这里就会遇到我开头说的第二个问题。发送了数据无法收到锁的数据,原因就是第八步设置监听变化比发送数据慢,也就是我还没监听你就把数据发出去了,导致设备回的数据包没有收到,所以这里需要在第八步执行后,延时一段时间在发送数据

第十步:释放资源、断开蓝牙、释放蓝牙模块

 

 

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注