summaryrefslogtreecommitdiff
path: root/dexcom_reader/constants.py
diff options
context:
space:
mode:
authorBen West <bewest@gmail.com>2014-05-24 16:42:13 -0700
committerBen West <bewest@gmail.com>2014-05-24 16:42:13 -0700
commit5d92368e5b10fb2d01ae25a2730e15cd05a84da6 (patch)
tree6f5264f423e8e5a9ddfd44f3222bc8ad215b6e2f /dexcom_reader/constants.py
parent6b5ce2584b0fe2da991540a33c71b1f95cd8878a (diff)
prep for installable module
Diffstat (limited to 'dexcom_reader/constants.py')
-rw-r--r--dexcom_reader/constants.py94
1 files changed, 94 insertions, 0 deletions
diff --git a/dexcom_reader/constants.py b/dexcom_reader/constants.py
new file mode 100644
index 0000000..2f60020
--- /dev/null
+++ b/dexcom_reader/constants.py
@@ -0,0 +1,94 @@
1import datetime
2
3
4class Error(Exception):
5 """Base error for dexcom reader."""
6
7
8class CrcError(Error):
9 """Failed to CRC properly."""
10
11
12DEXCOM_G4_USB_VENDOR = 0x22a3
13DEXCOM_G4_USB_PRODUCT = 0x0047
14
15BASE_TIME = datetime.datetime(2009, 1, 1)
16
17NULL = 0
18ACK = 1
19NAK = 2
20INVALID_COMMAND = 3
21INVALID_PARAM = 4
22INCOMPLETE_PACKET_RECEIVED = 5
23RECEIVER_ERROR = 6
24INVALID_MODE = 7
25PING = 10
26READ_FIRMWARE_HEADER = 11
27READ_DATABASE_PARTITION_INFO = 15
28READ_DATABASE_PAGE_RANGE = 16
29READ_DATABASE_PAGES = 17
30READ_DATABASE_PAGE_HEADER = 18
31READ_TRANSMITTER_ID = 25
32WRITE_TRANSMITTER_ID = 26
33READ_LANGUAGE = 27
34WRITE_LANGUAGE = 28
35READ_DISPLAY_TIME_OFFSET = 29
36WRITE_DISPLAY_TIME_OFFSET = 30
37READ_RTC = 31
38RESET_RECEIVER = 32
39READ_BATTERY_LEVEL = 33
40READ_SYSTEM_TIME = 34
41READ_SYSTEM_TIME_OFFSET = 35
42WRITE_SYSTEM_TIME = 36
43READ_GLUCOSE_UNIT = 37
44WRITE_GLUCOSE_UNIT = 38
45READ_BLINDED_MODE = 39
46WRITE_BLINDED_MODE = 40
47READ_CLOCK_MODE = 41
48WRITE_CLOCK_MODE = 42
49READ_DEVICE_MODE = 43
50ERASE_DATABASE = 45
51SHUTDOWN_RECEIVER = 46
52WRITE_PC_PARAMETERS = 47
53READ_BATTERY_STATE = 48
54READ_HARDWARE_BOARD_ID = 49
55READ_FIRMWARE_SETTINGS = 54
56READ_ENABLE_SETUP_WIZARD_FLAG = 55
57READ_SETUP_WIZARD_STATE = 57
58MAX_COMMAND = 59
59MAX_POSSIBLE_COMMAND = 255
60
61EGV_VALUE_MASK = 1023
62EGV_DISPLAY_ONLY_MASK = 32768
63EGV_TREND_ARROW_MASK = 15
64
65BATTERY_STATES = [None, 'CHARGING', 'NOT_CHARGING', 'NTC_FAULT', 'BAD_BATTERY']
66
67RECORD_TYPES = [
68 'MANUFACTURING_DATA', 'FIRMWARE_PARAMETER_DATA', 'PC_SOFTWARE_PARAMETER',
69 'SENSOR_DATA', 'EGV_DATA', 'CAL_SET', 'DEVIATION', 'INSERTION_TIME',
70 'RECEIVER_LOG_DATA', 'RECEIVER_ERROR_DATA', 'METER_DATA', 'USER_EVENT_DATA',
71 'USER_SETTING_DATA', 'MAX_VALUE',
72]
73
74TREND_ARROW_VALUES = [None, 'DOUBLE_UP', 'SINGLE_UP', '45_UP', 'FLAT',
75 '45_DOWN', 'SINGLE_DOWN', 'DOUBLE_DOWN', 'NOT_COMPUTABLE',
76 'OUT_OF_RANGE']
77
78SPECIAL_GLUCOSE_VALUES = {0: None,
79 1: 'SENSOR_NOT_ACTIVE',
80 2: 'MINIMAL_DEVIATION',
81 3: 'NO_ANTENNA',
82 5: 'SENSOR_NOT_CALIBRATED',
83 6: 'COUNTS_DEVIATION',
84 9: 'ABSOLUTE_DEVIATION',
85 10: 'POWER_DEVIATION',
86 12: 'BAD_RF'}
87
88
89LANGUAGES = {
90 0: None,
91 1033: 'ENGLISH',
92}
93
94