diff options
author | Ben West <bewest@gmail.com> | 2014-05-24 16:42:13 -0700 |
---|---|---|
committer | Ben West <bewest@gmail.com> | 2014-05-24 16:42:13 -0700 |
commit | 5d92368e5b10fb2d01ae25a2730e15cd05a84da6 (patch) | |
tree | 6f5264f423e8e5a9ddfd44f3222bc8ad215b6e2f /dexcom_reader/constants.py | |
parent | 6b5ce2584b0fe2da991540a33c71b1f95cd8878a (diff) |
prep for installable module
Diffstat (limited to 'dexcom_reader/constants.py')
-rw-r--r-- | dexcom_reader/constants.py | 94 |
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 @@ | |||
1 | import datetime | ||
2 | |||
3 | |||
4 | class Error(Exception): | ||
5 | """Base error for dexcom reader.""" | ||
6 | |||
7 | |||
8 | class CrcError(Error): | ||
9 | """Failed to CRC properly.""" | ||
10 | |||
11 | |||
12 | DEXCOM_G4_USB_VENDOR = 0x22a3 | ||
13 | DEXCOM_G4_USB_PRODUCT = 0x0047 | ||
14 | |||
15 | BASE_TIME = datetime.datetime(2009, 1, 1) | ||
16 | |||
17 | NULL = 0 | ||
18 | ACK = 1 | ||
19 | NAK = 2 | ||
20 | INVALID_COMMAND = 3 | ||
21 | INVALID_PARAM = 4 | ||
22 | INCOMPLETE_PACKET_RECEIVED = 5 | ||
23 | RECEIVER_ERROR = 6 | ||
24 | INVALID_MODE = 7 | ||
25 | PING = 10 | ||
26 | READ_FIRMWARE_HEADER = 11 | ||
27 | READ_DATABASE_PARTITION_INFO = 15 | ||
28 | READ_DATABASE_PAGE_RANGE = 16 | ||
29 | READ_DATABASE_PAGES = 17 | ||
30 | READ_DATABASE_PAGE_HEADER = 18 | ||
31 | READ_TRANSMITTER_ID = 25 | ||
32 | WRITE_TRANSMITTER_ID = 26 | ||
33 | READ_LANGUAGE = 27 | ||
34 | WRITE_LANGUAGE = 28 | ||
35 | READ_DISPLAY_TIME_OFFSET = 29 | ||
36 | WRITE_DISPLAY_TIME_OFFSET = 30 | ||
37 | READ_RTC = 31 | ||
38 | RESET_RECEIVER = 32 | ||
39 | READ_BATTERY_LEVEL = 33 | ||
40 | READ_SYSTEM_TIME = 34 | ||
41 | READ_SYSTEM_TIME_OFFSET = 35 | ||
42 | WRITE_SYSTEM_TIME = 36 | ||
43 | READ_GLUCOSE_UNIT = 37 | ||
44 | WRITE_GLUCOSE_UNIT = 38 | ||
45 | READ_BLINDED_MODE = 39 | ||
46 | WRITE_BLINDED_MODE = 40 | ||
47 | READ_CLOCK_MODE = 41 | ||
48 | WRITE_CLOCK_MODE = 42 | ||
49 | READ_DEVICE_MODE = 43 | ||
50 | ERASE_DATABASE = 45 | ||
51 | SHUTDOWN_RECEIVER = 46 | ||
52 | WRITE_PC_PARAMETERS = 47 | ||
53 | READ_BATTERY_STATE = 48 | ||
54 | READ_HARDWARE_BOARD_ID = 49 | ||
55 | READ_FIRMWARE_SETTINGS = 54 | ||
56 | READ_ENABLE_SETUP_WIZARD_FLAG = 55 | ||
57 | READ_SETUP_WIZARD_STATE = 57 | ||
58 | MAX_COMMAND = 59 | ||
59 | MAX_POSSIBLE_COMMAND = 255 | ||
60 | |||
61 | EGV_VALUE_MASK = 1023 | ||
62 | EGV_DISPLAY_ONLY_MASK = 32768 | ||
63 | EGV_TREND_ARROW_MASK = 15 | ||
64 | |||
65 | BATTERY_STATES = [None, 'CHARGING', 'NOT_CHARGING', 'NTC_FAULT', 'BAD_BATTERY'] | ||
66 | |||
67 | RECORD_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 | |||
74 | TREND_ARROW_VALUES = [None, 'DOUBLE_UP', 'SINGLE_UP', '45_UP', 'FLAT', | ||
75 | '45_DOWN', 'SINGLE_DOWN', 'DOUBLE_DOWN', 'NOT_COMPUTABLE', | ||
76 | 'OUT_OF_RANGE'] | ||
77 | |||
78 | SPECIAL_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 | |||
89 | LANGUAGES = { | ||
90 | 0: None, | ||
91 | 1033: 'ENGLISH', | ||
92 | } | ||
93 | |||
94 | |||