用途为芯片周期用i2c读传感器数据,在数据发生较大的变化时通过广播来向一个主机设备传递传感器数据。读传感器数据和广播通信已经实现,提问:芯片要怎样操作才能做到才能尽可能的功耗低呢?
想要一份低功耗例程参考一下
用途为芯片周期用i2c读传感器数据,在数据发生较大的变化时通过广播来向一个主机设备传递传感器数据。读传感器数据和广播通信已经实现,提问:芯片要怎样操作才能做到才能尽可能的功耗低呢?
想要一份低功耗例程参考一下
@mars 在 客户端扫描对端服务的问题 中说:
GATTC_MSG_SVC_REPORT
这种无法找到目标服务的情况是没有执行GATTC_MSG_SVC_REPORT的
日志打印的话执行的顺序为:
"spsc_clinet,att_idx:1,evt:7
spsc_clinet,att_idx:0,evt:6"
att[4]_hdl,att[5]_hdl是对应这个从机服务的句柄,返回的都是0,而且返回的速度异常得快。
因为GATT_OP_PEER_SVC_REGISTERED操作相较于能正常找到服务的速度快太多了,我怀疑第二条从机链接的寻找服务的操作直接在之前连接缓存的服务列表进行比对所以找不到。我不知道这个判断是否准确,希望你再帮我指点一下
fr8106ha作为主机,在已经连接上一个从机并找到了我所需要的服务后,主机与另一个从机设备连接并开始寻找这个从机中我所需要的服务,这种情况下无法找到第二个连接的从机中我所需要的服务。
验证了gatt_discovery_peer_svc操作中的conidx参数是没有问题的;单独连接这两个从机并寻找所需要的服务都是可以成功。这该怎么解决?
这两个从机设备并不相同,这两个设备中要用到的服务uuid也不相同。
将gap_security_param_t param中的.ble_secure_conn参数从true改为false,已绑定的设备就能够正常的连接和加密了。
回复: 在回调事件GAP_EVT_MASTER_CONNECT中绑定状态为真时,加密后不能进入事件GAP_SEC_EVT_MASTER_ENCRYPT
请问绑定后该如何发起加密请求?
使用ble抓包工具抓到的加密情况为:
问题已解决,苹果手机扫描蓝牙hid设备会根据广播信息中的主要服务的uuid进行过滤,要能够被扫描到的话广播中的主要服务uuid必须为0x1812