I want to connect two nrf52840 device and raspberry pi. When connecting to a single device, it works fine. However, when connecting with two devices, an error occurs and stops.
The rx uuids of the two devices are different.
Here is my python code
def read_left_data(self):
left_thread = threading.Thread(target=self.left_data)
left_thread.start()
def left_data(self):
try:
left_adapter.start()
#left mac address : DF:BB:3A:13:EE:1D
#right mac address : C4:78:6A:80:D7:A7
left_device = left_adapter.connect('DF:BB:3A:13:EE:1D', address_type=pygatt.BLEAddressType.random)
#read value nordic tx uuid
while True:
#left tx uuid : 6e40ABCD-b5a3-f393-e0a9-e50e24dcca9e
#right tx uuid : 6e400003-b5a3-f393-e0a9-e50e24dcca9e
value = left_device.char_read("6e40ABCD-b5a3-f393-e0a9-e50e24dcca9e")
receive_data = hexlify(value) #get value
receive_data = receive_data.decode('utf-8') #remove hex 'b'
#do something with receive_data
if I connect another device this error occurs and stops
Exception in thread Thread-3: Traceback (most recent call last): File "/usr/local/lib/python3.6/threading.py", line 916, in _bootstrap_inner self.run() File "/usr/local/lib/python3.6/threading.py", line 864, in run self._target(*self._args, **self._kwargs) File "qttest_right.py", line 91, in rightData value = rightDevice.char_read("6e40ABCD-b5a3-f393-e0a9-e50e24dcca9e") File "/usr/local/lib/python3.6/site-packages/pygatt/backends/gatttool/device.py", line 17, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/pygatt/backends/gatttool/device.py", line 40, in char_read return self._backend.char_read(self, uuid, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/pygatt/backends/gatttool/gatttool.py", line 50, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/pygatt/backends/gatttool/gatttool.py", line 593, in char_read self.sendline('char-read-uuid %s' % uuid) File "/usr/local/lib/python3.6/contextlib.py", line 88, in __exit__ next(self.gen) File "/usr/local/lib/python3.6/site-packages/pygatt/backends/gatttool/gatttool.py", line 191, in event self.wait(event, timeout) File "/usr/local/lib/python3.6/site-packages/pygatt/backends/gatttool/gatttool.py", line 157, in wait raise NotificationTimeout() pygatt.exceptions.NotificationTimeout: None
How can I solve this error?