@@ -52,6 +52,8 @@ class BTHome:
52
52
PM2_5_UINT16_X1 = const (0x0D ) # ug/m^3
53
53
PM10_UINT16_X1 = const (0x0E ) # ug/m^3
54
54
GENERIC_BOOLEAN = const (0x0F ) # 0 (False = Off) 1 (True = On)
55
+ POWER_BINARY = const (0x10 ) # 0 (False = Off) 1 (True = On)
56
+ OPENING_BINARY = const (0x11 ) # 0 (False = Closed) 1 (True = Open)
55
57
CO2_UINT16_X1 = const (0x12 ) # ppm
56
58
TVOC_UINT16_X1 = const (0x13 ) # ug/m^3
57
59
MOISTURE_UINT16_X100 = const (0x14 ) # %
@@ -69,6 +71,8 @@ class BTHome:
69
71
MOISTURE_BINARY = const (0x20 ) # 0 (False = Dry) 1 (True = Wet)
70
72
MOTION_BINARY = const (0x21 ) # 0 (False = Clear) 1 (True = Detected)
71
73
MOVING_BINARY = const (0x22 ) # 0 (False = Not moving) 1 (True = Moving)
74
+ OCCUPANCY_BINARY = const (0x23 ) # 0 (False = Clear) 1 (True = Detected)
75
+ PLUG_BINARY = const (0x24 ) # 0 (False = Unplugged) 1 (True = Plugged in)
72
76
HUMIDITY_UINT8_X1 = const (0x2E ) # %
73
77
MOISTURE_UINT8_X1 = const (0x2F ) # %
74
78
COUNT_UINT16_X1 = const (0x3D )
@@ -127,6 +131,8 @@ class BTHome:
127
131
PM2_5_UINT16_X1 : "pm2.5" , # 0x0D
128
132
PM10_UINT16_X1 : "pm10" , # 0x0E
129
133
GENERIC_BOOLEAN : "generic_boolean" , # 0x0F
134
+ POWER_BINARY : "power_on" , # 0x10
135
+ OPENING_BINARY : "opening" , # 0x11
130
136
CO2_UINT16_X1 : "co2" , # 0x12
131
137
TVOC_UINT16_X1 : "tvoc" , # 0x13
132
138
MOISTURE_UINT16_X100 : "moisture" , # 0x14
@@ -144,6 +150,8 @@ class BTHome:
144
150
MOISTURE_BINARY : "moisture_detected" , # 0x20
145
151
MOTION_BINARY : "motion" , # 0x21
146
152
MOVING_BINARY : "moving" , # 0x22
153
+ OCCUPANCY_BINARY : "occupancy" , # 0x23
154
+ PLUG_BINARY : "plug" , # 0x24
147
155
HUMIDITY_UINT8_X1 : "humidity" , # 0x2E
148
156
MOISTURE_UINT8_X1 : "moisture" , # 0x2F
149
157
COUNT_UINT16_X1 : "count" , # 0x3D
@@ -225,9 +233,12 @@ class BTHome:
225
233
moisture_detected = False
226
234
motion = False
227
235
moving = False
236
+ opening = False
237
+ plug = False
228
238
pm10 = 0
229
239
pm2_5 = 0
230
240
power = 0
241
+ power_on = False
231
242
precipitation = 0
232
243
pressure = 0
233
244
raw = bytes ()
@@ -334,6 +345,8 @@ def _pack_raw_text(self, object_id, value):
334
345
PM2_5_UINT16_X1 : _pack_int16_x1 , # 0x0D
335
346
PM10_UINT16_X1 : _pack_int16_x1 , # 0x0E
336
347
GENERIC_BOOLEAN : _pack_binary , # 0x0F
348
+ POWER_BINARY : _pack_binary , # 0x10
349
+ OPENING_BINARY : _pack_binary , # 0x11
337
350
CO2_UINT16_X1 : _pack_int16_x1 , # 0x12
338
351
TVOC_UINT16_X1 : _pack_int16_x1 ,
339
352
MOISTURE_UINT16_X100 : _pack_int16_x100 ,
@@ -351,6 +364,8 @@ def _pack_raw_text(self, object_id, value):
351
364
MOISTURE_BINARY : _pack_binary ,
352
365
MOTION_BINARY : _pack_binary ,
353
366
MOVING_BINARY : _pack_binary ,
367
+ OCCUPANCY_BINARY : _pack_binary ,
368
+ PLUG_BINARY : _pack_binary ,
354
369
HUMIDITY_UINT8_X1 : _pack_int8_x1 ,
355
370
MOISTURE_UINT8_X1 : _pack_int8_x1 ,
356
371
COUNT_UINT16_X1 : _pack_int16_x1 ,
0 commit comments