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

Worcester-Bosch Greenstar weather compensation support #1642

Closed
V4ler1an opened this issue Feb 27, 2024 · 19 comments
Closed

Worcester-Bosch Greenstar weather compensation support #1642

V4ler1an opened this issue Feb 27, 2024 · 19 comments

Comments

@V4ler1an
Copy link

I have a Greenstar 4000 system boiler model: GR4700iW S - 15 NG that has been fitted with the official Worcester outdoor weather sensor kit (part #: 7716192764): https://www.amazon.co.uk/Worcester-7716192764-Greenstar-Outdoor-Weather/dp/B07H63CKPZ

I have an E32 v2 (Wi-Fi + Ethernet v2) EMS-Bus Gateway hooked up through the service jack with 69 entities published to Home Assistant through MQTT. However.... the boiler service menu offers the following controls to manage the weather compensation features but these are not currently supported by the gateway's ESP firmware:

Enable / Disable Heating Curve
Increase / Decrease Curve Base Temp
Increase / Decrease Curve End Temp

Could I have these added to the firmware asap? Syslog trace attached recording the following changes I made to these settings on the boiler system menu soon after 13:53

  • Heating curve turned off
  • Heating curve turn on
  • Htg. curve base increased 2 deg C
  • Htg. curve end increased 2 deg C

Many thanks!
log.txt

@MichaelDvP
Copy link
Contributor

OK on/off is telegram 28 offset 0, data 0xFF/0x00

2024-02-27 13:53:29.998 TRACE 208891: [emsesp] controller(0x09) -W-> boiler(0x08), ?(0x28), data: 00
2024-02-27 13:53:42.505 TRACE 208918: [emsesp] controller(0x09) -W-> boiler(0x08), ?(0x28), data: FF

but heating curve seems to be absolute values, in offset 1/2, base 42°C, end 52°C.

2024-02-27 13:53:55.253 TRACE 208934: [emsesp] controller(0x09) -W-> boiler(0x08), ?(0x28), data: 2A (offset 2)
2024-02-27 13:53:55.325 TRACE 208935: [emsesp] boiler(0x08) -B-> All(0x00), ?(0x28), data: 32 2A (offset 1)
2024-02-27 13:54:06.794 TRACE 208942: [emsesp] controller(0x09) -W-> boiler(0x08), ?(0x28), data: 34 (offset 1)

Can you check the full telegram by telnet read 8 28, there are some other infos, i think it's 7 bytes long:
2024-02-27 13:53:42.571 TRACE 208919: [emsesp] boiler(0x08) -B-> All(0x00), ?(0xF7), data: 28 00 00 3F

@MichaelDvP
Copy link
Contributor

For first test try with custom entities and test values and writing:
grafik

grafik

grafik

@V4ler1an
Copy link
Author

Thanks Michael:
log - telnet.txt

@V4ler1an
Copy link
Author

V4ler1an commented Feb 27, 2024

To my untrained eye, the custom entities appear to be working as expected when tested via HA. Boiler flow temps look to be reacting correctly. Boiler LCD confirms curve is being enabled / disabled and the base and end temps are updating.

@V4ler1an
Copy link
Author

Just to clarify, the telnet log I provided was taken while changing the settings using the new HA custom entities. Were you preferring that I make the test changes via the boiler LCD control panel or does it not matter?

@MichaelDvP
Copy link
Contributor

Yes, i can see it in the log, looks godd, we can add the entities, but i want you to type in telnet the command read 8 28
This should give the whole telegram back, not only offsets 0-2.

@V4ler1an
Copy link
Author

Does this give you what you are looking for?

ems-esp:$ log all
Log level: ALL
000+01:06:17.748 T 127: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorFastPlus(0xE4), data: 10 20 2D 2D 00 C8 2C 01 C5 64 10 03 06 01 D2 00 00 80 00 00 61 1C 03 01 C5 00 00
000+01:06:17.925 T 128: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorFastPlus(0xE4), data: 00 00 00 00 FE 10 64 (offset 35)
000+01:06:18.114 T 129: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorSlowPlus2(0xE3), data: 01 00 00 00 00 00 00 00 00 00 00 01 C5 10 64 2C 00 00 00 00
000+01:06:18.329 T 130: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorWWPlus(0xE9), data: 05 80 00 80 00 00 00 00 00 46 3C 00 00 02 00 00 00 00 00 00 00 00 00 05 02 00
ems-esp:$ read 8 28
000+01:06:18.754 T 131: [emsesp] Me(0x0B) -R-> boiler(0x08), ?(0x28), length: 0x1B
000+01:06:18.768 N 132: [emsesp] boiler(0x08) -W-> Me(0x0B), ?(0x28), data: 00 3C 32 10 00 05
000+01:06:27.750 T 133: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorFastPlus(0xE4), data: 10 20 2D 2D 00 C8 2C 01 C5 64 0F 03 06 01 D3 00 00 80 00 00 61 1C 03 01 C5 00 00
000+01:06:27.927 T 134: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorFastPlus(0xE4), data: 00 00 00 00 FE 0F 64 (offset 35)
000+01:06:28.116 T 135: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorSlowPlus2(0xE3), data: 01 00 00 00 00 00 00 00 00 00 00 01 C5 0F 64 2C 00 00 00 00
000+01:06:28.360 T 136: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorWWPlus(0xE9), data: 05 80 00 80 00 00 00 00 00 46 3C 00 00 02 00 00 00 00 00 00 00 00 00 05 02 00
000+01:06:29.170 T 137: [emsesp] boiler(0x08) -B-> All(0x00), UBAMonitorFastPlus(0xE4), data: 01 C4 (offset 23)
ems-esp:$ log off
Log level: OFF
ems-esp:$

MichaelDvP added a commit to MichaelDvP/EMS-ESP32 that referenced this issue Feb 27, 2024
@MichaelDvP
Copy link
Contributor

Thanks,
[emsesp] boiler(0x08) -W-> Me(0x0B), ?(0x28), data: 00 3C 32 10 00 05
3 other parameters with value 16, 0 and 5, any idea what is it?
I've added the on/base/end to my dev, please check, if ok i'll make a PR.
https://github.com/MichaelDvP/EMS-ESP32/releases/tag/latest

@V4ler1an
Copy link
Author

I've had a look over the changes although don't know the value of my checking the release, i'm certainly no dev :) But the custom entities I have seem to work and i'll continue testing / checking them in my environment and be sure to make you aware of any problems I encounter.

In regards to those values. It's a bit hard to know, can you give me any more context? Looking at the entity values being reported in HA nothing has a value of 16 (currently), loads of things are on 0 and only 'Burner min period' is 5 and 'Dhw set temperature' is 5 deg C.

@MichaelDvP
Copy link
Contributor

But the custom entities I have seem to work and i'll continue testing

The custom entities are for first testing, they have some overhead and it's better to integrate the entities if all is ok. So try my build and if it works you can remove the customs.

In regards to those values. It's a bit hard to know, can you give me any more context?

The telegram from boiler contains 6 values, we know the first three, on/off, base and end, the next three have values 16, 0 ,and 5. Is there anything in the boiler control panel regarding curve that have these values, than we can add them too. A heating curve normally have for start and end values (which are flowtemps) a corresponding outdoor temperature, Maybe startemp is the required flowtemp at outdoor 16 degrees (offset 3) , endtemp is reached at 0 degrees (offset 4). Dont know, just thinking...

@V4ler1an
Copy link
Author

V4ler1an commented Feb 27, 2024

There are three other settings within the 'Heating Curve' service sub-menu. Presumably all become availble once the outdoor weather sensor is fitted to the boiler. Perhaps it would be good to add these also? Their values match those you provided:

Summer Mode: 16
Prost Prot.: 0
Frost temp. limit: 5

image

@V4ler1an
Copy link
Author

V4ler1an commented Feb 27, 2024

I'll hold on until we have all 6 settings in your build if that's ok. Let me know when you're ready, or do you need another trace with these other three settings?

MichaelDvP added a commit to MichaelDvP/EMS-ESP32 that referenced this issue Feb 28, 2024
@MichaelDvP
Copy link
Contributor

Ok, please test https://github.com/MichaelDvP/EMS-ESP32/releases/tag/latest
I think the nofrost-mode (frost prot) is a switch with on=0xFF, off=0.
(named "nofrost mode" because most thermostats use this name, but Bosch rename entities often for different brands/models/software versions, we can't include all names, you can change in customizations)

@V4ler1an
Copy link
Author

Yes it's a boolean, i'll test later today. Here's the section for the heating curve menu in the GR4700iW S installer's manual:
image

MichaelDvP added a commit to MichaelDvP/EMS-ESP32 that referenced this issue Feb 28, 2024
@MichaelDvP
Copy link
Contributor

Thanks, i've added the limits.

@V4ler1an
Copy link
Author

After getting the new controls added to a dashboard card and tidied up, I noticed a 7th 'Reset' entity included along with the curve controls. Curious as to if and when it might be used and where it belongs.

I've done a quick sanity check and the curve enables / disables, base / end temps change ok. To do a more thorough test I really need to build these entities into a new weather comp automation. Am I advsied to wait for the final release before doing this do you think? Also, how do I subscribe for notifications on the new releases? Thanks.

image

@MichaelDvP
Copy link
Contributor

The reset is from #1605, PR #1626 in the official dev.

Also, how do I subscribe for notifications on the new releases?

Don't know, proddy announces them on discord.

@proddy
Copy link
Contributor

proddy commented Feb 28, 2024

you can also watch GitHub:

image

@V4ler1an
Copy link
Author

Perfect, thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants