Skip to content

Commit c92d143

Browse files
authored
Add cooling mode to Bosch room thermostat II (BTH-RM) (#8106)
1 parent fd78323 commit c92d143

File tree

1 file changed

+79
-20
lines changed

1 file changed

+79
-20
lines changed

devices/bosch/room_thermostat2.json

+79-20
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{
22
"schema": "devcap1.schema.json",
3-
"uuid": "dc42c5ce-5f0e-42aa-9937-e05e08f23b57",
4-
"manufacturername": "BOSCH",
3+
"manufacturername": "Bosch",
54
"modelid": "RBSH-RTH0-BAT-ZB-EU",
65
"vendor": "Bosch",
76
"product": "Room thermostat II (BTH-RM)",
@@ -30,9 +29,9 @@
3029
"meta": {
3130
"values": {
3231
"config/mode": {
33-
"auto": 0,
34-
"heat": 1,
35-
"off": 5
32+
"off": 0,
33+
"heat": 3,
34+
"cool": 4
3635
}
3736
}
3837
},
@@ -95,6 +94,10 @@
9594
"fn": "zcl:attr"
9695
}
9796
},
97+
{
98+
"name": "config/coolsetpoint",
99+
"refresh.interval": 360
100+
},
98101
{
99102
"name": "config/checkin",
100103
"public": false,
@@ -142,28 +145,25 @@
142145
"name": "config/mode",
143146
"refresh.interval": 3600,
144147
"read": {
145-
"at": "0x4007",
148+
"at": "0x001C",
146149
"cl": "0x0201",
147150
"ep": 1,
148-
"fn": "zcl:attr",
149-
"mf": "0x1209"
151+
"fn": "zcl:attr"
150152
},
151153
"write": {
152-
"at": "0x4007",
154+
"at": "0x001C",
153155
"cl": "0x0201",
154156
"dt": "0x30",
155157
"ep": 1,
156-
"eval": "if (Item.val == 'auto') { 0 } else if (Item.val == 'heat') { 1 } else if (Item.val == 'off') { 5 };",
157-
"fn": "zcl:attr",
158-
"mf": "0x1209"
158+
"eval": "if (Item.val == 'off') { 0 } else if (Item.val == 'cool') { 3 } else if (Item.val == 'heat') { 4 }",
159+
"fn": "zcl:attr"
159160
},
160161
"parse": {
161-
"at": "0x4007",
162+
"at": "0x001C",
162163
"cl": "0x0201",
163164
"ep": 1,
164-
"eval": "if (Attr.val == 0) { Item.val = 'auto' } else if (Attr.val == 1) { Item.val = 'heat' } else if (Attr.val == 5) { Item.val = 'off' };",
165-
"fn": "zcl:attr",
166-
"mf": "0x1209"
165+
"eval": "if (Attr.val == 0) { Item.val = 'off' } else if (Attr.val == 3) { Item.val = 'cool' } else if (Attr.val == 4) { Item.val = 'heat' }",
166+
"fn": "zcl:attr"
167167
},
168168
"default": "heat"
169169
},
@@ -181,20 +181,49 @@
181181
"cl": "0x0201",
182182
"dt": "0x28",
183183
"ep": 1,
184-
"eval": "Item.val / 10",
184+
"eval": "Item.val / 10;",
185185
"fn": "zcl:attr"
186186
},
187187
"parse": {
188188
"at": "0x0010",
189189
"cl": "0x0201",
190190
"ep": 1,
191-
"eval": "Item.val = Attr.val * 10",
191+
"eval": "Item.val = Attr.val * 10;",
192192
"fn": "zcl:attr"
193193
}
194194
},
195195
{
196196
"name": "config/on"
197197
},
198+
{
199+
"name": "config/preset",
200+
"refresh.interval": 3600,
201+
"read": {
202+
"at": "0x4007",
203+
"cl": "0x0201",
204+
"ep": 1,
205+
"fn": "zcl:attr",
206+
"mf": "0x1209"
207+
},
208+
"write": {
209+
"at": "0x4007",
210+
"cl": "0x0201",
211+
"dt": "0x30",
212+
"ep": 1,
213+
"eval": "if (Item.val == 'auto') { 0 } else if (Item.val == 'manual') { 1 }",
214+
"fn": "zcl:attr",
215+
"mf": "0x1209"
216+
},
217+
"parse": {
218+
"at": "0x4007",
219+
"cl": "0x0201",
220+
"ep": 1,
221+
"eval": "if (Attr.val == 0) { Item.val = 'auto' } else if (Attr.val == 1) { Item.val = 'manual' }",
222+
"fn": "zcl:attr",
223+
"mf": "0x1209"
224+
},
225+
"default": "manual"
226+
},
198227
{
199228
"name": "config/reachable"
200229
},
@@ -259,6 +288,23 @@
259288
{
260289
"name": "state/lastupdated"
261290
},
291+
{
292+
"name": "state/on",
293+
"refresh.interval": 3660,
294+
"parse": {
295+
"at": "0x0029",
296+
"cl": "0x0201",
297+
"ep": 1,
298+
"eval": "Item.val = Attr.val",
299+
"fn": "zcl:attr"
300+
},
301+
"read": {
302+
"at": "0x0029",
303+
"cl": "0x0201",
304+
"ep": 1,
305+
"fn": "zcl:attr"
306+
}
307+
},
262308
{
263309
"name": "state/temperature",
264310
"refresh.interval": 360,
@@ -376,7 +422,7 @@
376422
"at": "0x0000",
377423
"cl": "0x0405",
378424
"ep": 1,
379-
"eval": "Item.val = Attr.val + R.item('config/offset').val",
425+
"eval": "Item.val = Attr.val + R.item('config/offset').val;",
380426
"fn": "zcl:attr"
381427
}
382428
},
@@ -413,13 +459,26 @@
413459
"max": 300,
414460
"change": "0x00000032"
415461
},
462+
{
463+
"at": "0x0011",
464+
"dt": "0x29",
465+
"min": 1,
466+
"max": 300,
467+
"change": "0x00000001"
468+
},
416469
{
417470
"at": "0x0012",
418471
"dt": "0x29",
419472
"min": 1,
420473
"max": 300,
421474
"change": "0x00000001"
422475
},
476+
{
477+
"at": "0x001C",
478+
"dt": "0x30",
479+
"min": 1,
480+
"max": 300
481+
},
423482
{
424483
"at": "0x4007",
425484
"dt": "0x30",
@@ -471,4 +530,4 @@
471530
]
472531
}
473532
]
474-
}
533+
}

0 commit comments

Comments
 (0)