Bluetooth event handling - FiPy
I can connect to my BLE peripheral device. on the required characteristic I start a char notify and send a command for the peripheral to perform a measurement. In the picture below the underlined event is a time/date message which is periodically sent. The highlighted messages are the three measurements in reply to the request.
My event handler does nothing except get the value an append it to an array called buffer.
def BLE_EVT_HAND(characteristic): global buffer buffer.append(characteristic.value())
To request and wait for the measurements the following is performed:
#send command to probe to undertake a measurement cmd=bytearray(struct.pack("<H", BLE_AGSENSOR_CONFIGURATION_OPCODE_START_MEASUREMENT)) char.write(cmd) #wait for probe measurements time.sleep(2)
The problem I have is that I only receive 2 of the three measurements and there are double triggers on the first and third, see picture below.
Any comment appreciated