Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FW200: changing room temperature also permanently changes temperatures of the current mode type #167

Closed
Karel311 opened this issue Oct 22, 2021 · 11 comments
Labels
bug Something isn't working

Comments

@Karel311
Copy link

Karel311 commented Oct 22, 2021

EMS-ESP version 3.2.2b14

Bug description
Changing values of "hc1 selected room temperature" or "hc 2 selected room temperature" also permanently changes temperature of the current mode type (heat-eco-nofrost).

Steps to reproduce the behavior.
Open web console dashboard.
Select FW200 thermostat
change value of "hc1 selected room temperature" or "hc 2 selected room temperature"

When turning dial switch knob on FW200 device manually --> only selected temperature changes

system info
{
"System": {
"version": "3.2.2b14",
"uptime": "000+00:13:59.826",
"uptime_sec": 839,
"freemem": 129,
"reset_reason": "Software reset CPU / Software reset CPU"
},
"Status": {
"bus": "connected",
"bus protocol": "HT3",
"telegrams received": 1057,
"read requests sent": 117,
"write requests sent": 5,
"incomplete telegrams": 0,
"tx fails": 0,
"rx line quality": 100,
"tx line quality": 100,
"MQTT publishes": 462,
"MQTT publish fails": 0,
"dallas sensors": 0,
"dallas reads": 0,
"dallas fails": 0
},
"Devices": [
{
"type": "Boiler",
"name": "Condens 2500/Logamax/Logomatic/Cerapur Top/Greenstar/Generic HT3 (DeviceID:0x08, ProductID:95, Version:18.08)",
"handlers": "0x10 0x11 0xC2 0x14 0x15 0x1C 0x18 0x19 0x1A 0x35 0x16 0x33 0x34 0x26 0x2A"
},
{
"type": "Thermostat",
"name": "Junkers FW200 (DeviceID:0x10 ProductID:106, Version:12.12)",
"handlers": "0xA3 0x06 0xA2 0x12 0x16F 0x170 0x171 0x172 0x165 0x166 0x167 0x168"
},
{
"type": "Mixer",
"name": "Junkers IPM (DeviceID:0x21 ProductID:102, Version:20.07)",
"handlers": "0x10C 0x11E"
},
{
"type": "Mixer",
"name": "Junkers IPM (DeviceID:0x20 ProductID:102, Version:20.07)",
"handlers": "0x10C 0x11E"
},
{
"type": "Controller",
"name": "HT3 (DeviceID:0x09, ProductID:95, Version:18.08)"
}
]
}

@Karel311 Karel311 added the bug Something isn't working label Oct 22, 2021
@proddy
Copy link
Contributor

proddy commented Oct 22, 2021

We'll need your help to debug this. Open a telnet session and do

% su
% watch 10
% call thermostat temp 20

and post the next ~10 messages coming back

@Karel311
Copy link
Author

[Kems-esp:# [K000+01:25:19.219 I 2: [command] Calling thermostat command 'temp', value 20, id is default
000+01:25:19.219 I 3: [thermostat] Setting thermostat temperature to 20.0 for heating circuit 1, mode auto
ems-esp:# [Kems-esp:# [K000+01:25:19.332 N 4: [emsesp] Me(0x0B) -> Thermostat(0x10), JunkersSet(0x165), data: 28 (offset 17)
ems-esp:# [K000+01:25:19.465 N 5: [emsesp] Thermostat(0x10) -> All(0x00), JunkersSet(0x165), data: 03 00 04 19 2D 32 03 01 00 03 FF 2A 06 01 03 0A 24 28 01 02 00
ems-esp:# [K000+01:25:19.975 N 6: [emsesp] Thermostat(0x10) -> All(0x00), JunkersMonitor(0x16F), data: 03 01 00 C8 00 BF F3 34 00
ems-esp:# [K000+01:25:20.386 N 7: [emsesp] Thermostat(0x10) -> Mixer(0x20), ?(0x23), data: 1B
ems-esp:# [K000+01:25:21.410 N 8: [emsesp] Me(0x0B) <- Thermostat(0x10), JunkersMonitor(0x16F), data: 20
ems-esp:# [K000+01:25:21.456 N 9: [emsesp] Thermostat(0x10) -> Me(0x0B), JunkersMonitor(0x16F), data: 03 01 00 C8 00 BF F3 34 00

@proddy
Copy link
Contributor

proddy commented Oct 22, 2021

@MichaelDvP do you understand this? Mode is auto, so it sets the temperature for the current mode (permanently). Isn't that normal behaviour?

@MichaelDvP
Copy link
Contributor

@MichaelDvP do you understand this?

No. Some thermostats like RC35, RC300 have a temporyry setting field in auto mode, that changes the temperature until next program-setpoint. But the known telegrams from Junkers does not have this field.
Also the settings in this log are continous heat-mode, not auto and for this it's always that the heat-setting changes.

@Karel311 Please make a log with watch 10 and change on the thermostat the value you like to have in emsesp. (When turning dial switch knob on FW200 device manually --> only selected temperature changes)

@Karel311
Copy link
Author

log with watch 10 and changing dial knob on the thermostat to 20degr.

Watching incoming telegrams, displayed in decoded format
Filtering only telegrams that match a device ID or telegram type of 0x10
[Kems-esp:$ [Kems-esp:$ [K000+19:38:53.318 N 0: [emsesp] Thermostat(0x10) -> All(0x00), JunkersMonitor(0x170), data: 03 02 00 C3 00 C5 F3 34 00
ems-esp:$ [K000+19:38:53.762 N 1: [emsesp] Thermostat(0x10) -> Mixer(0x21), ?(0x23), data: 27
ems-esp:$ [K000+19:38:53.815 N 2: [emsesp] Thermostat(0x10) -> All(0x00), JunkersMonitor(0x170), data: 03 02 00 C8 00 C5 F3 34 00
ems-esp:$ [K000+19:39:02.062 N 3: [emsesp] Me(0x0B) <- Thermostat(0x10), JunkersMonitor(0x16F), data: 20
ems-esp:$ [K000+19:39:02.109 N 4: [emsesp] Thermostat(0x10) -> Me(0x0B), JunkersMonitor(0x16F), data: 03 01 00 BE 00 C5 F3 34 00
ems-esp:$ [K000+19:39:02.325 N 5: [emsesp] Me(0x0B) <- Thermostat(0x10), JunkersMonitor(0x170), data: 20
ems-esp:$ [K000+19:39:02.387 N 6: [emsesp] Thermostat(0x10) -> Me(0x0B), JunkersMonitor(0x170), data: 03 02 00 C8 00 C5 F3 34 00
ems-esp:$ [K000+19:39:02.669 N 7: [emsesp] Me(0x0B) <- Thermostat(0x10), JunkersSet(0x165), data: 20
ems-esp:$ [K000+19:39:02.761 N 8: [emsesp] Thermostat(0x10) -> Me(0x0B), JunkersSet(0x165), data: 03 00 04 19 2D 32 03 01 00 03 FF 2A 06 01 03 0A 24 26 01 02 00
ems-esp:$ [K000+19:39:02.981 N 9: [emsesp] Me(0x0B) <- Thermostat(0x10), JunkersSet(0x166), data: 20
ems-esp:$ [K000+19:39:03.073 N 10: [emsesp] Thermostat(0x10) -> Me(0x0B), JunkersSet(0x166), data: 02 00 02 19 4B 50 03 02 00 03 FF 2A 06 02 04 0A 24 26 02 01 00

@MichaelDvP
Copy link
Contributor

Funny, only the monitor changes, settings stay the same.
I don't think the monitor-telegram is writable, but you can try:
call system send "0B 10 FF 02 00 70 00 D2" should set hc2 to 21°C.

@Karel311
Copy link
Author

Funny, only the monitor changes, settings stay the same. I don't think the monitor-telegram is writable, but you can try: call system send "0B 10 FF 02 00 70 00 D2" should set hc2 to 21°C.

then I get the following response:

[Kems-esp:# [K000+23:05:53.982 I 10: [command] Calling system command 'send', value 0B 10 FF 02 00 70 00 D2 , id is default
ems-esp:# [Kems-esp:# [K000+23:05:54.939 N 11: [emsesp] Thermostat(0x10) -> Me(0x0B), JunkersMonitor(0x170), data: 03 02 00 BE 00 C3 F3 34 00

but unfortunately all temperature values stay the same.

@MichaelDvP
Copy link
Contributor

Yes, as expected. Only the 3 temperatures (nofrost/eco/heat) in the settings telgram can be written. And that is what emsesp do for now. Sorry.
But i don't understand for what you can change the temp in heat mode without storing it to heat-mode? What's the use of this? I think the logic implemented is right and usefull.

@Karel311
Copy link
Author

can be convenient sometimes to temporarly change heat settings during visits until automated program settings take over (heat-eco) so I don't forget to lower the temp settings.

Now I know that it's implemented this way, I can allways make an automation in home assistant to reset the values once a day for example.

Thank you for efforts.

@Karel311
Copy link
Author

Last question (bit unrelated):

in home assistant temperature modes that are published via MQTT are

  • auto
  • heat
  • 'off'

while on the EMS-ESP and FW200 i have
-auto
-heat
-eco
-nofrost

Any chance this can be implemented in future updates?

best regards,
Karel

@proddy
Copy link
Contributor

proddy commented Oct 24, 2021

The default climate control in HA only supports those 3 modes (auto, heat and off) as far as I remember. You would need to create your own component in HA using some buttons and a slider. It's not too hard to do.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants