From 937b21257a38599f89ab839cec1ee632e920c040 Mon Sep 17 00:00:00 2001 From: Dan Halbert Date: Wed, 29 Apr 2020 23:45:16 -0400 Subject: [PATCH 1/2] disable pypi; hack fix for namedtuple doc --- adafruit_ble_heart_rate.py | 8 ++++---- setup.py => setup.py.disabled | 0 2 files changed, 4 insertions(+), 4 deletions(-) rename setup.py => setup.py.disabled (100%) diff --git a/adafruit_ble_heart_rate.py b/adafruit_ble_heart_rate.py index 5ad0065..499b524 100644 --- a/adafruit_ble_heart_rate.py +++ b/adafruit_ble_heart_rate.py @@ -58,20 +58,20 @@ ) """Namedtuple for measurement values. -.. :attribute:: heart_rate: +* `HeartRateMeasurementValues.heart_rate` Heart rate (int), in beats per minute. -.. :attribute:: contact: +* `HeartRateMeasurementValues.contact` ``True`` if device is contacting the body, ``False`` if not, ``None`` if device does not support contact detection. -.. :attribute:: energy_expended: +* `HeartRateMeasurementValues.energy_expended` Energy expended (int), in kilo joules, or ``None`` if no value. -.. :attribute:: rr_intervals: +* `HeartRateMeasurementValues.rr_intervals` Sequence of RR intervals, measuring the time between beats. Oldest first, in ints that are units of 1024ths of a second. diff --git a/setup.py b/setup.py.disabled similarity index 100% rename from setup.py rename to setup.py.disabled From ecaed4f762d46237223d8454b6474f6693233d27 Mon Sep 17 00:00:00 2001 From: Dan Halbert Date: Wed, 29 Apr 2020 23:55:16 -0400 Subject: [PATCH 2/2] def creating buffer until required and MTU known --- adafruit_ble_heart_rate.py | 9 ++++++--- setup.py.disabled => setup.py | 0 2 files changed, 6 insertions(+), 3 deletions(-) rename setup.py.disabled => setup.py (100%) diff --git a/adafruit_ble_heart_rate.py b/adafruit_ble_heart_rate.py index 499b524..55992bf 100644 --- a/adafruit_ble_heart_rate.py +++ b/adafruit_ble_heart_rate.py @@ -139,9 +139,8 @@ class HeartRateService(Service): def __init__(self, service=None): super().__init__(service=service) - self._measurement_buf = bytearray( - self.heart_rate_measurement.packet_size # pylint: disable=no-member - ) + # Defer creating buffer until needed. + self._measurement_buf = None @property def measurement_values(self): @@ -150,6 +149,10 @@ def measurement_values(self): Return ``None`` if no packet has been read yet. """ + if self._measurement_buf is None: + self._measurement_buf = bytearray( + self.heart_rate_measurement.packet_size # pylint: disable=no-member + ) buf = self._measurement_buf packet_length = self.heart_rate_measurement.readinto( # pylint: disable=no-member buf diff --git a/setup.py.disabled b/setup.py similarity index 100% rename from setup.py.disabled rename to setup.py