应用程序找不到具有readproperty的GATT特征

2024-04-29 15:29:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试开发一个应用程序,它使用BLE与外部设备通信。我决定使用pygatt(Python)和{}(使用bluegigadongle)。在

我正在与之通信的设备有一个具有一组特征的自定义主服务。根据它们的规格,它们有2个读特性,8个通知字符和1个写入字符。最初,我想读两个read char中的一个,但我不能这样做。他们的UUID不被视为特征。这是怎么回事?我百分之百肯定他们输入的是正确的。在

import pygatt
import bleconnect
import blelib
import logging


logging.basicConfig()
logging.getLogger('pygatt').setLevel(logging.DEBUG)

adapter = pygatt.BGAPIBackend(serial_port='/dev/tty.usbmodem1')
adapter.start()

# Find the device
result = adapter.scan(timeout=5)
for item in result:
    scan_name = item['name']
    scan_rssi = item['rssi']
    scan_address = item['address']
    if scan_name == bleconnect.TARGET_NAME:
        break

# Connect
device = adapter.connect(address=scan_address)
device.char_read(blelib.CHARACTERISTIC_DEVICE_FEATURES)

我可以在调试消息中看到,找到了所有的NOTIFY和WRITE特性,但没有找到这两个READ特性。在

我错过了什么?


Tags: nameimportreadscanadapteraddressdevicelogging