diff options
Diffstat (limited to 'glucometerutils/drivers')
-rw-r--r-- | glucometerutils/drivers/fslibre.py | 14 | ||||
-rw-r--r-- | glucometerutils/drivers/fsprecisionneo.py | 8 |
2 files changed, 8 insertions, 14 deletions
diff --git a/glucometerutils/drivers/fslibre.py b/glucometerutils/drivers/fslibre.py index 5031a04..85bfdab 100644 --- a/glucometerutils/drivers/fslibre.py +++ b/glucometerutils/drivers/fslibre.py @@ -101,18 +101,6 @@ def _extract_timestamp(parsed_record, prefix=''): parsed_record[prefix + 'second']) -def _convert_ketone_unit(raw_value): - """Convert raw ketone value as read in the device to its value in mmol/L. - - As per - https://flameeyes.github.io/glucometer-protocols/abbott/freestyle-libre.html - this is actually not using any mg/dL→mmol/L conversion, but rather the same - as the meter uses for blood glucose. - - """ - return raw_value // 18 - - def _parse_arresult(record): """Takes an array of string fields as input and parses it into a Reading.""" @@ -160,7 +148,7 @@ def _parse_arresult(record): measure_method = common.MeasurementMethod.BLOOD_SAMPLE cls = common.KetoneReading # automatically convert the raw value in mmol/L - value = _convert_ketone_unit(parsed_record['value']) + value = freestyle.convert_ketone_unit(parsed_record['value']) else: # unknown reading return None diff --git a/glucometerutils/drivers/fsprecisionneo.py b/glucometerutils/drivers/fsprecisionneo.py index b818f8f..15be65c 100644 --- a/glucometerutils/drivers/fsprecisionneo.py +++ b/glucometerutils/drivers/fsprecisionneo.py @@ -89,4 +89,10 @@ class Device(freestyle.FreeStyleHidDevice): raw_reading.year + 2000, raw_reading.month, raw_reading.day, raw_reading.hour, raw_reading.minute) - yield cls(timestamp, raw_reading.value) + if record and record[0] == _TYPE_KETONE_READING: + value = freestyle.convert_ketone_unit(raw_reading.value) + else: + value = raw_reading.value + + yield cls(timestamp, value) + |