Moes BRT-100 within HA

I successfully paired a Moes BRT-100 (_TZE200_b6wax7g0) with deCONZ.
It is visible in Home Assistant and I can change setpoints etcetera.

Within HA it has 3 modes (Auto, Heat, Off)
There are no presets visible in HA for this TRV.
Also child lock and boost are not presented; I would expect them to show up as switches within HA.

I got somehow confused while reading MoesGo (Tuya) Smart Thermostat BRT-100 · Issue #5153 · dresden-elektronik/deconz-rest-plugin · GitHub

It mentions about presets, boost, child lock etcetera, but I cannot figure out what is implemented and what is not :wink:
Or maybe I expect certain things which are implemented in a different way…

Deconz version v2.13.4
HA version: 2021.12.8

Device screen in HA.

Hello can you check direclty the device json ? Visible in phoscon / help / API information ?

Sure, no problem.

{
    "config": {
        "battery": 52,
        "heatsetpoint": 500,
        "locked": false,
        "mode": "off",
        "offset": 0,
        "on": false,
        "reachable": true,
        "schedule": {},
        "schedule_on": false,
        "windowopen_set": false
    },
    "ep": 1,
    "etag": "5b121d7ec06df5acf89f7c960a2822d5",
    "lastannounced": "2022-01-07T18:28:24Z",
    "lastseen": "2022-01-09T17:19Z",
    "manufacturername": "_TZE200_b6wax7g0",
    "modelid": "TS0601",
    "name": "Thermostat 30",
    "state": {
        "lastupdated": "2022-01-09T16:22:55.363",
        "lowbattery": false,
        "on": false,
        "temperature": 1800,
        "valve": 5
    },
    "type": "ZHAThermostat",
    "uniqueid": "84:71:27:ff:fe:9e:b8:58-01-0201"
}

So effectively, there is a problem.
For the field config/preset, this one is skipped during device creation but can appear if you restart deconz. If you can try that ? (perhaps, it will be not visible in HA, but pls check the json)
Boost is in the missing “preset” command
Child lock is in the json "locked": false,

1 Like

Thanks, there it is!
Stupid… when my wife has a ‘technical problem’ I would always advise her to reboot a device as a first step. :blush:

{
    "config": {
        "heatsetpoint": 1000,
        "locked": false,
        "mode": "heat",
        "offset": 0,
        "on": true,
        "preset": "manual",
        "reachable": true,
        "schedule": {},
        "schedule_on": false,
        "setvalve": false,
        "windowopen_set": false
    },
    "ep": 1,
    "etag": "e388ec7b470029219396c717c9f256cd",
    "lastannounced": "2022-01-10T13:13:39Z",
    "lastseen": "2022-01-12T05:52Z",
    "manufacturername": "_TZE200_b6wax7g0",
    "modelid": "TS0601",
    "name": "TRV Spare 1",
    "state": {
        "lastupdated": "2022-01-12T06:43:34.340",
        "lowbattery": false,
        "on": false,
        "temperature": 1800,
        "valve": 0
    },
    "type": "ZHAThermostat",
    "uniqueid": "84:71:27:ff:fe:9e:b8:58-01-0201"
}

After changing modes and a reload of de deconz integration (in HA), the presets also appeared in HA.

I would expect a ‘child lock switch’ to be present in HA. But apparently this isn’t the case. No problem. I will create a template switch which controls the lock via the deconz.configure service.

I have one additional (new) question.
This device (within HA / deconz) only accepts whole numbers as setpoints (i.e. 18degC).
When I set 18.5degC, it will change back to 18degC.
It also reports whole numbers as current temperature.

On the device itself it is possible to enter setpoints in .5degC increments (i.e. 18.5degC). It also reports temperature in .5degC increments.

When I look at my other TRV (_TZE200_c88teujp), this one is able to set en report temperatures with .5degC resolution.

Can this also be changed for this Moes BRT-100?

Not your fault, it s a deconz issue, I can make a PR to correct it, but lot of PR in waiting list, and this code part will be soon re written to use DDF.

Can this also be changed for this Moes BRT-100?

I m checking the code and yes, it seem this device suport 1 decimal.

On the device itself it is possible to enter setpoints in .5degC increments (i.e. 18.5degC). It also reports temperature in .5degC increments.

So the return is working, the problem is only to send it ?

On the code I just divide the temperature by 10, so if you send 1850 the code need to send 185, no reason for the value become 180 …

Do you have the GUI to check log when making the request (with “info”, need line starting by tuya debug") ?

Reporting from device to deconz seems to be OK, for example 22.5degC ((0x02,0x03) Fn: 0 Data 225)

19:55:09:137 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00cb0202000400000005
19:55:09:138 Tuya debug 5 : Status: 0 Transid: 203 Dp: 514 (0x02,0x02) Fn: 0 Data 5
19:55:09:253 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00cc0502000400000000
19:55:09:254 Tuya debug 5 : Status: 0 Transid: 204 Dp: 517 (0x02,0x05) Fn: 0 Data 0
19:55:09:376 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00cd0e0200040000002f
19:55:09:377 Tuya debug 5 : Status: 0 Transid: 205 Dp: 526 (0x02,0x0E) Fn: 0 Data 47
19:55:09:495 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ce0904000101
19:55:09:496 Tuya debug 5 : Status: 0 Transid: 206 Dp: 1033 (0x04,0x09) Fn: 0 Data 1
19:55:09:615 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00cf0401000100
19:55:09:616 Tuya debug 5 : Status: 0 Transid: 207 Dp: 260 (0x01,0x04) Fn: 0 Data 0
19:55:10:091 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00cd03020004000000e1
19:55:10:092 Tuya debug 5 : Status: 0 Transid: 205 Dp: 515 (0x02,0x03) Fn: 0 Data 225
19:55:10:213 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ce0e0200040000002c
19:55:10:214 Tuya debug 5 : Status: 0 Transid: 206 Dp: 526 (0x02,0x0E) Fn: 0 Data 44

Increasing setpoint (on device) in steps of 0.5degC (between 8.5 and 11 degC). Increasing via home assistant gives similar output

20:13:59:623 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00a80202000400000009
20:13:59:623 Tuya debug 5 : Status: 0 Transid: 168 Dp: 514 (0x02,0x02) Fn: 0 Data 9
20:13:59:737 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00a90502000400000000
20:13:59:737 Tuya debug 5 : Status: 0 Transid: 169 Dp: 517 (0x02,0x05) Fn: 0 Data 0
20:13:59:855 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00aa0e0200040000002f
20:13:59:855 Tuya debug 5 : Status: 0 Transid: 170 Dp: 526 (0x02,0x0E) Fn: 0 Data 47
20:13:59:990 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ab0904000101
20:13:59:991 Tuya debug 5 : Status: 0 Transid: 171 Dp: 1033 (0x04,0x09) Fn: 0 Data 1

20:14:00:098 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ac0401000100
20:14:00:099 Tuya debug 5 : Status: 0 Transid: 172 Dp: 260 (0x01,0x04) Fn: 0 Data 0

20:14:23:422 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ad03020004000000e1
20:14:23:422 Tuya debug 5 : Status: 0 Transid: 173 Dp: 515 (0x02,0x03) Fn: 0 Data 225
20:14:23:496 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ae0e0200040000002c
20:14:23:497 Tuya debug 5 : Status: 0 Transid: 174 Dp: 526 (0x02,0x0E) Fn: 0 Data 44
20:14:23:617 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00af0202000400000009
20:14:23:618 Tuya debug 5 : Status: 0 Transid: 175 Dp: 514 (0x02,0x02) Fn: 0 Data 9
20:14:23:751 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b00502000400000000
20:14:23:751 Tuya debug 5 : Status: 0 Transid: 176 Dp: 517 (0x02,0x05) Fn: 0 Data 0
20:14:23:859 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b10e0200040000002c
20:14:23:860 Tuya debug 5 : Status: 0 Transid: 177 Dp: 526 (0x02,0x0E) Fn: 0 Data 44
20:14:23:972 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b20904000101
20:14:23:973 Tuya debug 5 : Status: 0 Transid: 178 Dp: 1033 (0x04,0x09) Fn: 0 Data 1
20:14:24:090 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b30401000100
20:14:24:091 Tuya debug 5 : Status: 0 Transid: 179 Dp: 260 (0x01,0x04) Fn: 0 Data 0

20:14:32:291 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b30202000400000009
20:14:32:292 Tuya debug 5 : Status: 0 Transid: 179 Dp: 514 (0x02,0x02) Fn: 0 Data 9
20:14:32:412 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b40502000400000000
20:14:32:413 Tuya debug 5 : Status: 0 Transid: 180 Dp: 517 (0x02,0x05) Fn: 0 Data 0
20:14:32:529 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b50e0200040000002c
20:14:32:530 Tuya debug 5 : Status: 0 Transid: 181 Dp: 526 (0x02,0x0E) Fn: 0 Data 44
20:14:38:799 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b5020200040000000a
20:14:38:800 Tuya debug 5 : Status: 0 Transid: 181 Dp: 514 (0x02,0x02) Fn: 0 Data 10
20:14:38:919 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b60502000400000000
20:14:38:920 Tuya debug 5 : Status: 0 Transid: 182 Dp: 517 (0x02,0x05) Fn: 0 Data 0
20:14:39:037 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b70e0200040000002c
20:14:39:038 Tuya debug 5 : Status: 0 Transid: 183 Dp: 526 (0x02,0x0E) Fn: 0 Data 44
20:14:44:307 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b7020200040000000a
20:14:44:309 Tuya debug 5 : Status: 0 Transid: 183 Dp: 514 (0x02,0x02) Fn: 0 Data 10
20:14:44:430 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b80502000400000000
20:14:44:431 Tuya debug 5 : Status: 0 Transid: 184 Dp: 517 (0x02,0x05) Fn: 0 Data 0
20:14:44:550 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b90e0200040000002c
20:14:44:551 Tuya debug 5 : Status: 0 Transid: 185 Dp: 526 (0x02,0x0E) Fn: 0 Data 44
20:14:50:312 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00b9020200040000000b
20:14:50:312 Tuya debug 5 : Status: 0 Transid: 185 Dp: 514 (0x02,0x02) Fn: 0 Data 11
20:14:50:438 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00ba0502000400000000
20:14:50:439 Tuya debug 5 : Status: 0 Transid: 186 Dp: 517 (0x02,0x05) Fn: 0 Data 0
20:14:50:559 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00bb0e02000400000029
20:14:50:560 Tuya debug 5 : Status: 0 Transid: 187 Dp: 526 (0x02,0x0E) Fn: 0 Data 41

0x02 0x03 is the temperature mesured, this one use decimal values.
The setpoint is 0x02 0x02, and I m wrong the value is divided 2 time in the code, so you can’t use decimal values

20:13:59:623 Tuya debug 4 : Address 0x847127FFFE9EB858 Payload 00a80202000400000009
20:13:59:623 Tuya debug 5 : Status: 0 Transid: 168 Dp: 514 (0x02,0x02) Fn: 0 Data 9

Here you have used 9 °C, not possible use 9.5

So if I understand correctly: this cannot be changed. The device does not accept .5 values via ZigBee (only via buttons on device)

Yep, the mesured value accept them but not the setpoint.