Some Bolus History Data Not Correct From mm-latest.py3
In reading the data from a 723 pump, I m getting 90%+ of the bolus history correct from mm-latest.py, but a couple of data points are well off. Here is an example.
Here, the bolus amount should be 11 units, and the carb ratio should be 9. I attached a jpg of the pump bolus history itself below. Again, most of the bolus data points are perfect.
I am trying to get bolus history to do on board insulin calculations hence my need for the data.
Newer pumps like the 723 do have this as a parameter and that may be easier to get, but I am not sure where to start in terms of figuring out a new command. Im guessing its in there somewhere.
Thanks for any help / insights into either why the bolus history is wrong or how to grab the onboard insulin number.
{ "_type": "BolusWizard", "bg": 0, "bg_target_high": 90, "_description": "BolusWizard 2014-11-08T10:11:57 head[2], body[15] op[0x5b]", "timestamp": "2014-11-08T10:11:57", "sensitivity": 65, "bg_target_low": 110, "carb_ratio": 12.0, "food_estimate": 4.7, "unabsorbed_insulin_total": 0.0, "correction_estimate": 0.0, "carb_input": 100, "bolus_estimate": 4.7 }, { "_type": "Bolus", "_description": "Bolus 2014-11-08T10:11:57 head[8], body[0] op[0x01]", "timestamp": "2014-11-08T10:11:57", "programmed": 4.7, "amount": 4.7, "unabsorbed": 0.0, "duration": 0, "type": "normal"
Can you run mm-send-comm.py tweak ReadHistoryData --page 0 --save, and run python list_history.py --larger ReadHistoryData-page-0.data and posting the result in here or on gist?
yes will do in am! Thanks!
Ben - no joy - I dont think its getting any data - here is what happened - when I run latest Im clearly getting history data
to get the command to run I had to use this below which I think is OK - I need to give it the port and serial directly - it doesnt seem to take it from the environment for some reason. Maybe this is my issue?
sudo ./bin/mm-send-comm.py --init --port /dev/ttyUSB0 --serial XXXXXX tweak ReadHistoryData --save
it then generates a file called ReadHistoryData-page-None.data, which Im guessing is null because below is the result of the python call
kenstack@ubuntu:~/decoding-carelink$ sudo python list_history.py --larger ReadHistoryData-page-None.data
START ReadHistoryData-page-None.data
STOPPING DOUBLE NULLS @ 2, found 0 nulls
reading more to debug 0x00 0000 0x00 0x00 .. 0 0
DEBUG HEX
DEBUG DECIMAL
end ReadHistoryData-page-None.data: 0 records
tweak ReadHistoryData requires --page 0 or some page argument after.
my bad!!
here is the output to the console - it looked like it only grabbed basal info which I was just changing. Do I need to go back more pages to yesterday?
kenstack@ubuntu:~/decoding-carelink$ sudo python list_history.py --larger ReadHistoryData-page-0.data
START ReadHistoryData-page-0.data
STOPPING DOUBLE NULLS @ 316, found 706 nulls
reading more to debug 0x00 0000 0x00 0x00 .. 0 0
DEBUG HEX
0000 0xe6 0xbc ..
DEBUG DECIMAL
230 188
RECORD 0 ChangeBasalProfile 2014-11-09T14:34:03 head[2], body[145] op[0x08]
DECODED
[{'offset': 0, 'rate': 1.1},
{'offset': 14400000, 'rate': 1.6500000000000001},
{'offset': 23400000, 'rate': 1.8},
{'offset': 27000000, 'rate': 1.6500000000000001},
{'offset': 32400000, 'rate': 1.4000000000000001},
{'offset': 43200000, 'rate': 1.5},
{'offset': 48600000, 'rate': 1.5},
{'offset': 54000000, 'rate': 1.55},
{'offset': 61200000, 'rate': 1.6500000000000001},
{'offset': 73800000, 'rate': 1.6500000000000001},
{'offset': 79200000, 'rate': 1.6}]
op hex (2)
0000 0x08 0x0b ..
decimal
8 11
datetime (2014-11-09T14:34:03)
0000 0x83 0xe2 0x0e 0x09 0x0e .....
body (145)
hex
0000 0x00 0x2c 0x00 0x08 0x42 0x00 0x0d 0x48 .,..B..H
0008 0x00 0x0f 0x42 0x00 0x12 0x38 0x00 0x18 ..B..8..
0010 0x3c 0x00 0x1b 0x3c 0x00 0x1e 0x3e 0x00 <..<..>.
0018 0x22 0x42 0x00 0x29 0x42 0x00 0x2c 0x40 "B.)B.,@
0020 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0028 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0030 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0038 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0040 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0048 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0050 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0058 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0060 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0068 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0070 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0078 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0080 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0088 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0090 0x00 .
decimal
0 44 0 8 66 0 13 72
0 15 66 0 18 56 0 24
60 0 27 60 0 30 62 0
34 66 0 41 66 0 44 64
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0
HOUR BITS: [1, 1, 1]
RECORD 1 DanaScott0x09 2014-11-09T14:34:03 head[2], body[145] op[0x09]
DECODED
[{'offset': 0, 'rate': 1.1},
{'offset': 14400000, 'rate': 1.6500000000000001},
{'offset': 23400000, 'rate': 1.8},
{'offset': 27000000, 'rate': 1.6500000000000001},
{'offset': 32400000, 'rate': 1.4000000000000001},
{'offset': 43200000, 'rate': 1.5},
{'offset': 48600000, 'rate': 1.5},
{'offset': 54000000, 'rate': 1.55},
{'offset': 61200000, 'rate': 1.6500000000000001},
{'offset': 73800000, 'rate': 1.55},
{'offset': 79200000, 'rate': 1.55}]
op hex (2)
0000 0x09 0x0b ..
decimal
9 11
datetime (2014-11-09T14:34:03)
0000 0x83 0xe2 0x0e 0x09 0x0e .....
body (145)
hex
0000 0x00 0x2c 0x00 0x08 0x42 0x00 0x0d 0x48 .,..B..H
0008 0x00 0x0f 0x42 0x00 0x12 0x38 0x00 0x18 ..B..8..
0010 0x3c 0x00 0x1b 0x3c 0x00 0x1e 0x3e 0x00 <..<..>.
0018 0x22 0x42 0x00 0x29 0x3e 0x00 0x2c 0x3e "B.)>.,>
0020 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0028 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0030 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0038 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0040 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0048 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0050 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0058 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0060 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0068 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0070 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0078 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0080 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0088 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0090 0x00 .
decimal
0 44 0 8 66 0 13 72
0 15 66 0 18 56 0 24
60 0 27 60 0 30 62 0
34 66 0 41 62 0 44 62
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0
HOUR BITS: [1, 1, 1]
RECORD 2 BasalProfileStart 2014-11-09T14:34:04 head[2], body[3] op[0x7b]
DECODED
{'offset': 48600000, 'rate': 1.5}
op hex (2)
0000 0x7b 0x06 {.
decimal
123 6
datetime (2014-11-09T14:34:04)
0000 0x84 0xe2 0x0e 0x09 0x0e .....
body (3)
hex
0000 0x1b 0x3c 0x00 .<.
decimal
27 60 0
HOUR BITS: [1, 1, 1]
end ReadHistoryData-page-0.data: 3 records
Yeah, try page 1, looks like you just rolled over a new page.
it was on page 2 actually - its the bolus from 1011 am was supposed to be 11 units
THANKS!
START ReadHistoryData-page-2.data
RECORD 0 Bolus 2014-11-07T19:26:34 head[8], body[0] op[0x01]
DECODED
{'amount': 4.5,
'duration': 0,
'programmed': 4.5,
'type': 'normal',
'unabsorbed': 2.05}
op hex (8)
0000 0x01 0x00 0xb4 0x00 0xb4 0x00 0x52 0x00 ......R.
decimal
1 0 180 0 180 0 82 0
datetime (2014-11-07T19:26:34)
0000 0xa2 0xda 0x33 0x07 0x0e ..3..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 1 BolusWizard 2014-11-07T19:33:31 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 0.3,
'carb_input': 67,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 0.3,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-07T19:33:31)
0000 0x9f 0xe1 0x13 0x07 0x0e .....
body (15)
hex
0000 0x43 0x50 0x00 0x64 0x35 0x6e 0x00 0x01 CP.d5n..
0008 0x0c 0x00 0x00 0x00 0x01 0x0c 0x78 ......x
decimal
67 80 0 100 53 110 0 1
12 0 0 0 1 12 120
HOUR BITS: [1, 1, 1]
RECORD 2 UnabsorbedInsulinBolus unknown head[23], body[0] op[0x5c]
DECODED
[{'age': 9, 'amount': 4.5, 'curve': 192},
{'age': 119, 'amount': 6.35, 'curve': 192},
{'age': 129, 'amount': 0.65, 'curve': 192},
{'age': 189, 'amount': 1.8, 'curve': 192},
{'age': 199, 'amount': 0.1, 'curve': 193},
{'age': 213, 'amount': 0.4, 'curve': 208},
{'age': 223, 'amount': 4.5, 'curve': 209}]
op hex (23)
0000 0x5c 0x17 0xb4 0x09 0xc0 0xfe 0x77 0xc0 \.....w.
0008 0x1a 0x81 0xc0 0x48 0xbd 0xc0 0x04 0xc7 ...H....
0010 0xc1 0x10 0xd5 0xd0 0xb4 0xdf 0xd1 .......
decimal
92 23 180 9 192 254 119 192
26 129 192 72 189 192 4 199
193 16 213 208 180 223 209
datetime (unknown)
body (0)
RECORD 3 Bolus 2014-11-07T19:33:32 head[8], body[0] op[0x01]
DECODED
{'amount': 0.3,
'duration': 0,
'programmed': 0.3,
'type': 'normal',
'unabsorbed': 6.25}
op hex (8)
0000 0x01 0x01 0x0c 0x01 0x0c 0x00 0xfa 0x00 ........
decimal
1 1 12 1 12 0 250 0
datetime (2014-11-07T19:33:32)
0000 0xa0 0xe1 0x33 0x07 0x0e ..3..
body (0)
HOUR BITS: [1, 1, 1]
RECORD 4 BasalProfileStart 2014-11-07T20:30:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 73800000, 'rate': 1.6500000000000001}
op hex (2)
0000 0x7b 0x09 {.
decimal
123 9
datetime (2014-11-07T20:30:00)
0000 0x80 0xde 0x14 0x07 0x0e .....
body (3)
hex
0000 0x29 0x42 0x00 )B.
decimal
41 66 0
HOUR BITS: [1, 1, 0]
RECORD 5 Rewind 2014-11-07T22:50:24 head[2], body[0] op[0x21]
op hex (2)
0000 0x21 0x00 !.
decimal
33 0
datetime (2014-11-07T22:50:24)
0000 0x98 0xf2 0x16 0x07 0x0e .....
body (0)
HOUR BITS: [1, 1, 1]
RECORD 6 Prime 2014-11-07T22:52:28 head[5], body[0] op[0x03]
DECODED
{'amount': 13.3, 'fixed': 0.0, 'type': 'manual'}
op hex (5)
0000 0x03 0x00 0x00 0x00 0x85 .....
decimal
3 0 0 0 133
datetime (2014-11-07T22:52:28)
0000 0x9c 0xf4 0x36 0x07 0x0e ..6..
body (0)
HOUR BITS: [1, 1, 1]
RECORD 7 BasalProfileStart 2014-11-07T22:56:18 head[2], body[3] op[0x7b]
DECODED
{'offset': 73800000, 'rate': 1.6500000000000001}
op hex (2)
0000 0x7b 0x09 {.
decimal
123 9
datetime (2014-11-07T22:56:18)
0000 0x92 0xf8 0x16 0x07 0x0e .....
body (3)
hex
0000 0x29 0x42 0x00 )B.
decimal
41 66 0
HOUR BITS: [1, 1, 1]
RECORD 8 Prime 2014-11-07T22:55:52 head[5], body[0] op[0x03]
DECODED
{'amount': 0.7, 'fixed': 0.7, 'type': 'fixed'}
op hex (5)
0000 0x03 0x00 0x07 0x00 0x07 .....
decimal
3 0 7 0 7
datetime (2014-11-07T22:55:52)
0000 0xb4 0xf7 0x16 0x07 0x0e .....
body (0)
HOUR BITS: [1, 1, 1]
RECORD 9 BasalProfileStart 2014-11-08T00:00:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 0, 'rate': 1.1}
op hex (2)
0000 0x7b 0x00 {.
decimal
123 0
datetime (2014-11-08T00:00:00)
0000 0x80 0xc0 0x00 0x08 0x0e .....
body (3)
hex
0000 0x00 0x2c 0x00 .,.
decimal
0 44 0
HOUR BITS: [1, 1, 0]
RECORD 10 MResultTotals 2014-11-08T00:00:00 head[5], body[3] op[0x07]
op hex (5)
0000 0x07 0x00 0x00 0x0c 0x52 ....R
decimal
7 0 0 12 82
datetime (2014-11-08T00:00:00)
0000 0xa7 0x8e ..
body (3)
hex
0000 0x00 0x00 0x00 ...
decimal
0 0 0
HOUR BITS: [1, 0, 0]
RECORD 11 Sara6E 2014-11-08T00:00:00 head[1], body[49] op[0x6e]
op hex (1)
0000 0x6e n
decimal
110
datetime (2014-11-08T00:00:00)
0000 0xa7 0x8e ..
body (49)
hex
0000 0x05 0x00 0x83 0x75 0x83 0x03 0x00 0x00 ...u....
0008 0x0c 0x52 0x05 0x8e 0x2d 0x06 0xc4 0x37 .R..-..7
0010 0x01 0x9b 0x05 0xe8 0x00 0x00 0x00 0xdc ........
0018 0x00 0x00 0x06 0x00 0x01 0x00 0x00 0x00 ........
0020 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x91 ........
0028 0x91 0x00 0x00 0x00 0x00 0x00 0x00 0x00 ........
0030 0x00 .
decimal
5 0 131 117 131 3 0 0
12 82 5 142 45 6 196 55
1 155 5 232 0 0 0 220
0 0 6 0 1 0 0 0
0 0 0 0 0 0 0 145
145 0 0 0 0 0 0 0
0
HOUR BITS: [1, 0, 0]
RECORD 12 CalBGForPH 2014-11-08T00:28:02 head[2], body[0] op[0x0a]
DECODED
{'amount': 107}
op hex (2)
0000 0x0a 0x6b .k
decimal
10 107
datetime (2014-11-08T00:28:02)
0000 0x82 0xdc 0x20 0x08 0x0e .. ..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 13 BolusWizard 2014-11-08T00:28:05 head[2], body[15] op[0x5b]
DECODED
{'bg': 107,
'bg_target_high': 140,
'bg_target_low': 110,
'bolus_estimate': 0.0,
'carb_input': 0,
'carb_ratio': 12.0,
'correction_estimate': -0.05,
'food_estimate': 0.0,
'sensitivity': 70,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x6b [k
decimal
91 107
datetime (2014-11-08T00:28:05)
0000 0x85 0xdc 0x00 0x08 0x0e .....
body (15)
hex
0000 0x00 0x50 0x00 0x8c 0x46 0x6e 0xfe 0x00 .P..Fn..
0008 0x00 0xf8 0x00 0x00 0x00 0x00 0x78 ......x
decimal
0 80 0 140 70 110 254 0
0 248 0 0 0 0 120
HOUR BITS: [1, 1, 0]
RECORD 14 UnabsorbedInsulinBolus unknown head[14], body[0] op[0x5c]
DECODED
[{'age': 38, 'amount': 6.0, 'curve': 208},
{'age': 48, 'amount': 5.2, 'curve': 208},
{'age': 158, 'amount': 6.35, 'curve': 208},
{'age': 168, 'amount': 0.65, 'curve': 208}]
op hex (14)
0000 0x5c 0x0e 0xf0 0x26 0xd0 0xd0 0x30 0xd0 \..&..0.
0008 0xfe 0x9e 0xd0 0x1a 0xa8 0xd0 ......
decimal
92 14 240 38 208 208 48 208
254 158 208 26 168 208
datetime (unknown)
body (0)
RECORD 15 TempBasal 2014-11-08T00:44:20 head[2], body[1] op[0x33]
DECODED
{'rate': 0.375}
op hex (2)
0000 0x33 0x0f 3.
decimal
51 15
datetime (2014-11-08T00:44:20)
0000 0x94 0xec 0x00 0x08 0x0e .....
body (1)
hex
0000 0x08 .
decimal
8
HOUR BITS: [1, 1, 1]
RECORD 16 TempBasalDuration 2014-11-08T00:44:20 head[2], body[0] op[0x16]
DECODED
{'duration (min)': 120}
op hex (2)
0000 0x16 0x04 ..
decimal
22 4
datetime (2014-11-08T00:44:20)
0000 0x94 0xec 0x00 0x08 0x0e .....
body (0)
HOUR BITS: [1, 1, 1]
RECORD 17 BolusWizard 2014-11-08T01:07:09 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 140,
'bg_target_low': 110,
'bolus_estimate': 1.4,
'carb_input': 20,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 1.4,
'sensitivity': 70,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T01:07:09)
0000 0x89 0xc7 0x01 0x08 0x0e .....
body (15)
hex
0000 0x14 0x50 0x00 0x8c 0x46 0x6e 0x00 0x00 .P..Fn..
0008 0x38 0x00 0x00 0x00 0x00 0x38 0x78 8....8x
decimal
20 80 0 140 70 110 0 0
56 0 0 0 0 56 120
HOUR BITS: [1, 1, 0]
RECORD 18 UnabsorbedInsulinBolus unknown head[14], body[0] op[0x5c]
DECODED
[{'age': 77, 'amount': 6.0, 'curve': 208},
{'age': 87, 'amount': 5.2, 'curve': 208},
{'age': 197, 'amount': 6.35, 'curve': 208},
{'age': 207, 'amount': 0.65, 'curve': 208}]
op hex (14)
0000 0x5c 0x0e 0xf0 0x4d 0xd0 0xd0 0x57 0xd0 \..M..W.
0008 0xfe 0xc5 0xd0 0x1a 0xcf 0xd0 ......
decimal
92 14 240 77 208 208 87 208
254 197 208 26 207 208
datetime (unknown)
body (0)
RECORD 19 Base (2014, 11, 8, 1, 7, 42) head[2], body[0] op[0x68]
op hex (2)
0000 0x68 0xc5 h.
decimal
104 197
datetime ((2014, 11, 8, 1, 7, 42))
0000 0xaa 0xc7 0x61 0x08 0x0e ..a..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 20 MResultTotals 2001-12-08T00:00:00 head[5], body[3] op[0x07]
op hex (5)
0000 0x07 0x00 0x67 0xc5 0xba ..g..
decimal
7 0 103 197 186
datetime (2001-12-08T00:00:00)
0000 0xc7 0x61 .a
body (3)
hex
0000 0x08 0x0e 0x08 ...
decimal
8 14 8
HOUR BITS: [0, 1, 1]
RECORD 21 Base (2008, 6, 1, 8, 33, 36) head[2], body[0] op[0x00]
op hex (2)
0000 0x00 0x57 .W
decimal
0 87
datetime ((2008, 6, 1, 8, 33, 36))
0000 0x64 0xa1 0xc8 0x01 0x08 d....
body (0)
HOUR BITS: [1, 0, 1]
RECORD 22 Base (2008, 2, 2, 12, 20, 0) head[2], body[0] op[0x0e]
op hex (2)
0000 0x0e 0x7b .{
decimal
14 123
datetime ((2008, 2, 2, 12, 20, 0))
0000 0x00 0x94 0xec 0x02 0x08 .....
body (0)
HOUR BITS: [1, 0, 0]
RECORD 23 Base (2000, 0, 1, 27, 0, 44) head[2], body[0] op[0x0e]
op hex (2)
0000 0x0e 0x00 ..
decimal
14 0
datetime ((2000, 0, 1, 27, 0, 44))
0000 0x2c 0x00 0x7b 0x01 0x80 ,.{..
body (0)
YEAR BITS: [1, 0, 0, 0]
RECORD 24 Base (2000, 0, 28, 8, 14, 8) head[2], body[0] op[0xc0]
op hex (2)
0000 0xc0 0x04 ..
decimal
192 4
datetime ((2000, 0, 28, 8, 14, 8))
0000 0x08 0x0e 0x08 0x3c 0x00 ...<.
body (0)
DAY BITS: [0, 0, 1]
RECORD 25 BolusWizard 2014-11-08T05:57:48 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 85,
'bg_target_low': 110,
'bolus_estimate': 0.0,
'carb_input': 0,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 0.0,
'sensitivity': 70,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T05:57:48)
0000 0xb0 0xf9 0x05 0x08 0x0e .....
body (15)
hex
0000 0x00 0x50 0x00 0x55 0x46 0x6e 0x00 0x00 .P.UFn..
0008 0x00 0x00 0x00 0x00 0x00 0x00 0x78 ......x
decimal
0 80 0 85 70 110 0 0
0 0 0 0 0 0 120
HOUR BITS: [1, 1, 1]
RECORD 26 Ian69 2014-11-08T05:57:48 head[2], body[2] op[0x69]
op hex (2)
0000 0x69 0xc5 i.
decimal
105 197
datetime (2014-11-08T05:57:48)
0000 0xb0 0xf9 0x65 0x08 0x0e ..e..
body (2)
hex
0000 0x08 0x00 ..
decimal
8 0
HOUR BITS: [1, 1, 1]
RECORD 27 Bolus 2014-11-08T05:57:48 head[8], body[0] op[0x01]
DECODED
{'amount': 0.7,
'duration': 0,
'programmed': 0.7,
'type': 'normal',
'unabsorbed': 0.0}
op hex (8)
0000 0x01 0x00 0x1c 0x00 0x1c 0x00 0x00 0x00 ........
decimal
1 0 28 0 28 0 0 0
datetime (2014-11-08T05:57:48)
0000 0xb0 0xf9 0x25 0x08 0x0e ..%..
body (0)
HOUR BITS: [1, 1, 1]
RECORD 28 BasalProfileStart 2014-11-08T06:30:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 23400000, 'rate': 1.85}
op hex (2)
0000 0x7b 0x02 {.
decimal
123 2
datetime (2014-11-08T06:30:00)
0000 0x80 0xde 0x06 0x08 0x0e .....
body (3)
hex
0000 0x0d 0x4a 0x00 .J.
decimal
13 74 0
HOUR BITS: [1, 1, 0]
RECORD 29 BasalProfileStart 2014-11-08T07:30:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 27000000, 'rate': 1.75}
op hex (2)
0000 0x7b 0x03 {.
decimal
123 3
datetime (2014-11-08T07:30:00)
0000 0x80 0xde 0x07 0x08 0x0e .....
body (3)
hex
0000 0x0f 0x46 0x00 .F.
decimal
15 70 0
HOUR BITS: [1, 1, 0]
RECORD 30 BasalProfileStart 2014-11-08T09:00:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 32400000, 'rate': 1.35}
op hex (2)
0000 0x7b 0x04 {.
decimal
123 4
datetime (2014-11-08T09:00:00)
0000 0x80 0xc0 0x09 0x08 0x0e .....
body (3)
hex
0000 0x12 0x36 0x00 .6.
decimal
18 54 0
HOUR BITS: [1, 1, 0]
RECORD 31 BolusWizard 2014-11-08T10:11:57 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 90,
'bg_target_low': 110,
'bolus_estimate': 4.7,
'carb_input': 100,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 4.7,
'sensitivity': 65,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T10:11:57)
0000 0xb9 0xcb 0x0a 0x08 0x0e .....
body (15)
hex
0000 0x64 0x50 0x00 0x5a 0x41 0x6e 0x00 0x01 dP.ZAn..
0008 0xbc 0x00 0x00 0x00 0x01 0xbc 0x78 ......x
decimal
100 80 0 90 65 110 0 1
188 0 0 0 1 188 120
HOUR BITS: [1, 1, 0]
RECORD 32 UnabsorbedInsulinBolus unknown head[5], body[0] op[0x5c]
DECODED
[{'age': 1, 'amount': 0.7, 'curve': 208}]
op hex (5)
0000 0x5c 0x05 0x1c 0x01 0xd0 \....
decimal
92 5 28 1 208
datetime (unknown)
body (0)
RECORD 33 Bolus 2014-11-08T10:11:57 head[8], body[0] op[0x01]
DECODED
{'amount': 4.7,
'duration': 0,
'programmed': 4.7,
'type': 'normal',
'unabsorbed': 0.0}
op hex (8)
0000 0x01 0x01 0xbc 0x01 0xbc 0x00 0x00 0x00 ........
decimal
1 1 188 1 188 0 0 0
datetime (2014-11-08T10:11:57)
0000 0xb9 0xcb 0x2a 0x08 0x0e ..*..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 34 BasalProfileStart 2014-11-08T12:00:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 43200000, 'rate': 1.5}
op hex (2)
0000 0x7b 0x05 {.
decimal
123 5
datetime (2014-11-08T12:00:00)
0000 0x80 0xc0 0x0c 0x08 0x0e .....
body (3)
hex
0000 0x18 0x3c 0x00 .<.
decimal
24 60 0
HOUR BITS: [1, 1, 0]
RECORD 35 Ian69 2014-11-08T12:30:00 head[2], body[2] op[0x69]
op hex (2)
0000 0x69 0xcb i.
decimal
105 203
datetime (2014-11-08T12:30:00)
0000 0x80 0xde 0x6c 0x08 0x0e ..l..
body (2)
hex
0000 0x2c 0x1e ,.
decimal
44 30
HOUR BITS: [1, 1, 0]
RECORD 36 BasalProfileStart 2014-11-08T13:30:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 48600000, 'rate': 1.5}
op hex (2)
0000 0x7b 0x06 {.
decimal
123 6
datetime (2014-11-08T13:30:00)
0000 0x80 0xde 0x0d 0x08 0x0e .....
body (3)
hex
0000 0x1b 0x3c 0x00 .<.
decimal
27 60 0
HOUR BITS: [1, 1, 0]
RECORD 37 Bolus 2014-11-08T13:29:31 head[8], body[0] op[0x01]
DECODED
{'amount': 0.5,
'duration': 0,
'programmed': 0.5,
'type': 'normal',
'unabsorbed': 0.0}
op hex (8)
0000 0x01 0x00 0x14 0x00 0x14 0x00 0x00 0x00 ........
decimal
1 0 20 0 20 0 0 0
datetime (2014-11-08T13:29:31)
0000 0x9f 0xdd 0x2d 0x68 0x0e ..-h.
body (0)
HOUR BITS: [1, 1, 0] DAY BITS: [0, 1, 1]
RECORD 38 BolusWizard 2014-11-08T14:55:20 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 3.0,
'carb_input': 30,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 3.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T14:55:20)
0000 0x94 0xf7 0x0e 0x08 0x0e .....
body (15)
hex
0000 0x1e 0x50 0x00 0x64 0x35 0x6e 0x00 0x00 .P.d5n..
0008 0x78 0x00 0x00 0x00 0x00 0x78 0x78 x....xx
decimal
30 80 0 100 53 110 0 0
120 0 0 0 0 120 120
HOUR BITS: [1, 1, 1]
RECORD 39 UnabsorbedInsulinBolus unknown head[11], body[0] op[0x5c]
DECODED
[{'age': 91, 'amount': 0.5, 'curve': 192},
{'age': 25, 'amount': 5.1, 'curve': 208},
{'age': 35, 'amount': 6.0, 'curve': 208}]
op hex (11)
0000 0x5c 0x0b 0x14 0x5b 0xc0 0xcc 0x19 0xd0 \..[....
0008 0xf0 0x23 0xd0 .#.
decimal
92 11 20 91 192 204 25 208
240 35 208
datetime (unknown)
body (0)
RECORD 40 Bolus 2014-11-08T14:55:20 head[8], body[0] op[0x01]
DECODED
{'amount': 3.0,
'duration': 0,
'programmed': 3.0,
'type': 'normal',
'unabsorbed': 0.3}
op hex (8)
0000 0x01 0x00 0x78 0x00 0x78 0x00 0x0c 0x00 ..x.x...
decimal
1 0 120 0 120 0 12 0
datetime (2014-11-08T14:55:20)
0000 0x94 0xf7 0x2e 0x08 0x0e .....
body (0)
HOUR BITS: [1, 1, 1]
RECORD 41 BasalProfileStart 2014-11-08T15:00:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 54000000, 'rate': 1.55}
op hex (2)
0000 0x7b 0x07 {.
decimal
123 7
datetime (2014-11-08T15:00:00)
0000 0x80 0xc0 0x0f 0x08 0x0e .....
body (3)
hex
0000 0x1e 0x3e 0x00 .>.
decimal
30 62 0
HOUR BITS: [1, 1, 0]
RECORD 42 CalBGForPH 2014-11-08T15:28:58 head[2], body[0] op[0x0a]
DECODED
{'amount': 271}
op hex (2)
0000 0x0a 0x0f ..
decimal
10 15
datetime (2014-11-08T15:28:58)
0000 0xba 0xdc 0x2f 0x08 0x8e ../..
body (0)
HOUR BITS: [1, 1, 0] YEAR BITS: [1, 0, 0, 0]
RECORD 43 BolusWizard 2014-11-08T15:29:08 head[2], body[15] op[0x5b]
DECODED
{'bg': 271,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 0.0,
'carb_input': 0,
'carb_ratio': 12.0,
'correction_estimate': 2.8,
'food_estimate': 0.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 2.8}
op hex (2)
0000 0x5b 0x0f [.
decimal
91 15
datetime (2014-11-08T15:29:08)
0000 0x88 0xdd 0x0f 0x08 0x0e .....
body (15)
hex
0000 0x00 0x51 0x00 0x64 0x35 0x6e 0x70 0x00 .Q.d5np.
0008 0x00 0x00 0x00 0x70 0x00 0x00 0x78 ...p..x
decimal
0 81 0 100 53 110 112 0
0 0 0 112 0 0 120
HOUR BITS: [1, 1, 0]
RECORD 44 UnabsorbedInsulinBolus unknown head[14], body[0] op[0x5c]
DECODED
[{'age': 35, 'amount': 3.0, 'curve': 192},
{'age': 125, 'amount': 0.5, 'curve': 192},
{'age': 59, 'amount': 5.1, 'curve': 208},
{'age': 69, 'amount': 6.0, 'curve': 208}]
op hex (14)
0000 0x5c 0x0e 0x78 0x23 0xc0 0x14 0x7d 0xc0 \.x#..}.
0008 0xcc 0x3b 0xd0 0xf0 0x45 0xd0 .;..E.
decimal
92 14 120 35 192 20 125 192
204 59 208 240 69 208
datetime (unknown)
body (0)
RECORD 45 Bolus 2014-11-08T15:29:09 head[8], body[0] op[0x01]
DECODED
{'amount': 1.5,
'duration': 0,
'programmed': 1.5,
'type': 'normal',
'unabsorbed': 2.8}
op hex (8)
0000 0x01 0x00 0x3c 0x00 0x3c 0x00 0x70 0x00 ..<.<.p.
decimal
1 0 60 0 60 0 112 0
datetime (2014-11-08T15:29:09)
0000 0x89 0xdd 0x2f 0x08 0x0e ../..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 46 BolusWizard 2014-11-08T15:40:19 head[2], body[15] op[0x5b]
DECODED
{'bg': 271,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 4.0,
'carb_input': 40,
'carb_ratio': 12.0,
'correction_estimate': 2.8,
'food_estimate': 4.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 4.0}
op hex (2)
0000 0x5b 0x0f [.
decimal
91 15
datetime (2014-11-08T15:40:19)
0000 0x93 0xe8 0x0f 0x08 0x0e .....
body (15)
hex
0000 0x28 0x51 0x00 0x64 0x35 0x6e 0x70 0x00 (Q.d5np.
0008 0xa0 0x00 0x00 0xa0 0x00 0xa0 0x78 ......x
decimal
40 81 0 100 53 110 112 0
160 0 0 160 0 160 120
HOUR BITS: [1, 1, 1]
RECORD 47 UnabsorbedInsulinBolus unknown head[17], body[0] op[0x5c]
DECODED
[{'age': 16, 'amount': 1.5, 'curve': 192},
{'age': 46, 'amount': 3.0, 'curve': 192},
{'age': 136, 'amount': 0.5, 'curve': 192},
{'age': 70, 'amount': 5.1, 'curve': 208},
{'age': 80, 'amount': 6.0, 'curve': 208}]
op hex (17)
0000 0x5c 0x11 0x3c 0x10 0xc0 0x78 0x2e 0xc0 \.<..x..
0008 0x14 0x88 0xc0 0xcc 0x46 0xd0 0xf0 0x50 ....F..P
0010 0xd0 .
decimal
92 17 60 16 192 120 46 192
20 136 192 204 70 208 240 80
208
datetime (unknown)
body (0)
RECORD 48 Bolus 2014-11-08T15:40:19 head[8], body[0] op[0x01]
DECODED
{'amount': 5.0,
'duration': 0,
'programmed': 5.0,
'type': 'normal',
'unabsorbed': 4.0}
op hex (8)
0000 0x01 0x00 0xc8 0x00 0xc8 0x00 0xa0 0x00 ........
decimal
1 0 200 0 200 0 160 0
datetime (2014-11-08T15:40:19)
0000 0x93 0xe8 0x2f 0x08 0x0e ../..
body (0)
HOUR BITS: [1, 1, 1]
RECORD 49 TempBasal 2014-11-08T16:41:45 head[2], body[1] op[0x33]
DECODED
{'rate': 4.125}
op hex (2)
0000 0x33 0xa5 3.
decimal
51 165
datetime (2014-11-08T16:41:45)
0000 0xad 0xe9 0x10 0x08 0x0e .....
body (1)
hex
0000 0x08 .
decimal
8
HOUR BITS: [1, 1, 1]
RECORD 50 TempBasalDuration 2014-11-08T16:41:45 head[2], body[0] op[0x16]
DECODED
{'duration (min)': 360}
op hex (2)
0000 0x16 0x0c ..
decimal
22 12
datetime (2014-11-08T16:41:45)
0000 0xad 0xe9 0x10 0x08 0x0e .....
body (0)
HOUR BITS: [1, 1, 1]
RECORD 51 Bolus 2014-11-08T16:42:01 head[8], body[0] op[0x01]
DECODED
{'amount': 1.0,
'duration': 0,
'programmed': 1.0,
'type': 'normal',
'unabsorbed': 5.2}
op hex (8)
0000 0x01 0x00 0x28 0x00 0x28 0x00 0xd0 0x00 ..(.(...
decimal
1 0 40 0 40 0 208 0
datetime (2014-11-08T16:42:01)
0000 0x81 0xea 0x30 0x68 0x0e ..0h.
body (0)
HOUR BITS: [1, 1, 1] DAY BITS: [0, 1, 1]
RECORD 52 BolusWizard 2014-11-08T17:01:59 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 1.6,
'carb_input': 80,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 1.6,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T17:01:59)
0000 0xbb 0xc1 0x11 0x08 0x0e .....
body (15)
hex
0000 0x50 0x50 0x00 0x64 0x35 0x6e 0x00 0x01 PP.d5n..
0008 0x40 0x00 0x00 0x00 0x01 0x40 0x78 @....@x
decimal
80 80 0 100 53 110 0 1
64 0 0 0 1 64 120
HOUR BITS: [1, 1, 0]
RECORD 53 UnabsorbedInsulinBolus unknown head[23], body[0] op[0x5c]
DECODED
[{'age': 27, 'amount': 1.0, 'curve': 192},
{'age': 87, 'amount': 5.0, 'curve': 192},
{'age': 97, 'amount': 1.5, 'curve': 192},
{'age': 127, 'amount': 3.0, 'curve': 192},
{'age': 217, 'amount': 0.5, 'curve': 192},
{'age': 151, 'amount': 5.1, 'curve': 208},
{'age': 161, 'amount': 6.0, 'curve': 208}]
op hex (23)
0000 0x5c 0x17 0x28 0x1b 0xc0 0xc8 0x57 0xc0 \.(...W.
0008 0x3c 0x61 0xc0 0x78 0x7f 0xc0 0x14 0xd9 <a.x....
0010 0xc0 0xcc 0x97 0xd0 0xf0 0xa1 0xd0 .......
decimal
92 23 40 27 192 200 87 192
60 97 192 120 127 192 20 217
192 204 151 208 240 161 208
datetime (unknown)
body (0)
RECORD 54 Bolus 2014-11-08T17:01:59 head[8], body[0] op[0x01]
DECODED
{'amount': 1.6,
'duration': 0,
'programmed': 1.6,
'type': 'normal',
'unabsorbed': 4.6}
op hex (8)
0000 0x01 0x01 0x40 0x01 0x40 0x00 0xb8 0x00 ..@.@...
decimal
1 1 64 1 64 0 184 0
datetime (2014-11-08T17:01:59)
0000 0xbb 0xc1 0x31 0x08 0x0e ..1..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 55 BolusWizard 2014-11-08T17:22:47 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 4.0,
'carb_input': 40,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 4.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T17:22:47)
0000 0xaf 0xd6 0x11 0x08 0x0e .....
body (15)
hex
0000 0x28 0x50 0x00 0x64 0x35 0x6e 0x00 0x00 (P.d5n..
0008 0xa0 0x00 0x00 0x00 0x00 0xa0 0x78 ......x
decimal
40 80 0 100 53 110 0 0
160 0 0 0 0 160 120
HOUR BITS: [1, 1, 0]
RECORD 56 UnabsorbedInsulinBolus unknown head[29], body[0] op[0x5c]
DECODED
[{'age': 18, 'amount': 4.55, 'curve': 192},
{'age': 28, 'amount': 3.45, 'curve': 192},
{'age': 48, 'amount': 1.0, 'curve': 192},
{'age': 108, 'amount': 5.0, 'curve': 192},
{'age': 118, 'amount': 1.5, 'curve': 192},
{'age': 148, 'amount': 3.0, 'curve': 192},
{'age': 238, 'amount': 0.5, 'curve': 192},
{'age': 172, 'amount': 5.1, 'curve': 208},
{'age': 182, 'amount': 6.0, 'curve': 208}]
op hex (29)
0000 0x5c 0x1d 0xb6 0x12 0xc0 0x8a 0x1c 0xc0 \.......
0008 0x28 0x30 0xc0 0xc8 0x6c 0xc0 0x3c 0x76 (0..l.<v
0010 0xc0 0x78 0x94 0xc0 0x14 0xee 0xc0 0xcc .x......
0018 0xac 0xd0 0xf0 0xb6 0xd0 .....
decimal
92 29 182 18 192 138 28 192
40 48 192 200 108 192 60 118
192 120 148 192 20 238 192 204
172 208 240 182 208
datetime (unknown)
body (0)
RECORD 57 PumpSuspend 2014-11-08T17:23:19 head[2], body[0] op[0x1e]
op hex (2)
0000 0x1e 0x01 ..
decimal
30 1
datetime (2014-11-08T17:23:19)
0000 0x93 0xd7 0x11 0x08 0x0e .....
body (0)
HOUR BITS: [1, 1, 0]
RECORD 58 Bolus 2014-11-08T17:22:47 head[8], body[0] op[0x01]
DECODED
{'amount': 0.8,
'duration': 0,
'programmed': 4.0,
'type': 'normal',
'unabsorbed': 4.4}
op hex (8)
0000 0x01 0x00 0xa0 0x00 0x20 0x01 0xb0 0x00 .... ...
decimal
1 0 160 0 32 1 176 0
datetime (2014-11-08T17:22:47)
0000 0xaf 0xd6 0x31 0x08 0x0e ..1..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 59 PumpResume 2014-11-08T17:23:21 head[2], body[0] op[0x1f]
op hex (2)
0000 0x1f 0x20 .
decimal
31 32
datetime (2014-11-08T17:23:21)
0000 0x95 0xd7 0x11 0x08 0x0e .....
body (0)
HOUR BITS: [1, 1, 0]
RECORD 60 BolusWizard 2014-11-08T17:25:45 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 4.0,
'carb_input': 40,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 4.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T17:25:45)
0000 0xad 0xd9 0x11 0x08 0x0e .....
body (15)
hex
0000 0x28 0x50 0x00 0x64 0x35 0x6e 0x00 0x00 (P.d5n..
0008 0xa0 0x00 0x00 0x00 0x00 0xa0 0x78 ......x
decimal
40 80 0 100 53 110 0 0
160 0 0 0 0 160 120
HOUR BITS: [1, 1, 0]
RECORD 61 UnabsorbedInsulinBolus unknown head[32], body[0] op[0x5c]
DECODED
[{'age': 11, 'amount': 0.8, 'curve': 192},
{'age': 21, 'amount': 4.55, 'curve': 192},
{'age': 31, 'amount': 3.45, 'curve': 192},
{'age': 51, 'amount': 1.0, 'curve': 192},
{'age': 111, 'amount': 5.0, 'curve': 192},
{'age': 121, 'amount': 1.5, 'curve': 192},
{'age': 151, 'amount': 3.0, 'curve': 192},
{'age': 241, 'amount': 0.5, 'curve': 192},
{'age': 175, 'amount': 5.1, 'curve': 208},
{'age': 185, 'amount': 6.0, 'curve': 208}]
op hex (32)
0000 0x5c 0x20 0x20 0x0b 0xc0 0xb6 0x15 0xc0 \ .....
0008 0x8a 0x1f 0xc0 0x28 0x33 0xc0 0xc8 0x6f ...(3..o
0010 0xc0 0x3c 0x79 0xc0 0x78 0x97 0xc0 0x14 .<y.x...
0018 0xf1 0xc0 0xcc 0xaf 0xd0 0xf0 0xb9 0xd0 ........
decimal
92 32 32 11 192 182 21 192
138 31 192 40 51 192 200 111
192 60 121 192 120 151 192 20
241 192 204 175 208 240 185 208
datetime (unknown)
body (0)
RECORD 62 BolusWizard 2014-11-08T20:17:27 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 0.0,
'carb_input': 0,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 0.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T20:17:27)
0000 0x9b 0xd1 0x14 0x08 0x0e .....
body (15)
hex
0000 0x00 0x50 0x00 0x64 0x35 0x6e 0x00 0x00 .P.d5n..
0008 0x00 0x00 0x00 0x00 0x00 0x00 0x78 ......x
decimal
0 80 0 100 53 110 0 0
0 0 0 0 0 0 120
HOUR BITS: [1, 1, 0]
RECORD 63 UnabsorbedInsulinBolus unknown head[26], body[0] op[0x5c]
DECODED
[{'age': 183, 'amount': 0.8, 'curve': 192},
{'age': 193, 'amount': 4.55, 'curve': 192},
{'age': 203, 'amount': 3.45, 'curve': 192},
{'age': 223, 'amount': 1.0, 'curve': 192},
{'age': 27, 'amount': 5.0, 'curve': 208},
{'age': 37, 'amount': 1.5, 'curve': 208},
{'age': 67, 'amount': 3.0, 'curve': 208},
{'age': 157, 'amount': 0.5, 'curve': 208}]
op hex (26)
0000 0x5c 0x1a 0x20 0xb7 0xc0 0xb6 0xc1 0xc0 \. .....
0008 0x8a 0xcb 0xc0 0x28 0xdf 0xc0 0xc8 0x1b ...(....
0010 0xd0 0x3c 0x25 0xd0 0x78 0x43 0xd0 0x14 .<%.xC..
0018 0x9d 0xd0 ..
decimal
92 26 32 183 192 182 193 192
138 203 192 40 223 192 200 27
208 60 37 208 120 67 208 20
157 208
datetime (unknown)
body (0)
RECORD 64 Bolus 2014-11-08T20:17:27 head[8], body[0] op[0x01]
DECODED
{'amount': 1.0,
'duration': 0,
'programmed': 1.0,
'type': 'normal',
'unabsorbed': 0.0}
op hex (8)
0000 0x01 0x00 0x28 0x00 0x28 0x00 0x00 0x00 ..(.(...
decimal
1 0 40 0 40 0 0 0
datetime (2014-11-08T20:17:27)
0000 0x9b 0xd1 0x34 0x08 0x0e ..4..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 65 BolusWizard 2014-11-08T20:25:05 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 100,
'bg_target_low': 110,
'bolus_estimate': 6.0,
'carb_input': 60,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 6.0,
'sensitivity': 53,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T20:25:05)
0000 0x85 0xd9 0x14 0x08 0x0e .....
body (15)
hex
0000 0x3c 0x50 0x00 0x64 0x35 0x6e 0x00 0x00 <P.d5n..
0008 0xf0 0x00 0x00 0x00 0x00 0xf0 0x78 ......x
decimal
60 80 0 100 53 110 0 0
240 0 0 0 0 240 120
HOUR BITS: [1, 1, 0]
RECORD 66 UnabsorbedInsulinBolus unknown head[29], body[0] op[0x5c]
DECODED
[{'age': 11, 'amount': 1.0, 'curve': 192},
{'age': 191, 'amount': 0.8, 'curve': 192},
{'age': 201, 'amount': 4.55, 'curve': 192},
{'age': 211, 'amount': 3.45, 'curve': 192},
{'age': 231, 'amount': 1.0, 'curve': 192},
{'age': 35, 'amount': 5.0, 'curve': 208},
{'age': 45, 'amount': 1.5, 'curve': 208},
{'age': 75, 'amount': 3.0, 'curve': 208},
{'age': 165, 'amount': 0.5, 'curve': 208}]
op hex (29)
0000 0x5c 0x1d 0x28 0x0b 0xc0 0x20 0xbf 0xc0 \.(.. ..
0008 0xb6 0xc9 0xc0 0x8a 0xd3 0xc0 0x28 0xe7 ......(.
0010 0xc0 0xc8 0x23 0xd0 0x3c 0x2d 0xd0 0x78 ..#.<-.x
0018 0x4b 0xd0 0x14 0xa5 0xd0 K....
decimal
92 29 40 11 192 32 191 192
182 201 192 138 211 192 40 231
192 200 35 208 60 45 208 120
75 208 20 165 208
datetime (unknown)
body (0)
RECORD 67 Bolus 2014-11-08T20:25:06 head[8], body[0] op[0x01]
DECODED
{'amount': 6.0,
'duration': 0,
'programmed': 6.0,
'type': 'normal',
'unabsorbed': 1.0}
op hex (8)
0000 0x01 0x00 0xf0 0x00 0xf0 0x00 0x28 0x00 ......(.
decimal
1 0 240 0 240 0 40 0
datetime (2014-11-08T20:25:06)
0000 0x86 0xd9 0x34 0x08 0x0e ..4..
body (0)
HOUR BITS: [1, 1, 0]
RECORD 68 BasalProfileStart 2014-11-08T22:41:45 head[2], body[3] op[0x7b]
DECODED
{'offset': 73800000, 'rate': 1.6500000000000001}
op hex (2)
0000 0x7b 0x09 {.
decimal
123 9
datetime (2014-11-08T22:41:45)
0000 0xad 0xe9 0x16 0x08 0x0e .....
body (3)
hex
0000 0x29 0x42 0x00 )B.
decimal
41 66 0
HOUR BITS: [1, 1, 1]
RECORD 69 BasalProfileStart 2014-11-09T00:00:00 head[2], body[3] op[0x7b]
DECODED
{'offset': 0, 'rate': 1.1}
op hex (2)
0000 0x7b 0x00 {.
decimal
123 0
datetime (2014-11-09T00:00:00)
0000 0x80 0xc0 0x00 0x09 0x0e .....
body (3)
hex
0000 0x00 0x2c 0x00 .,.
decimal
0 44 0
HOUR BITS: [1, 1, 0]
RECORD 70 MResultTotals 2014-11-09T00:00:00 head[5], body[3] op[0x07]
op hex (5)
0000 0x07 0x00 0x00 0x0c 0x4e ....N
decimal
7 0 0 12 78
datetime (2014-11-09T00:00:00)
0000 0xa8 0x8e ..
body (3)
hex
0000 0x00 0x00 0x00 ...
decimal
0 0 0
HOUR BITS: [1, 0, 0]
RECORD 71 Base unknown head[2], body[0] op[0xd4]
op hex (2)
0000 0xd4 0xe9 ..
decimal
212 233
datetime (unknown)
body (0)
end ReadHistoryData-page-2.data: 72 records
Which record number? FWIW, something interesting/odd/weird happened around record 19... not sure if I trust anything after that unknown Base record... Is it possible to match this data with csv records from carelink exported csv? Basically, I'd like to compare each record against the csv if possible.
For 10:11am, I suspect you mean record 31 - 33? 33 claims to be 4.7 units, and it's actually 11.1, is that correct?
yes that is the correct record. Its quite strange not only is the bolus off but the carb ratio is wrong too. However I looked at all the following bolus's and they are all right except one other which is also wrong (and lower then it should be). The strange part is even the estimates bolus's are wrong. But again vast majority of bolus info before and after that record are correct.
I will upload tonight and post this evening thanks so much!
Awesome, this is incredibly useful. The key will be analyzing those raw bytes versus the correct values for many records. After doing this a few dozen times, it'll become painfully obvious how to fix the bug.
For now, the most alarming records are 31 and 33, which are definitely wrong.
RECORD 31 BolusWizard 2014-11-08T10:11:57 head[2], body[15] op[0x5b]
DECODED
{'bg': 0,
'bg_target_high': 90,
'bg_target_low': 110,
'bolus_estimate': 4.7,
'carb_input': 100,
'carb_ratio': 12.0,
'correction_estimate': 0.0,
'food_estimate': 4.7,
'sensitivity': 65,
'unabsorbed_insulin_total': 0.0}
op hex (2)
0000 0x5b 0x00 [.
decimal
91 0
datetime (2014-11-08T10:11:57)
0000 0xb9 0xcb 0x0a 0x08 0x0e .....
body (15)
hex
0000 0x64 0x50 0x00 0x5a 0x41 0x6e 0x00 0x01 dP.ZAn..
0008 0xbc 0x00 0x00 0x00 0x01 0xbc 0x78 ......x
decimal
100 80 0 90 65 110 0 1
188 0 0 0 1 188 120
HOUR BITS: [1, 1, 0]
RECORD 32 UnabsorbedInsulinBolus unknown head[5], body[0] op[0x5c]
DECODED
[{'age': 1, 'amount': 0.7, 'curve': 208}]
op hex (5)
0000 0x5c 0x05 0x1c 0x01 0xd0 \....
decimal
92 5 28 1 208
datetime (unknown)
body (0)
RECORD 33 Bolus 2014-11-08T10:11:57 head[8], body[0] op[0x01]
DECODED
{'amount': 4.7,
'duration': 0,
'programmed': 4.7,
'type': 'normal',
'unabsorbed': 0.0}
op hex (8)
0000 0x01 0x01 0xbc 0x01 0xbc 0x00 0x00 0x00 ........
decimal
1 1 188 1 188 0 0 0
datetime (2014-11-08T10:11:57)
0000 0xb9 0xcb 0x2a 0x08 0x0e ..*..
body (0)
HOUR BITS: [1, 1, 0]
correct
carb_ratio: 9
insulin estimate: 11.1
Attached is the CSV - the only thing I did is x out the serial number. Notice that the records are indeed correct here.
Let me know if I can do anything else? I grabbed a few days.
Kenneth Stack
President Proximus, LLC M&A, Venture Capital, Advisors
2723 South State Street, Suite 150 Ann Arbor, MI 48104
734.330.6422 [email protected] www.proximusllc.com
CONFIDENTIALITY NOTE: This electronic transmission, including all attachments, is directed in confidence solely to the person(s) to whom it is addressed, or an authorized recipient, and may not otherwise be distributed, copied or disclosed. The contents of the transmission may also be subject to intellectual property rights and all such rights are expressly claimed and are not waived. If you have received this transmission in error, please notify the sender immediately by return electronic transmission and then immediately delete this transmission, including all attachments, without copying, distribution or disclosing same.
On Nov 9, 2014, at 3:58 PM, Ben West [email protected] wrote:
Awesome, this is incredibly useful. The key will be analyzing those raw bytes versus the correct values for many records. After doing this a few dozen times, it'll become painfully obvious how to fix the bug.
For now, the most alarming records are 31 and 33, which are definitely wrong.
RECORD 31 BolusWizard 2014-11-08T10:11:57 head[2], body[15] op[0x5b]
DECODED
{'bg': 0, 'bg_target_high': 90, 'bg_target_low': 110, 'bolus_estimate': 4.7, 'carb_input': 100, 'carb_ratio': 12.0, 'correction_estimate': 0.0, 'food_estimate': 4.7, 'sensitivity': 65, 'unabsorbed_insulin_total': 0.0} op hex (2) 0000 0x5b 0x00 [. decimal 91 0 datetime (2014-11-08T10:11:57) 0000 0xb9 0xcb 0x0a 0x08 0x0e ..... body (15) hex 0000 0x64 0x50 0x00 0x5a 0x41 0x6e 0x00 0x01 dP.ZAn.. 0008 0xbc 0x00 0x00 0x00 0x01 0xbc 0x78 ......x decimal 100 80 0 90 65 110 0 1 188 0 0 0 1 188 120 HOUR BITS: [1, 1, 0] RECORD 32 UnabsorbedInsulinBolus unknown head[5], body[0] op[0x5c]
DECODED
[{'age': 1, 'amount': 0.7, 'curve': 208}] op hex (5) 0000 0x5c 0x05 0x1c 0x01 0xd0 .... decimal 92 5 28 1 208 datetime (unknown)
body (0) RECORD 33 Bolus 2014-11-08T10:11:57 head[8], body[0] op[0x01]
DECODED
{'amount': 4.7, 'duration': 0, 'programmed': 4.7, 'type': 'normal', 'unabsorbed': 0.0} op hex (8) 0000 0x01 0x01 0xbc 0x01 0xbc 0x00 0x00 0x00 ........ decimal 1 1 188 1 188 0 0 0 datetime (2014-11-08T10:11:57) 0000 0xb9 0xcb 0x2a 0x08 0x0e ..*.. body (0) HOUR BITS: [1, 1, 0] correct
carb_ratio: 9
insulin estimate: 11.1
— Reply to this email directly or view it on GitHub.
Sorry, github's interface doesn't handle attachments via email. I think any mailed attachment gets deleted.
I think you need add it somewhere, either in a new directory under analysis/wizards/.... or http://gist.github.com/ also has a decent drag/drop pastebin type of thing.
Only images are allowed here. For some reason I don't see any emails with attachments, I'm sure gist.github.com will take it.
gave up on gist I could not figure out how to attach
https://drive.google.com/file/d/0B3PAWm32NxNNYVNBOHA0OUZoY2M/view?usp=sharing
that link should work
Got it this time thank you!
-bewest
On Sun, Nov 9, 2014 at 5:57 PM, kenstack [email protected] wrote:
gave up on gist I could not figure out how to attach
https://drive.google.com/file/d/0B3PAWm32NxNNYVNBOHA0OUZoY2M/view?usp=sharing
that link should work
— Reply to this email directly or view it on GitHub https://github.com/bewest/decoding-carelink/issues/43#issuecomment-62331714 .
Here is a new one - Im working on the bolus calculator right now. This is data from latest - check out the timestamps - they are all the current pump time. This only happened once. Its usually fine. In fact I cant reproduce it at the moment. Rest of the data looks right. I dont have the runs from it sorry this is from my code which is reading output from latest.
[ { "timestamp": "2014-11-14T11:04:39", "_type": "CalBGForPH", "amount": 112, "_description": "CalBGForPH 2014-11-14T11:04:39 head[2], body[0] op[0x0a]" }, { "_type": "BolusWizard", "bg": 112, "correction_estimate": 0.0, "unknown_byte[10]": 0, "_description": "BolusWizard 2014-11-14T11:04:43 head[2], body[13] op[0x5b]", "timestamp": "2014-11-14T11:04:43", "sensitivity": 65, "carb_input": 5, "bg_target_high": 120, "unabsorbed_insulin_total": 1.1, "_byte[5]": 0, "unabsorbed_insulin_count": "??", "_byte[7]": 0, "unknown_byte[8]": 0, "carb_ratio": 10, "food_estimate": 0.5, "bg_target_low": 100, "bolus_estimate": 0.5 }, { "programmed": 0.5, "_type": "Bolus", "_description": "Bolus 2014-11-14T11:04:43 head[4], body[0] op[0x01]", "duration": 0, "timestamp": "2014-11-14T11:04:43", "type": "normal", "amount": 0.5 }, { "timestamp": "2014-11-14T11:52:01", "_type": "TempBasal", "rate": 0.0, "_description": "TempBasal 2014-11-14T11:52:01 head[2], body[1] op[0x33]" }, { "timestamp": "2014-11-14T11:52:01", "_type": "TempBasalDuration", "duration (min)": 0, "_description": "TempBasalDuration 2014-11-14T11:52:01 head[2], body[0] op[0x16]" }, { "timestamp": "2014-11-14T11:04:04", "_type": "TempBasal", "rate": 0.0, "_description": "TempBasal 2014-11-14T11:04:04 head[2], body[1] op[0x33]" }, { "timestamp": "2014-11-14T11:04:04", "_type": "TempBasalDuration", "duration (min)": 0, "_description": "TempBasalDuration 2014-11-14T11:04:04 head[2], body[0] op[0x16]" } ]
I have not had a repeat of the above issue re timestamps after numerous queries. I will chalk it up either my error or something very unusual.