-
Notifications
You must be signed in to change notification settings - Fork 47
/
org.bluetooth.characteristic.glucose_measurement_context.xml
236 lines (236 loc) · 9.93 KB
/
org.bluetooth.characteristic.glucose_measurement_context.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid XML Studio Designer Edition 9.1.10.3537 (http://www.liquid-technologies.com) -->
<!--Copyright 2011 Bluetooth SIG, Inc. All rights reserved.-->
<Characteristic xsi:noNamespaceSchemaLocation="http://schemas.bluetooth.org/Documents/characteristic.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
name="Glucose Measurement Context"
type="org.bluetooth.characteristic.glucose_measurement_context"
uuid="2A34" last-modified="2012-02-27" approved="Yes">
<InformativeText>
<Summary>The Glucose Measurement Context characteristic is a
variable length structure containing a Flags field, a Sequence
Number field and, based upon the contents of the Flags field,
may contain a Carbohydrate ID field, Carbohydrate field, Meal
field, Tester-Health field, Exercise Duration field, Exercise
Intensity field, Medication ID field, Medication field and a
HbA1c field.</Summary>
</InformativeText>
<Value>
<Field name="Flags">
<InformativeText>These flags define which data fields are
present in the Characteristic value</InformativeText>
<Requirement>Mandatory</Requirement>
<Format>8bit</Format>
<BitField>
<Bit index="0" size="1"
name="Carbohydrate ID And Carbohydrate Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C2" />
</Enumerations>
</Bit>
<Bit index="1" size="1" name="Meal Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C3" />
</Enumerations>
</Bit>
<Bit index="2" size="1" name="Tester-Health Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C4" />
</Enumerations>
</Bit>
<Bit index="3" size="1"
name="Exercise Duration And Exercise Intensity Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C5" />
</Enumerations>
</Bit>
<Bit index="4" size="1"
name="Medication ID And Medication Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C6" />
</Enumerations>
</Bit>
<Bit index="5" size="1" name="Medication Value Units">
<Enumerations>
<Enumeration key="0" value="kilograms" requires="C8" />
<Enumeration key="1" value="liters" requires="C9" />
</Enumerations>
</Bit>
<Bit index="6" size="1" name="HbA1c Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C7" />
</Enumerations>
</Bit>
<Bit index="7" size="1" name="Extended Flags Present">
<Enumerations>
<Enumeration key="0" value="False" />
<Enumeration key="1" value="True" requires="C1" />
</Enumerations>
</Bit>
</BitField>
</Field>
<Field name="Sequence Number">
<Requirement>Mandatory</Requirement>
<Format>uint16</Format>
</Field>
<Field name="Extended Flags">
<InformativeText>C1: Field exists if the key of bit 7 of the
Flags field is set to 1</InformativeText>
<Requirement>C1</Requirement>
<Format>8bit</Format>
<BitField>
<ReservedForFutureUse index="0" size="8" />
</BitField>
</Field>
<Field name="Carbohydrate ID">
<InformativeText>C2: Field exists if the key of bit 0 of the
Flags field is set to 1</InformativeText>
<Requirement>C2</Requirement>
<Format>uint8</Format>
<Enumerations>
<Enumeration key="0" value="Reserved for future use" />
<Enumeration key="1" value="Breakfast" />
<Enumeration key="2" value="Lunch" />
<Enumeration key="3" value="Dinner" />
<Enumeration key="4" value="Snack" />
<Enumeration key="5" value="Drink" />
<Enumeration key="6" value="Supper" />
<Enumeration key="7" value="Brunch" />
<ReservedForFutureUse start="8" end="255" />
</Enumerations>
</Field>
<Field name="Carbohydrate - units of kilograms">
<InformativeText>C2: Field exists if the key of bit 0 of the
Flags field is set to 1</InformativeText>
<Requirement>C2</Requirement>
<Format>SFLOAT</Format>
<Unit>org.bluetooth.unit.mass.kilogram</Unit>
<DecimalExponent>-3</DecimalExponent>
</Field>
<Field name="Meal">
<InformativeText>C3: Field exists if the key of bit 1 of the
Flags field is set to 1</InformativeText>
<Requirement>C3</Requirement>
<Format>uint8</Format>
<Enumerations>
<Enumeration key="0" value="Reserved for future use" />
<Enumeration key="1" value="Preprandial (before meal)" />
<Enumeration key="2" value="Postprandial (after meal)" />
<Enumeration key="3" value="Fasting" />
<Enumeration key="4"
value="Casual (snacks, drinks, etc.)" />
<Enumeration key="5" value="Bedtime" />
<ReservedForFutureUse start="6" end="255" />
</Enumerations>
</Field>
<Field name="Tester">
<InformativeText>C4: Field exists if the key of bit 2 of the
Flags field is set to 1</InformativeText>
<Requirement>C4</Requirement>
<Format>nibble</Format>
<Enumerations>
<Enumeration key="0" value="Reserved for future use" />
<Enumeration key="1" value="Self" />
<Enumeration key="2" value="Health Care Professional" />
<Enumeration key="3" value="Lab test" />
<Enumeration key="15" value="Tester value not available" />
<ReservedForFutureUse start="4" end="14" />
</Enumerations>
</Field>
<Field name="Health">
<InformativeText>C4: Field exists if the key of bit 2 of the
Flags field is set to 1</InformativeText>
<Requirement>C4</Requirement>
<Format>nibble</Format>
<Enumerations>
<Enumeration key="0" value="Reserved for future use" />
<Enumeration key="1" value="Minor health issues" />
<Enumeration key="2" value="Major health issues" />
<Enumeration key="3" value="During menses" />
<Enumeration key="4" value="Under stress" />
<Enumeration key="5" value="No health issues" />
<Enumeration key="15" value="Health value not available" />
<ReservedForFutureUse start="6" end="14" />
</Enumerations>
</Field>
<Field name="Exercise Duration">
<InformativeText>C5: Field exists if the key of bit 3 of the
Flags field is set to 1</InformativeText>
<Requirement>C5</Requirement>
<Format>uint16</Format>
<Unit>org.bluetooth.unit.time.second</Unit>
<Enumerations>
<Enumeration key="65535" value="Overrun" />
<Enumeration_Range start="0" end="65534"
name="Exercise Duration in seconds" />
</Enumerations>
</Field>
<Field name="Exercise Intensity">
<InformativeText>C5: Field exists if the key of bit 3 of the
Flags field is set to 1</InformativeText>
<Requirement>C5</Requirement>
<Format>uint8</Format>
<Unit>org.bluetooth.unit.percentage</Unit>
</Field>
<Field name="Medication ID">
<InformativeText>C6: Field exists if the key of bit 4 of the
Flags field is set to 1</InformativeText>
<Requirement>C6</Requirement>
<Format>uint8</Format>
<Enumerations>
<Enumeration key="0" value="Reserved for future use" />
<Enumeration key="1" value="Rapid acting insulin" />
<Enumeration key="2" value="Short acting insulin" />
<Enumeration key="3" value="Intermediate acting insulin" />
<Enumeration key="4" value="Long acting insulin" />
<Enumeration key="5" value="Pre-mixed insulin" />
<ReservedForFutureUse start="6" end="255" />
</Enumerations>
</Field>
<Field name="Medication - units of kilograms">
<InformativeText>C6: Field exists if the key of bit 4 of the
Flags field is set to 1, C8: Field exists if the key of bit 5
of the Flags field is set to 0</InformativeText>
<Requirement>C6</Requirement>
<Requirement>C8</Requirement>
<Format>SFLOAT</Format>
<Unit>org.bluetooth.unit.mass.kilogram</Unit>
<DecimalExponent>-6</DecimalExponent>
</Field>
<Field name="Medication - units of liters">
<InformativeText>C6: Field exists if the key of bit 4 of the
Flags field is set to 1, C9: Field exists if the key of bit 5
of the Flags field is set to 1</InformativeText>
<Requirement>C6</Requirement>
<Requirement>C9</Requirement>
<Format>SFLOAT</Format>
<Unit>org.bluetooth.unit.volume.litre</Unit>
<DecimalExponent>-3</DecimalExponent>
</Field>
<Field name="HbA1c">
<InformativeText>C7: Field exists if the key of bit 6 of the
Flags field is set to 1</InformativeText>
<Requirement>C7</Requirement>
<Format>SFLOAT</Format>
<Unit>org.bluetooth.unit.percentage</Unit>
</Field>
</Value>
<Note>The fields in the above table, reading from top to bottom,
are shown in the order of LSO to MSO, where LSO = Least
Significant Octet and MSO = Most Significant Octet.
<p>Where fields with the format ?nibble? have been defined in the
above table, the fields are shown in the order of Least
Significant Nibble first, when reading the table from top to
bottom. Where the characteristic definition contains two adjacent
nibbles and the service specification has defined that that pair
of nibbles comprise a single octet, the Least Significant Nibble
means the four bits numbered 0, 1, 2 and 3 of the octet and the
Most Significant Nibble means the four bits numbered 4, 5, 6 and
7 of that octet.</p></Note>
</Characteristic>