emsesp / EMS-ESP

ESP8266 firmware to read and control EMS and Heatronic compatible equipment such as boilers, thermostats, solar modules, and heat pumps
https://emsesp.github.io/docs
GNU Lesser General Public License v3.0
303 stars 97 forks source link

Support writing to Buderus RC200 thermostat #434

Closed fupe closed 4 years ago

fupe commented 4 years ago

Hi, is it possible add write temperature to Buderus rc200 thermostat? my configuration EMS-ESP version 1.9.6b0

These 3 were recognized by EMS-ESP: Boiler: Buderus GBx72/Nefit Trendline/Junkers Cerapur/Worcester Greenstar Si/27i (DeviceID: 0x08, ProductID: 123, Version: 06.08) Controller: BC25 Base Controller (DeviceID: 0x09, ProductID: 125, Version: 03.03) Thermostat: Buderus RC200/Bosch CW100/Junkers CW100 (DeviceID: 0x18, ProductID: 157, Version: 41.08)

and part of log

info

EMS-ESP system status:
  System logging set to None
  LED: on, Listen mode: off
  Boiler: enabled, Thermostat: enabled, Solar Module: disabled, Mixing Module: disabled
  Shower Timer: disabled, Shower Alert: disabled
  Saved known device IDs: none

EMS Bus status:
  Bus is connected, protocol: Buderus
  Rx: # successful read requests=559, # CRC errors=0
  Tx: Last poll=4.660 seconds ago, # successful write requests=0

Boiler data:
  Boiler: Buderus GBx72/Nefit Trendline/Junkers Cerapur/Worcester Greenstar Si/27i (DeviceID: 0x08, ProductID: 123, Version: 06.08)
  Hot tap water: off
  Central heating: off
  Warm Water activated: on
  Warm Water circulation pump available: off
  Warm Water circulation pump type: 3-way pump
  Warm Water circulation pump freq: 2x3min
  Warm Water comfort setting: Hot
  Warm Water selected temperature: 60 C
  Warm Water desinfection temperature: 70 C
  Warm Water circulation active: off
  Warm Water set temperature: 10 C
  Warm Water current temperature: 58.9 C
  Warm water temperature (intern): ? C
  Warm water temperature (extern): 58.9 C
  Warm Water current temperature (extern): 58.9 C
  Warm Water current tap water flow: 0.0 l/min
  Warm Water # starts: 1203 times
  Warm Water active time: 15 days 10 hours 0 minutes
  Warm Water 3-way valve: off
  Selected flow temperature: 5 C
  Current flow temperature: 30.5 C
  Max boiler temperature: ? C
  Return temperature: ? C
  Gas: off
  Warm water mode: off
  Boiler pump: off
  Fan: off
  Ignition: off
  Circulation pump: off
  Burner selected max power: 0 %
  Burner current power: 0 %
  Flame current: 0.0 uA
  System pressure: ? bar
  System service code: 0H (203)
  Heating temperature setting on the boiler: 68 C
  Boiler circuit pump modulation max power: 100 %
  Boiler circuit pump modulation min power: 10 %
  Outside temperature: --3276.-8 C
  Exhaust temperature: ? C
  Pump modulation: 0 %
  Burner # starts: 4026 times
  Total burner operating time: 66 days 3 hours 0 minutes
  Total heat operating time: 50 days 17 hours 0 minutes
  Total UBA working time: 359 days 3 hours 0 minutes

Thermostat data:
  Thermostat: Buderus RC200/Bosch CW100/Junkers CW100 (DeviceID: 0x18, ProductID: 157, Version: 41.08)
  Thermostat time is 23:15:17 24/07/2020
  Heating Circuit 1
   Current room temperature: 24.8 C
   Setpoint room temperature: 19.0 C
   Mode is set to day

log v

System Logging set to Verbose
(01:27:11.607) Sending read of type 0x06 to 0x18, telegram: 0B 98 06 00 20
(01:27:11.684) Thermostat -> Me, RCTime(0x06), telegram: 18 0B 06 00 14 07 17 18 0F 15 04 01 18 FF 00 (#data=11)
(01:27:11.732) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 0B 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:27:12.055) Sending read of type 0x18 to 0x08, telegram: 0B 88 18 00 20
(01:27:12.144) Boiler -> Me, UBAMonitorFast(0x18), telegram: 08 0B 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:27:12.454) Sending read of type 0x19 to 0x08, telegram: 0B 88 19 00 20
(01:27:12.538) Boiler -> Me, UBAMonitorSlow(0x19), telegram: 08 0B 19 00 80 00 80 00 80 00 00 00 00 00 00 0F BA 01 73 F4 00 00 00 01 1D 3C 00 0B 07 80 00 (#data=27)
(01:27:12.977) Sending read of type 0x33 to 0x08, telegram: 0B 88 33 00 20
(01:27:13.028) Boiler -> Me, UBAParameterWW(0x33), telegram: 08 0B 33 00 08 FF 3C FB 00 28 00 02 46 00 FF FF 00 (#data=13)
(01:27:13.351) Sending read of type 0x16 to 0x08, telegram: 0B 88 16 00 20
(01:27:13.443) Boiler -> Me, UBAParametersMessage(0x16), telegram: 08 0B 16 00 00 44 64 00 06 FA 0A 01 02 64 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 28 00 3C (#data=27)
(01:27:13.700) Sending read of type 0x14 to 0x08, telegram: 0B 88 14 00 20
(01:27:13.767) Boiler -> Me, UBATotalUptimeMessage(0x14), telegram: 08 0B 14 00 07 E4 15 (#data=3)
(01:27:14.830) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 03 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:27:16.076) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:27:16.359) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:27:16.591) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:27:16.841) Thermostat -> Boiler, Type(0x23), telegram: 18 08 23 00 00 00 00 (#data=3)
thermostat read 65

Requesting type (0x65) from dest 0x18
Publishing MQTT data for: boiler
(01:27:20.529) Sending read of type 0x65 to 0x18, telegram: 0B 98 65 00 20
(01:27:20.566) Thermostat -> Me, telegram: 18 0B 65 00
(01:27:20.618) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 0B 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:27:21.593) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 03 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:27:24.493) Thermostat -> Boiler, UBASetPoints(0x1A), telegram: 18 08 1A 00 00 00 00 (#data=3)
(01:27:24.610) Thermostat -> All, RCPLUSStatusMessage_HC1(0x01A5), telegram: 18 00 FF 00 01 A5 00 F8 21 26 00 00 26 2C 01 EF 01 01 03 01 EF 00 87 00 00 11 01 04 (#data=22)
(01:27:24.863) Thermostat -> All, RCPLUSStatusMessage_HC1(0x01A5), telegram: 18 00 FF 16 01 A5 09 AF 00 00 07 00 00 00 00 00 00 4B 00 3C 01 FF 00 02 (#data=18)
(01:27:25.250) Thermostat -> All, Type(0x021D), telegram: 18 00 FF 00 02 1D 00 00 08 07 (#data=4)
(01:27:26.060) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:27:26.352) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:27:26.672) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
Publishing MQTT data for: thermostat boiler
(01:27:36.019) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:27:36.229) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:27:36.522) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 03 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:27:36.825) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:27:37.062) Boiler -> All, UBAMonitorSlow(0x19), telegram: 08 00 19 00 80 00 80 00 80 00 00 00 00 00 00 0F BA 01 73 F4 00 00 00 01 1D 3C 00 0B 07 80 00 (#data=27)
(01:27:37.466) Boiler -> All, UBAMaintenanceStatusMessage(0x1C), telegram: 08 00 1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (#data=25)
(01:27:37.692) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
Publishing MQTT data for: boiler
(01:27:46.017) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:27:46.311) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:27:46.531) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
Publishing MQTT data for: boiler
(01:27:53.038) Thermostat -> All, RCPLUSStatusMessage_HC1(0x01A5), telegram: 18 00 FF 0D 01 A5 01 EE 00 88 (#data=4)
(01:27:56.011) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:27:56.260) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:27:56.567) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
Publishing MQTT data for: thermostat boiler
(01:28:05.996) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:28:06.258) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:28:06.552) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:28:07.411) Thermostat -> All, RCTime(0x06), telegram: 18 00 06 00 14 07 17 18 10 11 04 01 18 FF 00 (#data=11)
Fetching data from EMS devices
Requesting type RCTime(0x06) from dest 0x18
Requesting type UBAMonitorFast(0x18) from dest 0x08
Requesting type UBAMonitorSlow(0x19) from dest 0x08
Requesting type UBAParameterWW(0x33) from dest 0x08
Requesting type UBAParametersMessage(0x16) from dest 0x08
Requesting type UBATotalUptimeMessage(0x14) from dest 0x08
Publishing MQTT data for: boiler
(01:28:12.018) Sending read of type 0x06 to 0x18, telegram: 0B 98 06 00 20
(01:28:12.096) Thermostat -> Me, RCTime(0x06), telegram: 18 0B 06 00 14 07 17 18 10 15 04 01 18 FF 00 (#data=11)
(01:28:12.260) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 0B 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:28:12.443) Sending read of type 0x18 to 0x08, telegram: 0B 88 18 00 20
(01:28:12.541) Boiler -> Me, UBAMonitorFast(0x18), telegram: 08 0B 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:28:12.841) Sending read of type 0x19 to 0x08, telegram: 0B 88 19 00 20
(01:28:12.931) Boiler -> Me, UBAMonitorSlow(0x19), telegram: 08 0B 19 00 80 00 80 00 80 00 00 00 00 00 00 0F BA 01 73 F4 00 00 00 01 1D 3C 00 0B 07 80 00 (#data=27)
thermostat read 6f(01:28:13.266) Sending read of type 0x33 to 0x08, telegram: 0B 88 33 00 20
(01:28:13.332) Boiler -> Me, UBAParameterWW(0x33), telegram: 08 0B 33 00 08 FF 3C FB 00 28 00 02 46 00 FF FF 00 (#data=13)
(01:28:13.588) Sending read of type 0x16 to 0x08, telegram: 0B 88 16 00 20
(01:28:13.680) Boiler -> Me, UBAParametersMessage(0x16), telegram: 08 0B 16 00 00 44 64 00 06 FA 0A 01 02 64 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 28 00 3C (#data=27)
(01:28:14.087) Sending read of type 0x14 to 0x08, telegram: 0B 88 14 00 20
(01:28:14.154) Boiler -> Me, UBATotalUptimeMessage(0x14), telegram: 08 0B 14 00 07 E4 16 (#data=3)
(01:28:15.286) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 03 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)

Requesting type JunkersStatusMessage_HC1(0x6F) from dest 0x18
(01:28:15.939) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:28:16.223) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:28:16.470) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:28:17.003) Sending read of type 0x6F to 0x18, telegram: 0B 98 6F 00 20
(01:28:17.034) Thermostat -> Me, telegram: 18 0B 6F 00
(01:28:17.105) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 0B 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:28:17.335) Thermostat -> Boiler, Type(0x23), telegram: 18 08 23 00 00 00 00 (#data=3)
(01:28:18.104) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 03 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
Publishing MQTT data for: boiler
(01:28:24.281) Thermostat -> Boiler, UBASetPoints(0x1A), telegram: 18 08 1A 00 00 00 00 (#data=3)
(01:28:24.399) Thermostat -> All, RCPLUSStatusMessage_HC1(0x01A5), telegram: 18 00 FF 00 01 A5 00 F8 21 26 00 00 26 2C 01 EE 01 01 03 01 EE 00 88 00 00 11 01 04 (#data=22)
(01:28:24.652) Thermostat -> All, RCPLUSStatusMessage_HC1(0x01A5), telegram: 18 00 FF 16 01 A5 09 AF 00 00 07 00 00 00 00 00 00 4B 00 3C 01 FF 00 02 (#data=18)
(01:28:25.038) Thermostat -> All, Type(0x021D), telegram: 18 00 FF 00 02 1D 00 00 08 07 (#data=4)
(01:28:25.958) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:28:26.290) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:28:26.499) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
Publishing MQTT data for: thermostat boiler
(01:28:35.944) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:28:36.268) Boiler -> All, UBADevices(0x07), telegram: 08 00 07 00 03 00 01 00 00 00 00 00 00 00 00 00 00 (#data=13)
(01:28:36.500) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:28:36.875) Boiler -> All, UBAMonitorSlow(0x19), telegram: 08 00 19 00 80 00 80 00 80 00 00 00 00 00 00 0F BA 01 73 F4 00 00 00 01 1D 3C 00 0B 07 80 00 (#data=27)
(01:28:37.114) Boiler -> All, UBAMaintenanceStatusMessage(0x1C), telegram: 08 00 1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (#data=25)
(01:28:37.356) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
Publishing MQTT data for: boiler
(01:28:40.312) Thermostat -> All, Type(0xA2), telegram: 18 00 A2 00 00 00 00 00 00 (#data=5)
(01:28:45.841) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:28:46.063) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
(01:28:46.335) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
Publishing MQTT data for: boiler
(01:28:53.044) Thermostat -> All, RCPLUSStatusMessage_HC1(0x01A5), telegram: 18 00 FF 08 01 A5 01 ED 01 01 03 01 ED 00 89 (#data=9)
(01:28:54.310) Thermostat -> Boiler, UBAFlags(0x35), telegram: 18 08 35 00 01 01 (#data=2)
(01:28:55.854) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:28:56.159) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
(01:28:56.380) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
Publishing MQTT data for: thermostat boiler
lo(01:29:05.841) Boiler -> All, UBAMonitorWWMessage(0x34), telegram: 08 00 34 00 0A 02 4D 02 4D 20 00 00 03 00 00 56 B8 00 04 B3 00 80 00 (#data=19)
g(01:29:06.157) Boiler -> All, UBAMonitorFast(0x18), telegram: 08 00 18 00 05 01 31 00 00 00 00 00 40 80 00 02 4D 80 00 00 00 FF 30 48 00 CB 00 00 00 (#data=25)
(01:29:06.377) Boiler -> All, MC10Status(0x2A), telegram: 08 00 2A 00 00 00 00 00 00 00 00 01 67 00 00 80 00 00 80 00 80 00 80 00 04 (#data=21)
 n

System Logging set to None

thanks Martin

proddy commented 4 years ago

Hi @fupe , although I have tested it the latest version 2.0 should support reading and writing to your RC200 as it uses the same telegram set as the RC100 and RC300. Version 2.0 is still in development, but pretty stable. You can either download, build and upload yourself or grab the pre-built binary. Note however that it's not yet backward compatible with 1.9.x yet so you will need to re-enter all your settings (wifi, mqtt, etc) manually via the web or the new telnet console. You'll find all the info at https://github.com/proddy/EMS-ESP/blob/v2/README.md

fupe commented 4 years ago

Hi Proddy, thanks for reply. I download and setup v2.0.0b10 NOw i can see all three devices in web and putty terminal in tx_mode 1 (I try mode 1 2 3) Boiler Buderus GBx72/Trendline/Cerapur/Greenstar Si/27i 0x08 123 06.08 Controller BC25 0x09 125 03.03 Thermostat RC200/CW100 0x18 157 41.08

ems-esp:/$ show devices These EMS devices are currently active:

Boiler: Buderus GBx72/Trendline/Cerapur/Greenstar Si/27i (DeviceID:0x08 ProductID:123, Version:06.08) This Boiler will respond to telegram type IDs: 0x10 0x11 0x18 0x19 0x34 0x1C 0x2A 0x33 0x14 0x35 0x15 0x16 0x1A 0xD1 0xE3 0xE4 0xE5 0xE9 Subscribed MQTT topics: ems-esp/boiler_cmd ems-esp/boiler_cmd_wwactivated ems-esp/boiler_cmd_wwonetime ems-esp/boiler_cmd_wwcirculation ems-esp/boiler_cmd_wwtemp

Thermostat: RC200/CW100 (DeviceID:0x18, ProductID:157, Version:41.08) This Thermostat will respond to telegram type IDs: 0xA3 0x06 0x2A5 0x2B9 0x2A6 0x2BA 0x2A7 0x2BB 0x2A8 0x2BC 0x31D 0x31E

Controller: BC25 (DeviceID:0x09, ProductID:125, Version:03.03)

But, I can switch to set thermostat. ems-esp:/$ thermostat Command not found

boiler is ok

ems-esp:/$ boiler ems-esp:/boiler$

on mqtt explorer i can see boiler_data but not thermostat data. [image: image.png]

here is part of log 000+00:21:49.699 N 398: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 27 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:21:49.699 D 399: [emsdevice] Received UBAMonitorFast 000+00:21:49.994 N 400: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:21:49.994 D 401: [emsdevice] Received MC10Status 000+00:21:50.239 N 402: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:21:50.239 D 403: [emsdevice] Received UBAMonitorWW 000+00:21:50.343 D 404: [mqtt] Publishing topic ems-esp/boiler_data (#166, attempt #1, pid 1) 000+00:21:59.673 N 405: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:21:59.673 D 406: [emsdevice] Received UBAMonitorWW 000+00:21:59.955 N 407: [emsesp] Boiler(0x08) -> All(0x00), UBADevices(0x07), data: 0B 00 01 00 00 00 00 00 00 00 00 00 00 000+00:22:00.024 D 408: [emsdevice] Fetching values for device ID 0x08 000+00:22:00.024 D 409: [telegram] Tx read request to device 0x08 for type ID 0x19 000+00:22:00.024 D 410: [telegram] Tx read request to device 0x08 for type ID 0x33 000+00:22:00.024 D 411: [telegram] Tx read request to device 0x08 for type ID 0x16 000+00:22:00.024 D 412: [emsdevice] Fetching values for device ID 0x09 000+00:22:00.024 D 413: [emsdevice] Fetching values for device ID 0x18 000+00:22:00.024 D 414: [telegram] Tx read request to device 0x18 for type ID 0x06 000+00:22:00.201 N 415: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 27 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:22:00.201 D 416: [emsdevice] Received UBAMonitorFast 000+00:22:00.213 D 417: [mqtt] Publishing topic ems-esp/boiler_data (#167, attempt #1, pid 1) 000+00:22:00.444 D 418: [telegram] Sending read Tx [#101], telegram: 0B 88 19 00 20 D0 000+00:22:00.535 D 419: [emsesp] Last Tx read successful 000+00:22:00.535 N 420: [emsesp] Boiler(0x08) -> Me(0x0B), UBAMonitorSlow(0x19), data: 80 00 80 00 80 00 00 00 00 00 00 0F C7 01 74 A9 00 00 00 01 1D 3C 00 0B 07 80 17 000+00:22:00.535 D 421: [emsdevice] Received UBAMonitorSlow 000+00:22:00.583 N 422: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorSlow(0x19), data: 80 00 80 00 80 00 00 00 00 00 00 0F C7 01 74 A9 00 00 00 01 1D 3C 00 0B 07 80 6C 000+00:22:00.583 D 423: [emsdevice] Received UBAMonitorSlow 000+00:22:00.843 N 424: [emsesp] Boiler(0x08) -> All(0x00), UBAMaintenanceStatus(0x1C), data: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000+00:22:00.843 D 425: [emsdevice] Received UBAMaintenanceStatus 000+00:22:01.045 N 426: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:22:01.045 D 427: [emsdevice] Received MC10Status 000+00:22:01.218 D 428: [mqtt] Publishing topic ems-esp/heartbeat (#168, attempt #1, pid 1) 000+00:22:01.416 D 429: [telegram] Sending read Tx [#102], telegram: 0B 88 33 00 20 78 000+00:22:01.493 D 430: [emsesp] Last Tx read successful 000+00:22:01.493 N 431: [emsesp] Boiler(0x08) -> Me(0x0B), UBAParameterWW(0x33), data: 08 FF 3C FB 00 28 00 02 46 00 FF FF 00 000+00:22:01.493 D 432: [emsdevice] Received UBAParameterWW 000+00:22:01.766 D 433: [telegram] Sending read Tx [#103], telegram: 0B 88 16 00 20 EC 000+00:22:01.857 D 434: [emsesp] Last Tx read successful 000+00:22:01.857 N 435: [emsesp] Boiler(0x08) -> Me(0x0B), UBAParameters(0x16), data: FF 44 64 00 06 FA 0A 01 02 64 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 28 00 7F 000+00:22:01.857 D 436: [emsdevice] Received UBAParameters 000+00:22:02.191 D 437: [telegram] Sending read Tx [#104], telegram: 0B 98 06 00 20 2C 000+00:22:02.267 D 438: [emsesp] Last Tx read successful 000+00:22:02.267 N 439: [emsesp] Thermostat(0x18) -> Me(0x0B), RCTime(0x06), data: 14 07 0C 1F 15 1A 04 01 18 FF 00 000+00:22:02.267 D 440: [emsdevice] Received RCTime 000+00:22:04.877 N 441: [emsesp] Thermostat(0x18) -> All(0x00), RC300Set(0x2B9), data: 1C 12 @offset 8 000+00:22:04.877 D 442: [emsdevice] Received RC300Set 000+00:22:07.130 N 443: [emsesp] Thermostat(0x18) -> All(0x00), RC300Monitor(0x2A5), data: 1C 00 00 1C A7 @offset 3 000+00:22:07.130 D 444: [emsdevice] Received RC300Monitor 000+00:22:09.668 N 445: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:22:09.668 D 446: [emsdevice] Received MC10Status 000+00:22:10.003 N 447: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:22:10.003 D 448: [emsdevice] Received UBAMonitorWW 000+00:22:10.221 N 449: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 27 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:22:10.221 D 450: [emsdevice] Received UBAMonitorFast 000+00:22:10.286 D 451: [mqtt] Publishing topic ems-esp/boiler_data (#169, attempt #1, pid 1) 000+00:22:14.753 N 452: [emsesp] Thermostat(0x18) -> All(0x00), RCTime(0x06), data: 14 07 0C 1F 15 27 04 01 18 FF 00 000+00:22:14.753 D 453: [emsdevice] Received RCTime 000+00:22:16.925 N 454: [emsesp] Thermostat(0x18) -> Boiler(0x08), UBAFlags(0x35), data: 01 01 000+00:22:19.592 N 455: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 27 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:22:19.592 D 456: [emsdevice] Received UBAMonitorFast 000+00:22:19.950 N 457: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:22:19.950 D 458: [emsdevice] Received MC10Status 000+00:22:20.157 N 459: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:22:20.157 D 460: [emsdevice] Received UBAMonitorWW 000+00:22:20.355 D 461: [mqtt] Publishing topic ems-esp/boiler_data (#170, attempt #1, pid 1) 000+00:22:24.703 N 462: [emsesp] Thermostat(0x18) -> Boiler(0x08), UBASetPoints(0x1A), data: 00 00 00 000+00:22:24.831 N 463: [emsesp] Thermostat(0x18) -> All(0x00), RC300Monitor(0x2A5), data: 00 FA 21 1C 00 00 1C 2C 00 63 01 01 03 00 63 01 41 00 00 11 01 04 6E 000+00:22:24.831 D 464: [emsdevice] Received RC300Monitor 000+00:22:25.073 N 465: [emsesp] Thermostat(0x18) -> All(0x00), RC300Monitor(0x2A5), data: 09 C4 00 00 07 00 00 00 00 00 00 4B 00 3C 01 FF 00 02 4B @offset 22 000+00:22:25.073 D 466: [emsdevice] Received RC300Monitor 000+00:22:25.632 N 467: [emsesp] Thermostat(0x18) -> All(0x00), RC300WWmode(0x31D), data: 00 00 08 07 8F 000+00:22:25.632 D 468: [emsdevice] Received RC300WWmode 000+00:22:25.824 N 469: [emsesp] Thermostat(0x18) -> Boiler(0x08), ?(0x23), data: 00 00 00 000+00:22:29.604 N 470: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:22:29.604 D 471: [emsdevice] Received UBAMonitorWW 000+00:22:29.836 N 472: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 26 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:22:29.836 D 473: [emsdevice] Received UBAMonitorFast 000+00:22:30.094 N 474: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:22:30.094 D 475: [emsdevice] Received MC10Status 000+00:22:30.210 D 476: [mqtt] Publishing topic ems-esp/boiler_data (#171, attempt #1, pid 1) 000+00:22:37.254 N 477: [emsesp] Thermostat(0x18) -> All(0x00), RC300Monitor(0x2A5), data: 01 42 5C @offset 15 000+00:22:37.254 D 478: [emsdevice] Received RC300Monitor 000+00:22:37.448 N 479: [emsesp] Thermostat(0x18) -> All(0x00), RC300Monitor(0x2A5), data: 00 62 5E @offset 13 000+00:22:37.448 D 480: [emsdevice] Received RC300Monitor 000+00:22:39.542 N 481: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:22:39.542 D 482: [emsdevice] Received MC10Status 000+00:22:39.897 N 483: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:22:39.897 D 484: [emsdevice] Received UBAMonitorWW 000+00:22:40.129 N 485: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 26 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:22:40.129 D 486: [emsdevice] Received UBAMonitorFast 000+00:22:40.267 D 487: [mqtt] Publishing topic ems-esp/boiler_data (#172, attempt #1, pid 1) 000+00:22:49.566 N 488: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorFast(0x18), data: 05 02 26 00 00 00 00 00 40 80 00 02 14 80 00 00 00 FF 30 48 00 CB 00 00 00 000+00:22:49.566 D 489: [emsdevice] Received UBAMonitorFast 000+00:22:49.807 N 490: [emsesp] Boiler(0x08) -> All(0x00), MC10Status(0x2A), data: 00 00 00 00 00 00 00 00 CF 00 00 80 00 00 80 00 80 00 80 00 04 000+00:22:49.807 D 491: [emsdevice] Received MC10Status 000+00:22:50.016 N 492: [emsesp] Boiler(0x08) -> All(0x00), UBAMonitorWW(0x34), data: 0A 02 14 02 14 00 00 00 03 00 00 57 6D 00 04 C0 00 80 00 000+00:22:50.016 D 493: [emsdevice] Received UBAMonitorWW 000+00:22:50.328 D 494: [mqtt] Publishing topic ems-esp/boiler_data (#173, attempt #1, pid 1)

thanks for help. Martin

pá 31. 7. 2020 v 10:20 odesílatel Proddy notifications@github.com napsal:

Closed #434 https://github.com/proddy/EMS-ESP/issues/434.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/proddy/EMS-ESP/issues/434#event-3607435480, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAWDX6M5W5JU2KOPPVZORA3R6J5GVANCNFSM4PHCS7WQ .

proddy commented 4 years ago

great!

MichaelDvP commented 4 years ago

@proddy seems you closed to fast and fail to see that there are 2 issues left.

  1. the thermostat is the only thermostat, but uses device_id 0x18. It is not recognized as master.
  2. he can't get into thermostat context because there is no master-thermostat, but to set the master he has to enter the context.

(now we have the case mentioned here)

Quick solution is allow all thermostats as master, not only 0x10 and 0x17. This will make the system of @fupe useable. But if someone uses more RC200 for different hc we need to have hc2 type-id matched to 0x19, hc3 typ_id to 0x1A, etc. and only the fist one of these controllers is used for DHW-settings.

proddy commented 4 years ago

oh dear, I overlooked that. I'll have a think about the options.

MichaelDvP commented 4 years ago

A possible patch for the problem with multible hc and RC200 at 0x18.. is:

Then the first of the 0x18.. thermostats is registered as master with 4 hc, the others are not writeable, but writing to a hc will automatically address the right controller.

proddy commented 4 years ago

that would work. I'll add it to the new branch.

fupe commented 4 years ago

Hi proddy, I am now 1000km from home. I will return on sunday and test your path and report. Thanks Martin.

Dne po 3. 8. 2020 9:29 uživatel Proddy notifications@github.com napsal:

that would work. I'll add it to the new branch.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/proddy/EMS-ESP/issues/434#issuecomment-667857210, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAWDX6K2RKU7YABTKEAQQLLR6ZRNHANCNFSM4PHCS7WQ .

fupe commented 4 years ago

Hi proddy many thanks. now i am able to write mode and temp to thermostat. that is great. Martin

út 4. 8. 2020 v 8:21 odesílatel Martin Kaplan fupeama@gmail.com napsal:

Hi proddy, I am now 1000km from home. I will return on sunday and test your path and report. Thanks Martin.

Dne po 3. 8. 2020 9:29 uživatel Proddy notifications@github.com napsal:

that would work. I'll add it to the new branch.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/proddy/EMS-ESP/issues/434#issuecomment-667857210, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAWDX6K2RKU7YABTKEAQQLLR6ZRNHANCNFSM4PHCS7WQ .