iRT Telegram Types - Victor-Mo/IRT-ESP GitHub Wiki
Message with the high bit (7) low (0x00 - 0x7F) are 'set' messages, these are send from the thermostat to the boiler for setting parameters. Messages with the high bit (7) high (0x80-0xFF) are 'get' messages. The thermostat sends these messages to request parameters from the boiler.
Set messages
Set messages are always 4 bytes long. The first byte is the telegram type (0x00-0x7f) the second byte is the value to be set, the remaining byte is only used in specific messages. The third byte is the checksum: TT VV xx CC
Get messages
Get messages are 5 bytes long. The first 4 bytes are send by the thermostat followed by a single response byte from the boiler. The first byte is the telegram type (0x80 - 0xFF) followed by 2 unused bytes. The third byte is the checksum, followed by the boilers response: TT xx xx CC RR
Telegram Type : 0x01 (Set)
Set maximum water temperature used for heating in Celsius. When the burner is still running (0x07) and the maximum temperature is reached, the burner is switched off but the pump will keep running. The display will show '0y' (max. temperature reached).
(Via telegram 0x81 the boiler reports the maximum water temperature setting on the boiler.)
Example:
01 1E F6 CE
pos | description | notes |
---|---|---|
0 | type (0x01) | |
1 | temp | Maximum temperature in Celsius(0x1E = 30 degrees) |
2 | not used | |
3 | checksum |
Telegram Type : 0x04 (Set)
? Thermostat informs UBA that temperature is weather controlled ?
Example:
04 08 E2 A6
pos | description | notes |
---|---|---|
0 | type (0x04) | |
1 | mode | 0x00 normal control,0x08 weather controlled |
2 | not used | |
3 | checksum |
Telegram Type : 0x05 (Set)
Enable or disable warm water
Example:
05 04 E2 A6
pos | description | notes |
---|---|---|
0 | type (0x05) | |
1 | mode | 0x00 warm water production off,0x04 warm water production on |
2 | not used | |
3 | checksum |
Telegram Type : 0x07 (Set)
Start the burner and set burner power. Any value above 0x50 (0x4D ?) will start the burner. The higher the value the higher the burner power. When set to 0xFF the burner will be set to max power. (Use with caution !)
Example:
07 CF D0 6C
pos | description | notes |
---|---|---|
0 | type (0x07) | |
1 | power | Burner power, index between 0x00 and 0xFF. 0x00 is off, 0xFF is maximum power. |
2 | not used | |
3 | checksum |
Telegram Type : 0x73 (Set)
Unknown
Example:
73 52 25 43
pos | description | notes |
---|---|---|
0 | type (0x73) | |
1 | unknown | |
2 | not used | |
3 | checksum |
Telegram Type : 0x78 (Set)
Unknown
Example:
78 07 FF A1
pos | description | notes |
---|---|---|
0 | type (0x78) | |
1 | unknown | |
2 | not used | |
3 | checksum |
Telegram Type : 0x81 (Get)
Maximum heating water temperature in Celsius.
Example:
81 A5 F0 39 35
pos | description | notes |
---|---|---|
0 | type (0x81) | |
1-2 | not used | |
3 | checksum | |
4 | temp | Maximum water temperature as set on the boiler. This message seems to only report the value of the boiler setting. |
Telegram Type : 0x82 (Get)
Boiler status
Example:
82 4A 0A 3E 84
pos | description | notes |
---|---|---|
0 | type (0x82) | |
1-2 | not used | |
3 | checksum | |
4 | status | bit 7: 0x80 - Burner onbit 6: 0x40 - ??bit 5: 0x20 - Warm Waterbit 4: 0x10 - 3-way valve (0 - cv / 1 - ww)bit 3: 0x08 - ??bit 2: 0x04 - central heating onbit 1: 0x02 - ?? (seems to be 1 in maintenance mode)bit 0: 0x01 - Warm Water |
Telegram Type : 0x83 (Get)
Unknown
Example:
83 C3 79 E1 00
pos | description | notes |
---|---|---|
0 | type (0x83) | |
1-2 | not used | |
3 | checksum | |
4 | unknown |
Telegram Type : 0x85 (Get)
Unknown
Example:
85 C3 79 E7 74
pos | description | notes |
---|---|---|
0 | type (0x85) | |
1-2 | not used | |
3 | checksum | |
4 | unknown |
Telegram Type : 0x86 (Get)
Burner max power setting. This message reports the setting on the UBA of the max power setting (1-10).
Example:
86 C3 79 E4 E9
pos | description | notes |
---|---|---|
0 | type (0x86) | |
1-2 | not used | |
3 | checksum | |
4 | max burner | Reports the maximum burner power setting (1-10) |
I did some measurements on my boiler, below the results:
setting onboiler | value in telegram |
---|---|
1 | 0x16 |
3 | 0x40 |
5 | 0x75 |
7 | 0x9B |
10 | 0xE9 |
Telegram Type : 0x8A (Get)
Reports the temperature of the external temperature sensor of the boiler.
Example:
8A C3 79 E8 67
pos | description | notes |
---|---|---|
0 | type (0x8A) | |
1-2 | not used | |
3 | checksum | |
4 | temperature |
I do not have an external temperate sensor. But I have tested with several resistors and got some feedback. It looks like the outdoor sensor is a standard 'NTC 10k 3950'
R Ohm | Raw | Temp °C |
---|---|---|
5130 | 0x56 (86) | 41 °C |
6930 | 0x67 (103) | - |
8177 | 0x72 (114) | 30 °C / 31 °C |
10250 | 0x80 (128) | 25 °C |
12580 | 0x8D (141) | 20 °C |
0x89 (137) | 22 °C | |
0x94 (148) | 18 °C | |
15360 | 0x9A (154) | 16 °C |
17780 | 0xA2 (162) | 13 °C |
21910 | 0xAF (175) | 8 °C |
22830 | 0xB2 (178) | 7 °C |
47340 | 0xD3 (211) | -7 °C |
68810 | 0xE0 (224) | -16 °C |
Telegram Type : 0x90 (Get)
Maximum heating water temperate. This is the value of the knob on the boiler controlling the maximum (heating)water temperature.
Example:
90 AE 5F B0 CF
pos | description | notes |
---|---|---|
0 | type (0x90) | |
1-2 | not used | |
3 | checksum | |
4 | temperature | Index value of the knob. when set on 40 degrees it reports 0x15, when set to 90 degrees it reports 0xEA. |
I did some measurements on my boiler, below the results:
setting onboiler | value in telegram |
---|---|
40 | 0x15 |
50 | 0x35 |
60 | 0x6A |
70 | 0x90 |
80 | 0xBF |
90 | 0xEA |
Telegram Type : 0x93 (Get)
Pump status, seems to only report on or off
Example:
93 C3 79 E1 FF
pos | description | notes |
---|---|---|
0 | type (0x93) | |
1-2 | not used | |
3 | checksum | |
4 | pump | 0x00 - pump running0xFF - pump off |
Telegram Type : 0xA3 (Get)
Display code (-H, =H)
Example:
A3 07 D3 CA 53
pos | description | notes |
---|---|---|
0 | type (0xA3) | |
1-2 | not used | |
3 | checksum | |
4 | status | bit 7: 0x80 - 0 - normal status, 1 - Fault codebit 6: 0x40 - display code 1bit 5: 0x20 - display code 1bit 4: 0x10 - display code 1bit 3: 0x08 - display code 1bit 2: 0x04 - display code 2bit 1: 0x02 - display code 2bit 0: 0x01 - display code 2 |
Telegram Type : 0xA4 (Get)
Current output water temperature in Celsius.
Example:
A4 5D 17 42 19
pos | description | notes |
---|---|---|
0 | type (0xA4) | |
1-2 | not used | |
3 | checksum | |
4 | temperature | output water temperature in Celsius |
The reported temperature in the message and what is displayed on a EcomLine IV is not always the same. Below are the values i have measured. 'raw' is the value in the message and 'temp' is the value displayed on the EcomLine IV.
raw | temp | raw | temp | raw | temp | raw | temp | raw | temp | raw | temp | raw | temp | raw | temp | raw | temp |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
00 (0x00) | 10 (0x0A) | 20 (0x14) | 28 | 30 (0x1E) | 36 | 40 (0x28) | 46 | 50 (0x32) | 54 | 60 (0x3C) | 62 | 70 (0x46) | 70 | 80 (0x50) | 80 | ||
01 (0x01) | 11 (0x0B) | 21 (0x15) | 29 | 31 (0x1F) | 37 | 41 (0x29) | 46 | 51 (0x33) | 54 | 61 (0x3D) | 62 | 71 (0x47) | 71 | 81 (0x51) | 81 | ||
02 (0x02) | 12 (0x0C) | 13 | 22 (0x16) | 30 | 32 (0x20) | 38 | 42 (0x2A) | 46 | 52 (0x34) | 54 | 62 (0x3E) | 62 | 72 (0x48) | 72 | 82 (0x52) | 82 | |
03 (0x03) | 13 (0x0D) | 14 | 23 (0x17) | 31 | 33 (0x21) | 39 | 43 (0x2B) | 47 | 53 (0x35) | 55 | 63 (0x3F) | 63 | 73 (0x49) | 73 | 83 (0x53) | 83 | |
04 (0x04) | 14 (0x0E) | 24 (0x18) | 32 | 34 (0x22) | 40 | 44 (0x2C) | 48 | 54 (0x36) | 56 | 64 (0x40) | 64 | 74 (0x4A) | 74 | 84 (0x54) | 84 | ||
05 (0x05) | 15 (0x0F) | 25 (0x19) | 33 | 35 (0x23) | 41 | 45 (0x2D) | 49 | 55 (0x37) | 57 | 65 (0x41) | 65 | 75 (0x4B) | 75 | 85 (0x55) | 85 | ||
06 (0x06) | 16 (0x10) | 26 (0x1A) | 34 | 36 (0x24) | 42 | 46 (0x2E) | 50 | 56 (0x38) | 58 | 66 (0x42) | 66 | 76 (0x4C) | 76 | ||||
07 (0x07) | 17 (0x11) | 27 (0x1B) | 35 | 37 (0x25) | 43 | 47 (0x2F) | 51 | 57 (0x39) | 59 | 67 (0x43) | 67 | 77 (0x4D) | 77 | ||||
08 (0x08) | 18 (0x12) | 28 (0x1C) | 36 | 38 (0x26) | 44 | 48 (0x30) | 52 | 58 (0x3A) | 60 | 68 (0x44) | 68 | 78 (0x4E) | 78 | ||||
09 (0x09) | 19 (0x13) | 27 | 29 (0x1D) | 36 | 39 (0x27) | 45 | 49 (0x31) | 53 | 59 (0x3B) | 61 | 69 (0x45) | 69 | 79 (0x4F) | 79 |
Telegram Type : 0xA6 (Get)
Current input / return water temperature in Celsius. Only available in active mode or Moduline 300.
Example:
A6 A5 F0 1E 1D
pos | description | notes |
---|---|---|
0 | type (0xA6) | |
1-2 | not used | |
3 | checksum | |
4 | temperature | input / return water temperature in Celsius |
Telegram Type : 0xA8 (Get)
Current warm water temperature in Celsius. Only available in active mode or Moduline 300.
Example:
A8 A5 F0 10 41
pos | description | notes |
---|---|---|
0 | type (0xA8) | |
1-2 | not used | |
3 | checksum | |
4 | temperature | warm water temperature in Celsius |
Telegram Type : 0xAA (Get)
Seems to count up when the burner is running. Only available in active mode or Moduline 300.
Example:
AA 52 25 9A 34
pos | description | notes |
---|---|---|
0 | type (0xAA) | |
1-2 | not used | |
3 | checksum | |
4 | timer | burner run time |
Telegram Type : 0xAB (Get)
Number of burner starts. Only available in active mode or Moduline 300.
Example:
AB 52 25 9B AA
pos | description | notes |
---|---|---|
0 | type (0xAB) | |
1-2 | not used | |
3 | checksum | |
4 | count | number of burner starts |
Telegram Type : 0xAC (Get)
Target water temperature, changes when switching between heating and warm water. Only available in active mode or Moduline 300.
Example:
AC A5 F0 10 41
pos | description | notes |
---|---|---|
0 | type (0xAC) | |
1-2 | not used | |
3 | checksum | |
4 | temperature | target water temperature in Celsius |