pblxptr / ecoNET-300-Home-Assistant-Integration

ecoNET300 Home Assistant is a custom integration for ecoNET300 devices.
16 stars 6 forks source link

Future. Possibility to turn off the boiler #4

Closed jontofront closed 9 months ago

jontofront commented 1 year ago

Hi, I figure out that we can on and of boiler by these commands: Boiler OFF http://x.x.x.x/econet/newParam?newParamName=BOILER_CONTROL&newParamValue=0 image image

Boiler ON http://x.x.x.x/econet/newParam?newParamName=BOILER_CONTROL&newParamValue=1 image

pblxptr commented 1 year ago

Hi, I figure out that we can on and of boiler by these commands: Boiler OFF http://x.x.x.x/econet/newParam?newParamName=BOILER_CONTROL&newParamValue=0 image image

Boiler ON http://x.x.x.x/econet/newParam?newParamName=BOILER_CONTROL&newParamValue=1 image

What about boiler status? Does any parameter accessible through regParams change when you switch off/on?

Btw. if you want, on 'dev' branch there is a version that contains settable parameters like CO set temperature, CWU set temperature, and mixers. You can give it a try if you want.

jontofront commented 1 year ago

If you mean about boiler operation mode status: Key: mode

OFF = 0
FANNING = 1
FIRE UP= 2
WORKING = 3
SUPERVISION = 4
FIVE = 5 
SIX = 6
BURNING_OFF = 7
ALERT = 8
pblxptr commented 1 year ago

I did small investigation and it seems that it will be a bit trickier. For example my EcoNet once module returned mode equal to 14 which is missing on your list. Maybe it differes between fw version or something. Anyways it requires further investigation.

jontofront commented 1 year ago

What is Plum Sp. z o.o. and Module Econet software version you have?

pblxptr commented 1 year ago

What is Plum Sp. z o.o. and Module Econet software version you have?

ecosrvSoftVer: 3.2.3819 lbModuleAVerCurr: 12.11.49 lbPanelModuleVerCurr: 12.10.39 lbEcoSTERModuleVer1Curr: 1.14.73

Btw I've written to the manufacturer raising some questions and asking for documentation. I doubt they will answer or share the documentation but it doesn't hurt to try. It would help a lot.

EDIT: They've responded and said, "We do not share our documentation". As I expected. Also, they've omitted the rest of my questions so I guess we have to figure this out by ourselves.

denpamusic commented 1 year ago

You might want to take a look at frontend api client (controller.js) from ecoNET firmware 3.2.3678, that I unpacked and run through beautifier: https://gist.github.com/denpamusic/6cbe2af44ee02eb22a001b7543438928

It's not a documentation per se, but at least it lists all ecoNET endpoints in neat form😉

pblxptr commented 1 year ago

You might want to take a look at frontend api client (controller.js) from ecoNET firmware 3.2.3678, that I unpacked and run through beautifier: https://gist.github.com/denpamusic/6cbe2af44ee02eb22a001b7543438928

It's not a documentation per se, but at least it lists all ecoNET endpoints in neat formwink

Thanks this will definitely help!

Btw @jontofront I updated master branch it now supports firmware version in HA layout as well as two settable parameters, namely water temperature, and boiler temperature. So far I've limited it to set the value only to: value -1 or +1. In practice, it means that if your current Water temperature is set to 50, you can change it to either 49 or 51. I did it just for the purpose of tests, it will be removed if everything works fine.

petr-nov commented 1 year ago

Hi, good job, thanks for that. However, the temperature values for Mixer1 and Mixer 2 have not been available for some time. After the last update, they were also separated into a separate device. obrazek

pblxptr commented 1 year ago

@jontofront

Sorry I have to clarify a few things. First, I said that "Set water temperature" and "Set boiler temperature" are available on the master branch - that's not true. They are on a separate branch and I will probably push these changes today, evening. On the master branch, you should already have changes related to the device info - ecoNET300 firmware version.

As for Mixer devices - I guess that you have used my changes from 'dev' branch where I was checking a few things regarding mixers. This branch is no longer available as well as mixer devices are not available on the master.

Let's do this in the following steps: 1) First, make sure that you have the newest version from master (there should be support for fw version). The best would be if you could reinstall the integration once again

2) If everything works as expected in the above step, I will push changes related to "Boiler set temperature" and "Water set temperature", these are settable parameters so it would be good if you could check if they work. They will be so far limited to what I've said before - which is, that the target value will be possible to set only to the current value equal to -1 or +1. This limitation will be of course lifted a bit later.

3) If everything works as expected in the above step, I will prepare changes related to mixer devices.

Are you fine with this?

Also, I recommend not to relay on changes that are available on other branches that 'master' or tags, because e.g. on 'dev' branch I do some stuff, I test a few things, then merge them or don't, so other branches should be considered as unstable.

jontofront commented 1 year ago
  1. First, make sure that you have the newest version from master (there should be support for fw version). The best would be if you could reinstall the integration once again

Ok, I remove instaled version from HA and instal by HACS from repo master branch image

  1. If everything works as expected in the above step, I will push changes related to "Boiler set temperature" and "Water set temperature", these are settable parameters so it would be good if you could check if they work. They will be so far limited to what I've said before - which is, that the target value will be possible to set only to the current value equal to -1 or +1. This limitation will be of course lifted a bit later.

image

After some days I will be back if will be errors in the logs. After installation I got only that (But i think it;'s not bad):

2023-01-18 15:57:03.345 DEBUG (MainThread) [custom_components.econet300.binary_sensor] Availability key: pumpCirculationWorks does not exist, entity will not be added
2023-01-18 15:57:03.345 DEBUG (MainThread) [custom_components.econet300.binary_sensor] Availability key: pumpFireplaceWorks does not exist, entity will not be added
2023-01-18 15:57:03.345 DEBUG (MainThread) [custom_components.econet300.binary_sensor] Availability key: pumpSolarWorks does not exist, entity will not be added
2023-01-18 15:57:03.345 DEBUG (MainThread) [custom_components.econet300.binary_sensor] Availability key: lighterWorks does not exist, entity will not be added

2023-01-18 15:57:03.379 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.fan_power (<class 'custom_components.econet300.sensor.ControllerSensor'>) is using native unit of measurement '%' which is not a valid unit for the device class ('speed') it is using; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.

  1. If everything works as expected in the above step, I will prepare changes related to mixer devices.

Are you fine with this? Yes, it's good way

Also, I recommend not to relay on changes that are available on other branches that 'master' or tags, because e.g. on 'dev' branch I do some stuff, I test a few things, then merge them or don't, so other branches should be considered as unstable.

I think you can make the new version beta tag with a change log then I can install and test by HACS.

pblxptr commented 1 year ago

@jontofront Thanks! Yes, these logs are fine, they just indicate that an entity will not be added because data for this entity is not available so there is no use in creating it.

I will create a new tag.

jontofront commented 1 year ago

I did small investigation and it seems that it will be a bit trickier. For example my EcoNet once module returned mode equal to 14 which is missing on your list. Maybe it differes between fw version or something. Anyways it requires further investigation.

Today a got error :) so Status 8 is ок :)

image

image

`

  |   -- | -- settingsVer | 10165 editableParamsVer | 2 schedulesVer | 6 remoteMenuVer |   1 | 20028 2 | "61477_1" 3 | 14264 4 | 60350 6 | "22746_1" 7 | "23521_1" 8 | "26533_1" 9 | 4604 10 | 54629 11 | "17127_1" 12 | "37750_1" 13 | "16688_1" 14 | "35328_1" 15 | "20590_1" currentDataParamsEditsVer | 1 curr |   thermostat | 1 pumpCOWorks | false fan2Exhaust | false feederWorks | false feeder | false mixerPumpWorks4 | false lambdaSet | 255 mixerPumpWorks1 | false mixerPumpWorks2 | false mixerPumpWorks3 | false statusCWU | 128 fuelLevel | 96 fanPower | 0 mixerTemp1 | 21.486251831054688 mixerTemp3 | null mixerTemp2 | null mixerTemp4 | null blowFan1Active | false statusCO | 16 boilerPower | 0 feederOuter | false pumpCWUWorks | false pumpCWU | true alarmOutput | true fan | false lighter | false lambdaStatus | 2 transmission | 9 fuelStream | null lighterWorks | false mode | 8 alarmOutputWorks | true pumpSolar | false lambdaLevel | 212 tempExternalSensor | 1.118194580078125 contactGZC | false blowFan1 | false blowFan2 | false tempCO | 25.827356338500977 pumpCO | true contactGZCActive | false pumpCirculation | false outerBoiler | true tempCOSet | 40 outerBoilerWorks | true pumpFireplace | false feederOuterWorks | false mixerSetTemp4 | 28 boilerPowerKW | null feeder2AdditionalWorks | false pumpSolarWorks | false mixerSetTemp1 | 30 mixerSetTemp2 | 30 mixerSetTemp3 | 28 blowFan2Active | false tempCWU | 82.18003845214844 tempCWUSet | null pumpCirculationWorks | false tempFlueGas | 18.665340423583984 fan2ExhaustWorks | false pumpFireplaceWorks | false tempFeeder | 20.057537078857422 fanWorks | false feeder2Additional | false

`

jontofront commented 1 year ago

@pblxptr can you check please http://ecoNET_Local_IP/econet/rmParamsEnums? The are value names: image

` { "values": [ "TURNED OFF", "FIRE UP", "STABILIZATION", "OPERATION", "SUPERVISION", "BURNING OFF", "STOP", "R.P.OUT", "MANUAL", "ALARM", "UNSEALING", "CHIMNEY", "ACTIVACTION", "NO TRANSMISSION" ], "first": 0

`

jontofront commented 1 year ago

@pblxptr sorry for the ping :) but maybe you can check link with Boiler status enums?

pblxptr commented 1 year ago

@jontofront I remember about this, but I've been working on a different project simultaneously and I have to finish it. Fortunately, we should finalize it in two weeks (I hope) so I will get back to this.

Marek7923 commented 1 year ago

Witam, Panie Patryku, Udało mi się odrobine zmodyfikować plik czujnikami, jednak do wypełni szczęścia brakuje zwrotu informacji o trybie pracy kotła. Zmienna mode zwraca wartość numeryczną, jednak jako laik który z Home Assistant pracuje niespełna 2 tygodnie nie umiem tego ugryźć.
Wiem że jest Pan zajętym człowiekiem, ale bardzo prosił bym o pomoc.
Ostatnie odczyty z bufora to moja dokładka z 4 czujnikami DS18B20 odczytywane z ESP8266

Zrzut ekranu 2023-02-25 214421

bigoblins commented 1 year ago

Zrzut ekranu 2023-02-25 214421

add configuration.yaml code:

sensor:

add page: type: entity entity: sensor.name_kotel_status

image

bigoblins commented 1 year ago

please exemples code related to "Boiler set temperature" and "Water set temperature" -1 +1?

petr-nov commented 1 year ago

Zrzut ekranu 2023-02-25 214421

add configuration.yaml code:

sensor:

* platform: template
  sensors:
  name_kotel_status:
  value_template: >
  {% if is_state('sensor.mode', "0") %}BЫКЛЮЧEHO
  {% elif is_state('sensor.mode', "1") %}hz 1
  {% elif is_state('sensor.mode', "2") %}Розжиг
  {% elif is_state('sensor.mode', "3") %}РАБОТА
  {% elif is_state('sensor.mode', "4") %}Надзор
  {% elif is_state('sensor.mode', "5") %}Простой
  {% elif is_state('sensor.mode', "6") %}hz 6
  {% elif is_state('sensor.mode', "7") %}Гашение
  {% elif is_state('sensor.mode', "8") %}ТРЕВОГА
  {% elif is_state('sensor.mode', "9") %}ОЧИСТКА
  {% elif is_state('sensor.mode', "10") %}hz 8
  {% elif is_state('sensor.mode', "11") %}Старт
  {% elif is_state('sensor.mode', "12") %}Стабилизация
  {% elif is_state('sensor.mode', "13") %}hz 13
  {% elif is_state('sensor.mode', "14") %}ТЕСТ пламени
  {% else %}Unavailable
  {% endif %}

add page: type: entity entity: sensor.name_kotel_status

image

How did you manage to add boiler schema to HA?

bigoblins commented 1 year ago

took a screenshot, added it as a ''type: picture-elements' and then placed the sensors

image

petr-nov commented 1 year ago

Excellent!

jontofront commented 1 year ago

took a screenshot, added it as a ''type: picture-elements' and then placed the sensors

image

Can you share code in txt message?

bigoblins commented 1 year ago

here is the code, I added some sensors that weren't there:

`type: picture-elements title: '' style: | ha-card { width: 960px !important; } elements:

bigoblins commented 1 year ago

image: hema_otoplrnija-1