summaryrefslogtreecommitdiffstats
path: root/glucometerutils/drivers/fsinsulinx.py
diff options
context:
space:
mode:
Diffstat (limited to 'glucometerutils/drivers/fsinsulinx.py')
-rw-r--r--glucometerutils/drivers/fsinsulinx.py55
1 files changed, 34 insertions, 21 deletions
diff --git a/glucometerutils/drivers/fsinsulinx.py b/glucometerutils/drivers/fsinsulinx.py
index f3cf043..5465b3a 100644
--- a/glucometerutils/drivers/fsinsulinx.py
+++ b/glucometerutils/drivers/fsinsulinx.py
@@ -22,20 +22,30 @@ import datetime
from glucometerutils import common
from glucometerutils.support import freestyle
-
# The type is a string because it precedes the parsing of the object.
-_TYPE_GLUCOSE_READING = '0'
-
-_InsulinxReading = collections.namedtuple('_InsulinxReading', (
- 'type', # 0 = blood glucose
- 'id',
- 'month', 'day', 'year', # year is two-digits
- 'hour', 'minute',
- 'unknown1', 'unknown2', 'unknown3',
- 'unknown4', 'unknown5', 'unknown6',
- 'value',
- 'unknown7', 'unknown8',
-))
+_TYPE_GLUCOSE_READING = "0"
+
+_InsulinxReading = collections.namedtuple(
+ "_InsulinxReading",
+ (
+ "type", # 0 = blood glucose
+ "id",
+ "month",
+ "day",
+ "year", # year is two-digits
+ "hour",
+ "minute",
+ "unknown1",
+ "unknown2",
+ "unknown3",
+ "unknown4",
+ "unknown5",
+ "unknown6",
+ "value",
+ "unknown7",
+ "unknown8",
+ ),
+)
class Device(freestyle.FreeStyleHidDevice):
@@ -46,11 +56,11 @@ class Device(freestyle.FreeStyleHidDevice):
def get_meter_info(self):
"""Return the device information in structured form."""
return common.MeterInfo(
- 'FreeStyle InsuLinx',
+ "FreeStyle InsuLinx",
serial_number=self.get_serial_number(),
- version_info=(
- 'Software version: ' + self._get_version(),),
- native_unit=self.get_glucose_unit())
+ version_info=("Software version: " + self._get_version(),),
+ native_unit=self.get_glucose_unit(),
+ )
def get_glucose_unit(self): # pylint: disable=no-self-use
"""Returns the glucose unit of the device."""
@@ -58,7 +68,7 @@ class Device(freestyle.FreeStyleHidDevice):
def get_readings(self):
"""Iterate through the reading records in the device."""
- for record in self._get_multirecord(b'$result?'):
+ for record in self._get_multirecord(b"$result?"):
if not record or record[0] != _TYPE_GLUCOSE_READING:
continue
@@ -67,11 +77,14 @@ class Device(freestyle.FreeStyleHidDevice):
raw_reading = _InsulinxReading._make([int(v) for v in record])
timestamp = datetime.datetime(
- raw_reading.year + 2000, raw_reading.month, raw_reading.day,
- raw_reading.hour, raw_reading.minute)
+ raw_reading.year + 2000,
+ raw_reading.month,
+ raw_reading.day,
+ raw_reading.hour,
+ raw_reading.minute,
+ )
yield common.GlucoseReading(timestamp, raw_reading.value)
def zero_log(self):
raise NotImplementedError
-