问题标签 [bluetooth-gatt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 获取给定 UUID 的 BluetoothGattCharacteristic
我想知道如果我有 UUID 并且已成功连接到 BLE 设备,那么检索 BluetoothGattCharacteristic 的最佳方法是什么?例如,见下文。TIA。
android - How to Read BLE GATT characterstics in chunks form GATT server using RxAndroidBLE
I am using RxAndroidBle library for handling BLE connection and reading/writing to GATT server from my android gatt client app. I have followed the sample application provided on github.
The problem I am facing is my GATT server is running on Intel Edison and it is supporting MTU size of 80 only .It sends data in chunks, I am supposed to read the charcterstics value multiple time until i encounter a special character, something like '/END' . I have tried Custom read operation example which is supposed to read 5 times every 250 ms.
and i am calling it like this
and i am not getting any data from the server using this code. However if i try simple read operation like this
I get the first chunk of data, but i need to read rest of data.
I am not very well versed with RxJava. So there might be an easy way to do this, But any suggestion or help will good.
This is my prepareConnectionObservable
I call
and onConnectionReceived i call CustomRead.
bluetooth-lowenergy - 如何在 GATT 错误的情况下重试 RxAndroidBLE 发现服务。
我正在使用 RxAndroidBLE 库来发现我的 GATT 服务器中的服务。它大部分时间都可以正常工作,但我经常收到 GATT 错误 133 (0x85) 并且它失败了。我想在一段时间内重试几次发现服务,比如 5 秒。这是我正在尝试的代码
它不起作用,看起来 retryWhen 没有被调用。它可能更多是 rxJava 问题,但我将非常感谢您对此的任何帮助。
android - BLE writeCharacteristic 问题
我正在尝试writeCharacteristic()
使用 BLE 设备。
我使用谷歌示例应用程序建立连接,连接很好。我可以看到 BLE 服务和服务特征。
该writeCharacteristic()
方法返回 true 并且onCharacteristicWrite()
回调返回状态BluetoothGatt.GATT_SUCCESS
,但设备没有发生任何事情:我尝试了堆栈溢出中的所有解决方案,但没有任何帮助。这是我的代码:
在BluetoothLeService
类中,我有sendData()
方法,byte[]
由于最大有效负载为 33 个字节,因此我将分别发送每个命令。
android - Android BLE 连接到 GATT 服务的时间比预期的要长
我是 android BLE 开发和一般 BLE 开发的新手,我注意到大多数情况下,Android 可能需要 3-7 秒才能在我的 connectGatt 调用之后触发对 onConnectionStateChange 的调用。这是正常的吗?我很好奇,因为我之前使用过蓝牙 2.0,那里的一切都快得多。此外,我在 iPhone 上进行了一些测试编码,初始连接的建立也更快。我将在下面发布一个示例代码以及一些指示减速发生的位置的 android 监视器消息。
这里有几行来自我的日志,你可以看到这里花了将近 5 秒来确认我们已连接到 GATT。
bluetooth-lowenergy - 如何让ble android应用程序在后台运行?
我正在开发安卓应用程序。在这个应用程序中,我必须连接到 ble 设备。当应用程序处于后台时,我希望应用程序连接到 ble 设备。
android - BluetoothGattServerCallback : onCharacteristicReadRequest() 多次调用
我有一部 Android 手机充当中央设备,另一部 Android 手机充当外围设备。
从 Central,我请求读取 Peripheral 的特征,使用mBluetoothGatt.readCharacteristic ( characteristic )
在外围设备上,方法
调用,我正在做两件事: 1. 初始化 abyte [] value
以将字符串存储在byte
表单中。2. 使用方法向客户端发送响应mGattServer.sendResponse()
。
我的问题是,当我从中央设备发出一次读取请求时,上述方法会被多次调用。
因此,我在中央设备上获取数据就像
This is a data to be transferredThis is a data to be transferredThis is a...
我也尝试过其他特性。但是对于那些,回调方法被调用一次。
你能指出我哪里做错了吗?
编辑:从外围设备,我已经调试我正在发送 32 字节的数据。当我将string
值从更改This is a data to be transferred
为 时DATA
,该方法onCharacteristicReadRequest()
仅调用一次。
对该领域的进一步实验string
使我得出结论,响应中要发送的最大字节数为 21 字节。如果是这种情况,那么我应该如何从 GATT Server 发送响应,以便 Central Device 只能获取准确的数据?
android - Android 蓝牙低功耗 Gatt 服务实现错误
我在我的项目中使用了 android.bluetooth 包,但我尝试实现 IBluetoothGatt 的读写特性。但我有一些问题如下
IBluetoothGatt 界面中的 writeCharacteristic 红色高亮
bluetooth-lowenergy - 奇怪的 BLE 行为 Android
我正在尝试开发一个应用程序,通过 BLE 连接到我来自德克萨斯州的 CC2650 传感器标签。
我可以使用 GATT 协议连接到我的标签,问题是如果我连接时连接失败,它不会恢复。但是,如果我将手机重新连接到设备并重复该过程(关闭并打开标签),它会自动重新连接到手机。
我只是不明白第一个行为和重新连接后的行为之间的区别......
知道吗?
亚历克斯
bluetooth - 蓝牙外观图标
我正在为 BLE 设备开发固件,需要定义外观值。目前,我选择了“通用计算机”。但是,外观值的完整列表https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.gap.appearance.xml 有一些可能更合适的值。在 Windows 10 中,“通用计算机”显示为带有桌面 PC 的图标。是否有可用资源允许我查看任何/所有支持的外观值的图标?我想避免多个编译、加载和浏览周期只是为了观察图标。