0

我的设备是 BLE。我想使用 pygattlib 读取数据。现在我可以读取数据,但数据不会因为通知关闭而改变。那么如何使用pygattlib开启通知呢?

import sys
import time
from gattlib import GATTRequester


class Reader(object):
    def __init__(self, address):
        self.requester = GATTRequester(address, False)
        self.connect()

        # read
        t_start = time.time()
        while True:
            if time.time() - t_start >= 3:
                break
            self.request_data()

    def connect(self):
        print("Connecting...", end=' ')
        sys.stdout.flush()
        self.requester.connect(True, channel_type='random')
        print("OK!")

    def request_data(self):
        data = self.requester.read_by_uuid('XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX')[0]
        print("bytes received: {}".format(data.hex()))


if __name__ == '__main__':
    Reader('XX:XX:XX:XX:XX:XX')
    print("Done.")
4

0 回答 0