History¶
history Module¶
This module provides some basic helper/formatting utilities, specifically targeted at decoding ReadHistoryData data.
-
class
decocare.history.AlarmPump(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
head_length= 4¶
-
opcode= 6¶
-
-
class
decocare.history.AlarmSensor(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecordGlucose sensor alarms. The second byte of the head represents the alarm type. The third byte contains an alarm-specific value.
For example, a “Low Glucose” alarm type is: [
0x0b, # 11: Opcode 0x66, # 102: Low glucose subtype 0x50 # 80: Glucose level (For a pump configured to mg/dL)]
-
alarm_types= {112: 'Weak Signal', 113: 'Lost Sensor', 115: 'Low Glucose Predicted', 101: 'High Glucose', 102: 'Low Glucose', 104: 'Meter BG Now', 105: 'Cal Reminder', 106: 'Calibration Error', 107: 'Sensor End'}¶
-
head_length= 3¶
-
opcode= 11¶
-
-
class
decocare.history.BGReceived(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 3¶
-
opcode= 63¶
-
-
class
decocare.history.BasalProfileStart(head, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 3¶
-
opcode= 123¶
-
-
class
decocare.history.Battery(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 26¶
-
-
class
decocare.history.BigBolusWizardChange(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 143¶
-
opcode= 90¶
-
-
class
decocare.history.BolusWizard512(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 12¶
-
opcode= 47¶
-
-
class
decocare.history.ChangeAlarmNotifyMode(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 0¶
-
opcode= 99¶
-
-
class
decocare.history.ChangeAudioBolus(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 95¶
-
-
class
decocare.history.ChangeBGReminderEnable(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 96¶
-
-
class
decocare.history.ChangeBasalProfile_new_profile(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 145¶
-
opcode= 9¶
-
-
class
decocare.history.ChangeBasalProfile_old_profile(head, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 145¶
-
opcode= 8¶
-
-
class
decocare.history.ChangeBolusWizardSetup(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 40¶
-
opcode= 79¶
-
-
class
decocare.history.ChangeCaptureEventEnable(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 131¶
-
-
class
decocare.history.ChangeMaxBasal(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 44¶
-
-
class
decocare.history.ChangeMazaheri2e(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 100¶
-
opcode= 46¶
-
-
class
decocare.history.ChangeOtherDeviceID(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 30¶
-
opcode= 125¶
-
-
class
decocare.history.ChangeParadigmLinkID(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 14¶
-
opcode= 60¶
-
-
class
decocare.history.ChangeRemoteID(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 39¶
-
-
class
decocare.history.ChangeTempBasalType(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 98¶
-
-
class
decocare.history.ChangeTime(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 23¶
-
-
class
decocare.history.ChangeTimeDisplay(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 100¶
-
-
class
decocare.history.ChangeWatchdogMarriageProfile(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 5¶
-
opcode= 129¶
-
-
class
decocare.history.ClearAlarm(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 12¶
-
-
class
decocare.history.ConnectDevicesOtherDevicesEnabled(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 124¶
-
-
class
decocare.history.DeleteOtherDeviceID(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 5¶
-
opcode= 130¶
-
-
class
decocare.history.EnableDisableRemote(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 14¶
-
opcode= 38¶
-
-
class
decocare.history.HistoryPage(raw, model)[source]¶ Bases:
decocare.history.PagedData
-
class
decocare.history.Ian50(head, model, **kwds)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 30¶
-
opcode= 80¶
-
-
class
decocare.history.Ian54(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 57¶
-
opcode= 84¶
-
-
class
decocare.history.Ian69(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 2¶
-
opcode= 105¶
-
-
class
decocare.history.IanA8(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
head_length= 10¶
-
opcode= 168¶
-
-
class
decocare.history.JournalEntryExerciseMarker(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecordCapture Event > Exercise marker
-
body_length= 1¶
-
opcode= 65¶
-
-
class
decocare.history.JournalEntryMealMarker(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecordCapture Event > Meal marker
-
body_length= 2¶
-
opcode= 64¶
-
-
class
decocare.history.JournalEntryOtherMarker(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecordCapture Event > Other
-
body_length= 0¶
-
opcode= 67¶
-
-
class
decocare.history.LowBattery(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 25¶
-
-
class
decocare.history.LowReservoir(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord>>> rec = LowReservoir( LowReservoir._test_1[:2] ) >>> decoded = rec.parse(LowReservoir._test_1) >>> print str(rec) LowReservoir 2012-12-07T11:02:43 head[2], body[0] op[0x34]
>>> print pformat(decoded) {'amount': 20.0}
-
opcode= 52¶
-
-
class
decocare.history.Model522ResultTotals(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 40¶
-
date_length= 2¶
-
head_length= 1¶
-
opcode= 109¶
-
-
class
decocare.history.NewTimeSet(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 24¶
-
-
class
decocare.history.OldBolusWizardChange(head, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 117¶
-
opcode= 90¶
-
-
class
decocare.history.PagedData(raw, model)[source]¶ Bases:
objectPagedData - context for parsing a page of cgm data.
-
class
decocare.history.PumpResume(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 31¶
-
-
class
decocare.history.PumpSuspend(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 30¶
-
-
class
decocare.history.ResultDailyTotal(head, larger=False)[source]¶ Bases:
decocare.records.base.InvalidRecordOn 722 this seems like two records.
-
date_length= 2¶
-
head_length= 5¶
-
opcode= 7¶
-
-
class
decocare.history.Rewind(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 33¶
-
-
class
decocare.history.Sara6E(head, larger=False)[source]¶ Bases:
decocare.history.Model522ResultTotalsSeems specific to 722?
-
body_length= 48¶
-
opcode= 110¶
-
-
class
decocare.history.SelectBasalProfile(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 20¶
-
-
class
decocare.history.SetAutoOff(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 27¶
-
-
class
decocare.history.SetBolusWizardEnabled(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 45¶
-
-
class
decocare.history.SettingSomething57(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 87¶
-
-
class
decocare.history.TempBasal(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 1¶
-
opcode= 51¶
-
-
class
decocare.history.TempBasalDuration(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 22¶
-
-
class
decocare.history.UnabsorbedInsulin512(head, model=None)[source]¶ Bases:
decocare.records.bolus.UnabsorbedInsulinBolus-
opcode= 48¶
-
-
decocare.history.decode_remote_id(msg)[source]¶ practice decoding some remote ids:
0x270x01 0xe2 0x400x03 0x42 0x2a0x28 0x0c 0x890x92 0x00 0x00 0x00>>> decode_remote_id(_remote_ids[0]) '123456'
>>> decode_remote_id(_remote_ids[1]) '213546'
>>> decode_remote_id(_remote_ids[2]) '821650'
-
class
decocare.history.hack51(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 81¶
-
-
class
decocare.history.hack52(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 82¶
-
-
class
decocare.history.hack53(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 1¶
-
opcode= 83¶
-
-
class
decocare.history.hack55(head, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 85¶
-
-
class
decocare.history.hack56(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
body_length= 5¶
-
opcode= 86¶
-
-
class
decocare.history.old6c(head, model, **kwds)[source]¶ Bases:
decocare.history.Model522ResultTotals-
opcode= 108¶
-
-
decocare.history.parse_record(fd, head=bytearray(b''), larger=False, model=None)[source]¶ Given a file-like object, and the head of a record, parse the rest of the record. Look up the type of record, read in just enough data to parse it, return the result.
-
class
decocare.history.questionable22(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 34¶
-
-
class
decocare.history.questionable23(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 35¶
-
-
class
decocare.history.questionable24(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 36¶
-
-
class
decocare.history.questionable3b(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 59¶
-
-
class
decocare.history.questionable5e(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 94¶
-
-
class
decocare.history.questionable61(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 97¶
-
-
class
decocare.history.questionable65(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 101¶
-
-
class
decocare.history.questionable66(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 102¶
-
-
class
decocare.history.questionable6f(head=bytearray(b''), model=None, larger=False)[source]¶ Bases:
decocare.records.base.KnownRecord-
opcode= 111¶
-