问题标签 [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 投票
2 回答
5772 浏览

java - 蓝牙 LE Gatt 连接 Android 4.4 读取实时 RSSI

我正在尝试编写一个搜索多个蓝牙 LE 设备的小型 android 应用程序(4.4)。一旦找到需要连接的每个设备,然后尽可能快地不断读取每个设备的 RSSI。我一直试图让它与 6 台设备一起使用。我目前的代码如下:

}

我有以下问题:

1) 它成功连接到设备,但大约 5 秒后它们都断开连接,并出现“btm_sec_disconnected - 清除挂起标志”错误。有没有办法让他们保持联系?

2)代码适用于单个设备,但是当使用多个设备时,只有一个设备定期打印 RSSI 更新,其他设备随机更新,有些根本不更新。

3) 我不确定调用 device.connectGatt 时应该提供什么上下文。

提前感谢您的想法!

0 投票
3 回答
4259 浏览

android - 警报通知配置文件的 UUID - ANP(在 GATT 中),在低功耗蓝牙中

Alert Notification Profile (ANP) in Bluetooth Low Energy在三星 Galaxy S3 和外围设备之间工作。

我在Android Developer Site上找不到任何与特定 UUID 的 ANP相关的信息。

但是在ANCS Specifications (iOS Developer Site)中,他们定义了特定的 UUID 的 ANCS

Apple Notification Center Service 是主要服务,其服务 UUID 为 7905F431-B5CE-4E99-A40F-4B1E122D00D0。

我对此感到担心,所以任何人都可以告诉我:

What is specific UUID's ANP in Android?

P/s:从 Wiki 中的 UUID,我知道这一点:

任何人都可以创建一个 UUID 并使用它来识别某些东西,并且有理由相信任何人都不会无意地创建相同的标识符来识别其他东西。

但实际上,Google Developer 还没有确认具体的 UUID 的 ANP 吗?

0 投票
2 回答
2316 浏览

android - BLE GattServices

我正在开发一个应用程序,它试图将我的智能手机连接到具有 Gatt 的 BLE 设备(它可以是智能手机或 BLE 设备)并只读取一条数据。这些数据会动态变化,我想将这些数据保留为服务特征的值。我的主要目的是从客户端读取这些数据。由于我正在与 Gatt 联系,我认为唯一的方法是将这些数据存储为特征值。

如何从我为 BLE 设备创建的应用程序中向 BLE 设备添加服务和特性?我做了一项研究,从这里找到了一些有用的信息。但这可以帮助您为已连接的设备创建服务。请帮助我或给我一个想法。非常感谢

0 投票
1 回答
4729 浏览

android - 从 android 4.3 连接到 BLE113 时正在记录“客户端已注册,等待回调”

我正在尝试连接到 BlueGiga BLE113 设备和我的三星 Galaxy S4(Android 4.3)。我可以成功发现设备但无法连接和发现服务。这是按下按钮连接后的日志。

传递给 connectGatt 方法的回调如下。

0 投票
1 回答
3403 浏览

android - 在 Android 中写入 GATT 后的 BLE 回答

在android中通过蓝牙低功耗编写十六进制命令后,有没有办法得到答案?我在 gatt 上写了十六进制命令,这是我的写函数:

写入完成后,回调告诉我它是成功还是失败,但接收者会发回一个答案。目前只有检查成功与否,但我不想显示接收者的答案。有没有办法显示答案?

0 投票
1 回答
290 浏览

android - Android - 不稳定的蓝牙 LE (GATT)

现在我为通信设备和电话编写程序 - 蓝牙 GATT 协议(Android 4.3 HTC ONE)。面临与手机稳定连接的问题。我创建了一个连接所需设备的服务(如官方 Google 的示例)。服务创建一系列连接。当你第一次启动时,通常只有第一个连接的设备,但在重新启动软件和蓝牙后,一切都开始稳定工作。可能是什么问题呢?

0 投票
1 回答
988 浏览

android - Android 蓝牙低功耗 (BLE) API 尚未准备好迎接黄金时段

我正在开发一个支持两个 BLE 传感器(心率、步幅)的健身应用程序。我最终得到了两个有界服务(每个传感器一个),由我的主要活动调用和限制。这是在带有 KitKat 的 Nexus 7 II 上运行的。我花了几天时间试图让应用程序进入稳定状态。Gatt 连接和通知在干净重启后立即正常工作。我遇到的问题是在一个或两个设备断开连接并需要重新连接后让事情恢复到工作状态。由于其他人报告了类似的问题,我已经开发和测试了各种场景,包括在活动重新启动时保持服务和连接继续,关闭连接和服务器然后重新开始,只关闭而不断开连接,等待之前重新连接等。目前,使用一个传感器,我可以让应用程序在大多数情况下重新连接。使用两个传感器,大部分时间都不会重新建立连接。考虑到每周都有很多新的 BLE 设备,android BLE API 如此脆弱,真是太可惜了。我想知道其他人是否对多个 BLE 传感器很幸运,他们是否会分享他们的方法来让它工作。

0 投票
2 回答
7519 浏览

android - Android 如何读取 BLE 属性 Readable Writable Notifiable GATT 特性

如何读取BluetoothGattCharacteristic属性喜欢是特征ReadableWritable或者Notifiable

0 投票
3 回答
17375 浏览

linux - 低功耗蓝牙:使用 BlueZ 堆栈作为外围设备(具有自定义服务和特性)

我正在尝试在 Linux 机器上使用 BlueZ 堆栈来创建具有自定义服务和特性的 GATT 服务器。最终目标是使用任何中心设备(例如 iOS 或 Android 设备)连接到 GATT 服务器,发现服务和特征,并操作特征中的数据。

例子:

  • 具有 1 个服务的外设,其中包含 3 个特征。
  • 服务 uuid = 0xFFFF
  • 字符 1 uuid = 0xAAAA,属性 = 可读
  • Char 2 uuid = 0xBBBB,属性 = 可读和可写
  • 字符 3 uuid = 0xCCCC,属性 = 可通知

从中央设备,我应该看到外围设备,连接到它并发现一个具有三个特征(0xAAAA、0xBBBB、0xCCCC)的服务(0xFFFF)。然后我应该能够读取 0xAAAA 的值,读取和写入 0xBBBB 的值,并在 0xCCCC 上启用通知。

请注意,我知道存在类似的问题,但它仅说明了如何将外围设备用作广告商。另一个已解决的问题解释了如何创建 GATT 服务器,但没有解释如何使用特性的属性(例如可读性、可通知性等),或者我可能遗漏了一些东西。

先感谢您。

0 投票
2 回答
8839 浏览

android - Android:蓝牙低功耗 GATT 配置文件

我希望将信息从我的 Android 设备发送到微控制器(例如 Arduino)。使用蓝牙经典,我只需向微控制器发送一个字节数组数据,并相应地处理字节数组。

我开始阅读有关低功耗蓝牙的内容,并且听到所有关于 GATT 配置文件的讨论。为什么要创建 GATT 配置文件?在从 Android 设备交换信息到微控制器的情况下,GATT 配置文件对我有什么作用?

提前致谢!