android ble status,Android BLE peripheral disconnects with status code BLE_HCI_INSTANT_PASSED(0x28)

问题

My application is able to connect to the BLE peripheral(which is an OBDII/J1939 device) device successfully.

2018-01-24 14:58:38,413 INFO LogUtil - GATT Server Status = (0) : BLE_HCI_STATUS_CODE_SUCCESS(0x00)

2018-01-24 14:58:38,414 INFO LogUtil - GATT Server New State = (2) : STATE_CONNECTED

2018-01-24 14:58:38,414 INFO LogUtil - Connected to GATT server.

Application started communication with the device but after some time it received GATT server disconnection message in onConnectionStateChange in callback implementation of BluetoothGattCallback . Below are the logs from application:

2018-01-24 15:07:46,396 INFO LogUtil - GATT Server Status = (40) : BLE_HCI_INSTANT_PASSED(0x28)

2018-01-24 15:07:46,397 INFO LogUtil - GATT Server New State = (0) : STATE_DISCONNECTED

2018-01-24 15:07:46,398 INFO LogUtil - Disconnected from GATT server.

Not able to find any reason behind BLE_HCI_INSTANT_PASSED status code.

Any help on this will be helpful.

回答1:

When data is being transmitted over BLE, data transfers can only start at sync points in time known as "connection events". At the BLE link layer there are couple special requests that can be made which are relative to these sync points. They are:

LL_CHANNEL_MAP_REQ - A request to change the BLE channels being transmitted on. Bluetooth chips will change the channel map based on the noise in the environment to try to limit packet drop.

LL_CONNECTION_UPDATE_REQ - A request to change the frequency of "connection events" (known as the "connection interval"). This is done to achieve better throughput/latency or save more power.

Each of these Link Layer requests when sent over the air contains an "Instant" to change. The "Instant" is the "connection event" in the future to apply the change.

At the Link Layer, BLE is reliable. This means each Link Layer packet must be ack'd by the other side. In a noisy RF environment, it's possible a link layer packet may require a couple retries to actually send. This means the packet could arrive many "connection events" after originally intended.

If one of the packets mentioned above is received after the "Instant" the changes were supposed to be applied, by definition the BLE chip must disconnect with reason 0x28 (Instant Passed)

For additional details on the topic, the Bluetooth Core Specification available from the Bluetooth SIG website is a good reference:

来源:https://stackoverflow.com/questions/48447645/android-ble-peripheral-disconnects-with-status-code-ble-hci-instant-passed0x28

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/304277.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2018年大数据趋势

作者 | Keith D. Foote翻译 | 品觉笔记本电脑、智能手机、传感器,都为物联网带来了大量数据。这是获得竞争优势(或者保持竞争力)的重大机遇,前提是企业足够灵活,可以管理好数据并把数据变成有用的商业智能。人脑能高效…

关于商品分类 商品表和属性表的设计

以前有这样的一个需求,不考虑像京东或者淘宝这样分类下有子分类的情况,只考虑一层分类的情况下,可以随便添加分类,可以任意给商品添加属性,而不需要更 改表的结构. 于是设计了一个这样的结构,实现还是可以实现,一直在用,但是在操作上比较麻烦,大家讨论下有没有更好的方式. ----…

Redis五种数据结构

1、String这是最简单的Redis类型。如果只使用这种类型,Redis就像一个可持久化的Memcached服务器。2、ListRedis的List是基于双向链表实现的,可以支持反向查找和遍历。常用案例:聊天系统、社交网络中获取用户最新发表的帖子、简单的消息队列、…

es创建索引数量多了好还是少了好_Elasticsearch性能优化总结

Elasticsearch是目前大数据领域最热门的技术栈之一,经过近8年的发展,已从0.0.X版升级至6.X版本,虽然增加了很多的特性和功能,但是在主体架构上,还是没有太多的变化。下面就把我对于ES使用实践的一些经验总结一下,供大家参考;也请大家拍砖。 一、 硬件环境选择: 如果有条…

C# NUnit的安装

前言:NUnit是什么?NUnit 是一个单元测试框架,专门针对于.NET来写的。NUnit是xUnit家族种的第4个主打产品,完全由C#语言来编写,并且编写时充分利用了许多.NET的特性,比如反射,客户属性等等。最重要的一点是它适合于所有…

shiro单点登录原理_SSO单点登录三种情况的实现方式详解

单点登录(SSO——Single Sign On)对于我们来说已经不陌生了。对于大型系统来说使用单点登录可以减少用户很多的麻烦。就拿百度来说吧,百度下面有很多的子系统——百度经验、百度知道、百度文库等等,如果我们使用这些系统的时候,每一个系统都需…

[转]解决Windows 7下Windows Live Messenger(MSN) 9.0在一直停靠任务栏而不在系统栏显示的问题...

解决Windows 7下Windows Live Messenger(MSN) 9.0在一直停靠任务栏而不在系统栏显示的问题 用上Windows 7后,MSN一直停靠任务栏而不在系统栏显示,关闭窗口就会退出MSN,解决方法很简单。 1、退出MSN 2、点击“开始”菜单->Windows Live->…

中国癌症大数据出来了!每年126万例癌症死亡本可避免

01 中国本土大样本数据:癌症真的可预防!2017年,由全国肿瘤登记中心副主任陈万青教授、美国癌症协会Farhad Islami教授牵头的生活方式和感染对中国癌症发病和死亡影响的研究,发表在Annals of Oncology上[1,2]。该研究由美国癌症研究…

NPOI 在指定单元格导入导出图片

NPOI 在指定单元格导入导出图片Intro我维护了一个 NPOI 的扩展(WeihanLi.Npoi),主要用来导入导出 Excel 数据,最近有网友提出了导入 Excel 的时候解析图片的需求,于是就有了本文的探索导入Excel 时解析图片xls 和 xlsx 的 API 稍有不同&#…

android 设置folder类型,正确配置你的 Android 项目

简评:优秀的 Android 项目从配置开始。: )作者在这里介绍了一个 Android 项目应该有的配置,文中讲到的内容大家都可以运用在自己的 Android 模板项目中。gitignore当你新建 Android 项目时,默认会生成 gitignore 文件,但并没有包含…

人就是这样啊

人类自然的天性,是做错事只会责备别人,而绝不会责备自己,我们每个人都是如此。不要评议人,免得为人所评议。不要评批他们,我们在相同的情形下,也会像他们一样。林肯从苦痛的经验中知道,尖锐的评…

开发物体识别桌、_【课程总结】AR系统开发“秘籍”大揭秘!

导读:AR技术飞速发展,被广泛应用于游戏、医疗、旅游、电商等行业。那么对于AR系统的整体设计和应用是如何操作的呢?商汤泰坦公开课第006期联合“SLAM技术及应用”暑期学校与研讨会共同推出“移动增强现实系统的设计与应用案例解析”&“AR…

商业项目中最受欢迎的 7 种编程语言

【导读】:Semaphore 是一个国外持续集成/持续部署方案服务商。Semaphore 称自己在过去三年对其开发者用户进行调查,调查他们在开发商业项目时一般都使用哪些语言。这些数据基于成千上万个在 Semaphore 上进行测试和部署的项目的人。所以现在这是迄今为止…

html云雾效果,PS中怎么做像这样的云雾效果?(有图)?

回答:制作步骤:1.按【CtrlO】键打开一幅风景素材图像。2.制作云彩效果。选择Photoshop CS6工具箱中的矩形选框工具 ,在画面中绘制选区,使用默认前背景色。单击“图层”面板上的“创建新图层”按钮 ,新建“图层1”在菜单…

为or、in平反——or、in到底能不能利用索引?

先说一个笑话,作为开场白。俺也换换风格试一试,呵呵。 在以前,有三个书生赶考,在路上遇到了一个算命先生,于是就问算命先生:我们三个人赶考,结果如何呀?算命先生伸出来了一个手指头&…

iNeuOS 工业互联网操作系统,在核工业测控领域的成功应用

注:由于本项目涉及核工业,具体细节保密。1. 前言iNeuOS工业互联网操作系统iNeuOS,公众号:iNeuOS“iNeuOS工业互联操作系统”面向未来,公众号首秀iNeuOS工业互联网操作系统积累了10多年工业领域知识和经验&#xff0…

5 thinkpad 黑将评测_王中林院士团队黑科技:80秒,将PM 2.5降至0!把森林氧吧搬回家!...

空气负离子(NAI)被称为“空气维生素”,它们广泛用于室内空气净化,包括去除空气中的颗粒物、对挥发性有机化合物进行氧化分解和抑菌。除了从森林、瀑布和暴雨等自然来源外,目前还开发了基于电晕放电、热离子电子发射、光激发和勒纳效应的纳米空…

详细解读给数据挖掘新手的6个案例

1946年2月16日,是一个值得纪念的日子。在这一天,人类历史上真正意义上的第一台电子计算机诞生了,此后计算机便随着科技的发展以强大的生命力飞速发展着。而作为用来定义计算机程序的形式语言——编程语言也紧跟计算机其后蓬勃发展&#xff0c…

html5 获取文件属性,H5新属性--file文件读取

首先,body里写入一个文件输入框:然后在JS中获取到这个标签,监听它的onchang事件来读取文件(以读取文件路径为例):var inp document.querySelector("#myFile");inp.onchange function () {//console.log(this.files);f…

Jquery高亮显示文本中重要的关键字

一、界面预览鼠标放到右边的Tab按钮上&#xff0c;文字透明度降低&#xff0c;同时一段文字高亮显示&#xff0c;效果如下&#xff1a;Demo地址&#xff1a;http://5thirtyone.com/sandbox/samples/fadefocus/很绚丽的效果幺&#xff01;二、实现原理将要高亮显示的文字加上<…