diff --git a/base.py b/base.py index 0b4b3cf..aff728e 100644 --- a/base.py +++ b/base.py @@ -453,6 +453,9 @@ def start_heart_rate_realtime(self, heart_measure_callback): t = time.time() def start_raw_data_realtime(self, heart_measure_callback=None, heart_raw_callback=None, accel_raw_callback=None): + char_sensor1 = self.svc_1.getCharacteristics(UUIDS.CHARACTERISTIC_HZ)[0] + char_sens_d1 = char_sensor1.getDescriptors(forUUID=UUIDS.NOTIFICATION_DESCRIPTOR)[0] + char_m = self.svc_heart.getCharacteristics(UUIDS.CHARACTERISTIC_HEART_RATE_MEASURE)[0] char_d = char_m.getDescriptors(forUUID=UUIDS.NOTIFICATION_DESCRIPTOR)[0] char_ctrl = self.svc_heart.getCharacteristics(UUIDS.CHARACTERISTIC_HEART_RATE_CONTROL)[0] @@ -465,41 +468,23 @@ def start_raw_data_realtime(self, heart_measure_callback=None, heart_raw_callbac self.accel_raw_callback = accel_raw_callback char_sensor = self.svc_1.getCharacteristics(UUIDS.CHARACTERISTIC_SENSOR)[0] - # char_sens_d = char_sensor1.getDescriptors(forUUID=UUIDS.NOTIFICATION_DESCRIPTOR)[0] - - # char_sensor2 = self.svc_1.getCharacteristics('000000010000351221180009af100700')[0] - # char_sens_d2 = char_sensor2.getDescriptors(forUUID=UUIDS.NOTIFICATION_DESCRIPTOR)[0] - - # char_sensor3 = self.svc_1.getCharacteristics('000000070000351221180009af100700')[0] - # char_sens_d3 = char_sensor3.getDescriptors(forUUID=UUIDS.NOTIFICATION_DESCRIPTOR)[0] - - # char_sens_d1.write(b'\x01\x00', True) - # char_sens_d2.write(b'\x01\x00', True) - # char_sensor2.write(b'\x01\x03\x19') - # char_sens_d2.write(b'\x00\x00', True) - # char_d.write(b'\x01\x00', True) - # char_ctrl.write(b'\x15\x01\x01', True) - # char_sensor2.write(b'\x02') - # stop heart monitor continues & manual char_ctrl.write(b'\x15\x02\x00', True) char_ctrl.write(b'\x15\x01\x00', True) - # WTF - # char_sens_d1.write(b'\x01\x00', True) - # enabling accelerometer & heart monitor raw data notifications + char_sens_d1.write(b'\x01\x00', True) char_sensor.write(b'\x01\x03\x19') - # IMO: enablee heart monitor notifications char_d.write(b'\x01\x00', True) - # start hear monitor continues char_ctrl.write(b'\x15\x01\x01', True) - # WTF char_sensor.write(b'\x02') + t = time.time() while True: self.waitForNotifications(0.5) self._parse_queue() # send ping request every 12 sec if (time.time() - t) >= 12: + char_sensor.write(b'\x01\x03\x19') + char_sensor.write(b'\x02') char_ctrl.write(b'\x16', True) t = time.time()