问题标签 [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.

0 投票
0 回答
2904 浏览

bluetooth-lowenergy - Android BLE API:自动连接不适用于所有设备?

我有两个外围设备,比如 device1 和 device2 和一个用于中心角色的 Android 设备。Android 可以通过BluetoothDevice连接到两者。带有autoConnect = false的connectGatt () 方法。

问题是 - 虽然autoConnect功能适用于 device1,但 device2 甚至无法使用autoConnect = true连接一次。

onConnectionStateChange回调不会在任何一方(android 和 device2)中调用。在 device2 中自定义了广告和扫描响应数据包,这是导致问题的原因吗?虽然我们知道,自主连接的设置是完全在中心端提供的,外围端与它无关,外围设备的变化也会改变中心端的自动连接行为。

有什么见解吗?提前致谢。

0 投票
1 回答
332 浏览

windows - 是否可以在没有 GATT 的情况下实施 Proximity Profile?

我对 BR/EDR 配置文件而不是 GATT 之上的 Proximity Profile 服务很感兴趣。我说的是不支持 BLE API 的 Windows 蓝牙堆栈 (Windows 7)。

问题:

  1. 可能吗?
  2. 你能指出我的具体实现吗?
  3. 是否有可以提供帮助的第 3 方解决方案(我*指的是 Windows 7 笔记本电脑随附的非 BLE 无线电)?

提前致谢!

0 投票
0 回答
1044 浏览

java - 使用 Java 读取 GATT 特征值

我正在尝试使用 Java(Java SE,而不是 Android!)从蓝牙 LE 传感器(Texas Instruments CC2541)读取 GATT 特征值。

到目前为止,我设法让 COM 端口串行通信正常工作,但无法找出读取 GATT 值的最佳方法。我看到一些看起来很复杂的文档描述了协议和要发送/接收的确切字节,但我希望有一种更简单的方法可以使用现有的库/API 来做到这一点?

读取 GATT 值的推荐方法是什么?一个代码示例将不胜感激。

0 投票
3 回答
27355 浏览

bluetooth - 创建 Gatt 服务器?

我在这里有一个更广泛的问题,所以如果有人可以向我指出可以解释这一点的文档或文章,那就足够了。不用说,一天的谷歌搜索让我无处可去,我可以伸出援助之手。

我正在使用 BlueZ 5.9 连接到BeagleBoard,我的意图是:

  1. 创建一个 Gatt 服务器,
  2. 用一些可写的属性加载它,并且
  3. 宣传该服务器以连接到 android 设备。

我已经创建了将连接并作为中心运行的 Android 应用程序,渲染 3 基本完成。我不知道命令(要键入的文字内容)如何启动 Gatt 服务器/在 BeagleBoard 上创建属性。我知道硬件很大,所以我的术语可能完全不正确 - 也就是说,在完成 1 和 2 时,任何帮助都将不胜感激,即使它只是朝着正确的方向推进。谢谢!

0 投票
2 回答
8787 浏览

android - 蓝牙低功耗通知

我正在尝试从健康档案中读取温度值。健康温度计服务。根据官方 google ble devlopment page当我尝试通知健康温度计特征以读取温度时,我尝试使用 writeDescriptor 写入描述符值(客户端特征配置),writeDescriptor 的回调方法根据谷歌返回状态 5,它是 GATT_INSUFFICIENT_AUTHENTICATION。所以我注释了 writedescriptor 的代码并尝试调用方法 mBluetoothGatt.setCharacteristicNotification(characteristic, enabled); 但从未调用过 onCharacteristicChanged 方法。当我与我的 ios 开发人员团队交谈时。他们说他们从不写描述符值,他们只是将通知设置为 true,然后从同一芯片获取温度值。android 开发者需要写一个描述符值才能得到通知???所以最后我尝试从蓝牙运行官方蓝牙应用程序。com 站点出于测试目的,他们只是禁用所有三个按钮通知读取和写入???谢谢你,对不起我的英语

[更新]
找出一些可能导致一些绑定问题的日志,如果您有任何解决方案,请帮助我。

  • 生成的短期密钥仍然记录为错误
    11-08 11:26:44.392: E/bt-smp(1014): STK Generated

  • 在绑定状态发生巨大变化之后,这可能会导致身份验证不足
    11-08 11:26:49.437: I/BluetoothBondStateMachine(1014): bondStateChangeCallback: Status: 0 Address: 00:16:A4:C0:FF:EE newState: 2
    11- 08 11:26:49.437: D/BtGatt.btif(1014): btif_gattc_upstreams_evt: 事件 9
    11-08 11:26:49.437: E/BluetoothBondStateMachine(1014): 处于稳定状态,收到无效的 newState: 12

[更新]
在 nexus 7 上升级 kitkat 4.4 后。添加两种方法 对我有用,现在我可以读取加密特征。但仍然不稳定。但我取得了一些成功。
device.createBond();
device.setPairingConfirmation(true);

0 投票
2 回答
422 浏览

ios - 核心蓝牙无法发现外围设备

我正在使用正在开发的硬件。该板使用TI CC2541作为蓝牙芯片。

在测试之前,两个设备都可以发现该板,并且我能够连接到该板并执行我在其中写入和读取特性 (GATT) 的测试。我再次执行测试,一切正常,直到我重新连接到设备并尝试发现它的服务。那时,开发板处于离线状态,lightblue 和我自己的应用程序都无法检测到该设备。我在其中一台 iOS 设备 (iPad) 上进行了出厂重置,但它仍然无法识别主板。

恢复出厂设置是否应该删除设备上发生的所有核心蓝牙缓存,允许 iOS 重新缓存并重新发现主板?

这可能是核心蓝牙问题或我的应用程序有问题吗?

0 投票
1 回答
679 浏览

windows-store-apps - 适用于 Windows 8.1 应用商店应用的蓝牙低功耗服装服务设备发现和开发

我开始构建 Windows 应用商店应用程序,但在我发现我的设备在 Windows 8.1 上与 Windows 7 和 iPhone 相比无法发现之后,我可以在其上检测到这个蓝牙 LE 设备。我正在使用以下 PrimaryServices:

  • 通用访问 (0x1800)
  • 通用属性 (0x1801)
  • 服装服务 (0x13B0)
  • 设备信息 (0x180A)

我怎样才能使这个设备在 Windows 应用商店应用程序中变得可发现和可用(编写某种驱动程序,更改设备上的一些服务或作为最后一个选项为服装服务编写规范,这对我来说太贵了)?欢迎使用此问题的多种解决方案。

0 投票
1 回答
1950 浏览

android - samsung ble api 无法从多个 GATT 特征中获取通知

我正在三星 ACE3 上开发一个应用程序来连接蓝牙低功耗设备。由于三星不希望ACE3升级到Android 4.3,所以我需要使用三星ble api。目前,连接、读取数据、发送数据和从一个特性获取通知都可以。但是,当我为多个特征启用通知时,只有第一个启用的特征才能获得通知。有人有同样的问题吗?感谢你的帮助!

以下代码是启用连接通知

以下是 enableNotification 方法:

0 投票
2 回答
4242 浏览

android - android bluetooth LE - Why does the onReadRemoteRssi not work?

I want to continual read the rssi after gatt is connected.code like this:

the mGattCallback like this:

and onReadRemoteRssi does not work. ple tell me how to modify the code, or other solutions to read the rssi!

Thanks for your advise!

0 投票
0 回答
888 浏览

ios - IOS 蓝牙低功耗通用访问配置文件

我正在开发 iOS 蓝牙 LE 应用程序。该应用程序扫描外围设备并使用 LE 进行读/写。我正在寻找有关 GATT 和 GAP(通用访问配置文件)的教程/示例。我找不到任何初学者材料。

我希望有人可以回答我的问题:

  1. 访问这些服务(GATT 和 GAP)的最佳方式是什么?
  2. 有没有办法写/读那里的特征值(比如更改设备名称)?
  3. IOS7和IOS6对此有什么不同吗?
  4. 请问还有什么建议/帮助吗?

谢谢