marcschmiedchen / home-assistant-wolf_ism8 Goto Github PK
View Code? Open in Web Editor NEWWOLF ISM8 -- HVAC integration for Home Assistant
WOLF ISM8 -- HVAC integration for Home Assistant
Hi,
First of all, thank you for your work on this integration.
I’m using a WOLF CWL-2 325 with the ISM8 integration, version 3.0.2. My use case involves changing the programs based on calculations of humidity differences (inside and outside). Therefore, I want to change the mode to “Zeitweiser Feuchteschutz” or “Zeitweise Intensivlüftung AN/AUS”.
I see that you already have the switches (DP ID 153 & 158) available and functional. Unfortunately, the WOLF CWL requires additional variables to control these programs. Specifically, to start such a program, you need to set the start date, start time, end date, end time, and the switch.
This is similar to what a user would do on the BM2 “frontend.”
Could you please add these additional 8 datapoints (154–157 & 159–162)?
Thank you in advance!
Bitte die Gerätenamen ausschreiben, so wie sie in der Auswahl beim Anlegen erscheinen.
Gerade wenn man nicht jeden Tag in den Bereichen ist oder Neuling ist, vergisst man schnell die Abkürzungen.
Zumal diese teilweise anders heißen als die Originalbezeichnungen von Wolf.
Beispiel DKW (Direkter Heizkreis/WW) welches scheinbar viele Dinge enthält, welche bei Wolf unter (BM1 / BM2) Bedienmodul 1 / 2 gelistet werden.
Hello,
the connection between HomeAssistant is always lost after a few days. Turning off the power and restarting the ISM8 solves the problem, until after a few days the connection is lost again.
The ISM8 is assigned a static IP.
Regards Stephan
It would be nice to have a public repo for it.
Maybe you can also setup CI/CD for it and automatically publish new versions to Pypi.
Example workflow: https://github.com/cgarwood/python-fullykiosk/blob/master/.github/workflows/publish-to-pypi.yml
Documentation: https://packaging.python.org/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
Ich finde leider keine Entität, die den Betriebsmodus (hvaccontrmode) der Wärmepumpe anzeigt (z.B. „Kühlen“). Ich steige gerade von ioBroker zu Home Assistant um und benötige die Entität, um auch meine Raum-Thermostate in den Kühlmodus zu versetzen.
Hi!
It would very helpful if the integration would immediately send a request to the ISM8 to send an update for all datapoints.
A version in PHP
function request_all_datapoints($msgsock)
{
/* Send special message to request all datapoints to be sent. */
$msg = array(0x06, 0x20, 0xF0, 0x80, 0x00, 0x16, 0x04, 0x00, 0x00, 0x00, 0xF0, 0xD0);
$str = implode(array_map("chr", $msg));
fwrite($msgsock, $str , strlen($str));
}
In the Wolf ISM8 documentation PDF this mentioned in chapter 8.5 ("Aktives Auslesen der Datenpunkte").
Hi!
Leider werden in der aktuellen Version für die o.g. Datenpunkte keine Entities mehr angelegt.
Wenn ich das im Code richtig sehe, sollte es daran liegen, dass keine gültigen Wertebereiche für die beiden o.g. Datenpunkte (166, 167) im wolf_ism8 Modul hinterlegt sind.
Hier sollte der Bereich 0-500 ausreichen.
Die CWL400 Excellent geht bis 300m3/h.
Erstmal vielen Dank für die Umsetzung der Integration.
Ich hatte vorher eine parallele Installation von FHEM, die dann die Daten via MQTT an Homeassistant übermittelt hat.
Hat auch funktioniert, war aber alles andere als stabil, geschwige denn komfortabel.
Daher bin ich sehr dankbar für die Umsetzung ;)
Ich habe festgestellt, dass bei der CWL implementierung die Programmauswahl "CWL_Programm" (Auswahl der Lüftungsstufe) auf einen Fehler läuft.
Ich habe die Logs aus Homeassistant angefügt.
Laut Datenblatt ISM8 sind folgende Werte vorgesehen:
Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/wolf/select.py:151
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 21:34:01 (8 occurrences)
Last logged: 21:49:15
[2762907312] '>' not supported between instances of 'str' and 'int'
[2645677416] '>' not supported between instances of 'str' and 'int'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 199, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1808, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1845, in _execute_service
await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
await service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 686, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 961, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 726, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/select/init.py", line 106, in async_select_option
await entity.async_select_option(option)
File "/config/custom_components/wolf/select.py", line 151, in async_select_option
self._ism8.send_dp_value(self.dp_nbr, option)
File "/usr/local/lib/python3.10/site-packages/wolf_ism8/ism8.py", line 235, in send_dp_value
if not validate_dp_value(dp_id, value):
File "/usr/local/lib/python3.10/site-packages/wolf_ism8/ism8_helper_functions.py", line 100, in validate_dp_value
if (value > max(DP_VALUES_ALLOWED.get(dp_id))) or (value < min(DP_VALUES_ALLOWED.get(dp_id))):
TypeError: '>' not supported between instances of 'str' and 'int'
Dieser Fehler wurde von einer benutzerdefinierten Integration verursacht
Logger: wolf_ism8.ism8_helper_functions
Source: custom_components/wolf/select.py:151
Integration: Wolf Climate Control ISM8 (documentation, issues)
First occurred: 21:34:29 (5 occurrences)
Last logged: 21:45:12
value for 153 has invalid datatype <class 'str'>, should be <class 'int'>
value for 158 has invalid datatype <class 'str'>, should be <class 'int'>
Hi!
I only have a Wolf CWL Excellent 300 with an ISM8 and can see the following in the logs:
Logger: wolf_ism8.ism8
Source: /usr/local/lib/python3.9/site-packages/wolf_ism8/ism8.py:394
First occurred: 13:31:37 (31 occurrences)
Last logged: 13:31:39
unknown datapoint: 354, data:0
unknown datapoint: 355, data:0
unknown datapoint: 356, data:0
unknown datapoint: 357, data:255
unknown datapoint: 358, data:0
Any idea what this might be?
Der Datentyp für die prozentuale Leistung des Brenners oder der Lüftungsanlage wird nicht als grafischer Verlauf dargestellt, das liegt möglicherweise an der fehlenden Einheit "%"
Die prozentuale Leistung wird in der aktuellen Version ohne Einheit als Leistungsfaktor interpretiert und in Homeassistant angelegt.
In Homeassistant wird die Historie nicht als grafischer Verlauf sondern als Zustandsverlauf dargesetllt (wie bei Text-Sensoren):
Grundsätzlich wäre die Einheit in Prozent korrekt, ich bin mir aber nicht sicher, ob das die Problematik mit der Anzeige behebt.
Siehe Datenblattauszug ISM8:
Allow users an easy import via HACS import badge from https://my.home-assistant.io/create-link/
Hi,
since I did an update to version 3.0 I have problems to control the features of my CWL from Home Assistant. Before it was working without problems.
Since the update I'm not able to start for instance the "Intensivlüftung". The optionlist offers "1" to start the "Intensivlüftung" and "0" to turn it off. If I start the "Intensivlüftung" directly on the Wolf-Device, im able to turn it off from Home Assistant, but not to turn it on again. All the same with other optionlists. Did you change anything within the function handling?
thanks and best regards,
moongringo
Die folgenden Schalter führen beim Betätigen zu einer Fehlermeldung
Logger: homeassistant.components.websocket_api.http.connection
Source: components/select/init.py:105
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 15:09:16 (6 occurrences)
Last logged: 22:23:26
[2632173432] Option 1 not valid for select.cwl_zeitw_feuchteschutz_an_aus
[2632173432] Option 0 not valid for select.cwl_zeitw_feuchteschutz_an_aus
[2589123128] Option 1 not valid for select.cwl_intensivlueftung_an_aus
[2647202712] Option 1 not valid for select.cwl_intensivlueftung_an_aus
[2647202712] Option 1 not valid for select.cwl_zeitw_feuchteschutz_an_aus
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 199, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1808, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1845, in _execute_service
await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
await service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 686, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 961, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 726, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/select/init.py", line 105, in async_select_option
raise ValueError(f"Option {option} not valid for {entity.entity_id}")
ValueError: Option 1 not valid for select.cwl_intensivlueftung_an_aus
Does this solution also work for the ism8i? I have tried it with one and get the following error message:
2022-03-03 21:15:22 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:0
2022-03-03 21:15:22 ERROR (MainThread) [wolf_ism8.ism8] datatype unknown, using INT: DPT_unknown
2023-10-30 12:30:40.787 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
2023-10-30 12:30:40.793 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
2023-10-30 12:30:40.795 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
2023-10-30 12:30:40.887 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
2023-10-30 12:30:40.893 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
2023-10-30 12:30:40.897 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
2023-10-30 12:30:40.989 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
2023-10-30 12:30:40.995 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
2023-10-30 12:30:41.000 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
2023-10-30 12:30:41.091 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
2023-10-30 12:30:41.097 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
2023-10-30 12:30:41.101 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
2023-10-30 12:30:41.193 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
2023-10-30 12:30:41.199 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
2023-10-30 12:30:41.204 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
2023-10-30 12:30:41.295 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
2023-10-30 12:30:41.301 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
2023-10-30 12:30:41.305 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
2023-10-30 12:30:41.510 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
2023-10-30 12:30:41.611 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
2023-10-30 12:30:41.675 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
2023-10-30 12:30:41.678 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
2023-10-30 12:30:41.712 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
2023-10-30 12:30:41.775 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
2023-10-30 12:30:41.780 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
2023-10-30 12:30:41.802 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
2023-10-30 12:30:41.813 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
2023-10-30 12:30:41.876 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
2023-10-30 12:30:41.881 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
2023-10-30 12:30:41.903 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
2023-10-30 12:30:41.914 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
2023-10-30 12:30:41.966 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
2023-10-30 12:30:41.977 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
2023-10-30 12:30:41.984 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
2023-10-30 12:30:42.005 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
2023-10-30 12:30:42.016 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
2023-10-30 12:30:42.067 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
2023-10-30 12:30:42.078 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
2023-10-30 12:30:42.085 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
2023-10-30 12:30:42.106 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
2023-10-30 12:30:42.111 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
2023-10-30 12:30:42.113 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
2023-10-30 12:30:42.169 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
2023-10-30 12:30:42.180 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
2023-10-30 12:30:42.187 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
2023-10-30 12:30:42.208 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
2023-10-30 12:30:42.211 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
2023-10-30 12:30:42.214 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
2023-10-30 12:30:42.262 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
2023-10-30 12:30:42.270 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
2023-10-30 12:30:42.309 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
2023-10-30 12:30:42.312 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
2023-10-30 12:30:42.315 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
2023-10-30 12:30:42.362 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
2023-10-30 12:30:42.371 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
2023-10-30 12:30:42.414 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
2023-10-30 12:30:42.417 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
2023-10-30 12:30:42.463 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
2023-10-30 12:30:42.472 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
2023-10-30 12:30:42.515 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
2023-10-30 12:30:42.520 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
2023-10-30 12:30:42.565 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
2023-10-30 12:30:42.616 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
2023-10-30 12:30:42.621 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
2023-10-30 12:30:42.667 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
2023-10-30 12:30:42.768 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
2023-10-30 12:30:42.990 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x02X')
2023-10-30 12:30:43.090 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x02X')
2023-10-30 12:30:43.191 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x02X')
2023-10-30 12:30:43.292 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x02X')
2023-10-30 12:30:43.393 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x02X')
2023-10-30 12:30:43.494 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x02X')
2023-10-30 12:30:44.463 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
2023-10-30 12:30:44.465 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
2023-10-30 12:30:44.564 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
2023-10-30 12:30:44.565 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
2023-10-30 12:30:44.666 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
2023-10-30 12:30:44.667 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
2023-10-30 12:30:44.768 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
2023-10-30 12:30:44.769 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
2023-10-30 12:30:44.869 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
2023-10-30 12:30:44.870 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
2023-10-30 12:30:44.970 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
2023-10-30 12:30:44.971 ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
I just wanted to show this data and offer my help in diagnosing what is going on.
Hallo ich hab die Installationsanweisungen befolgt aber bekommt folgenden Fehler beim Starten von Home Assistent:
2022-07-14 22:29:47 ERROR (MainThread) [homeassistant.setup] Error during setup of component wolf
File "/config/custom_components/wolf/init.py", line 52, in async_setup
Hi,
I've found a minor issue with the CWL programs in version 3.0.2.
It's possible to select the programs “Automatikbetrieb”, “Nennlüftung”, ”Red. Lüftung”, and “Feuchteschutz.” However, the WOLF documentation is a bit confusing on this topic because, according to the datapoint definitions, these types are available:
But only 0, 1, and 3 are matched to corresponding programs on the CWL.
According to WOLF's specifications, please remove the “Feuchteschutz” option, as it is not working and may cause confusion.
Thank you in advance!
Hallo Marcschmiedchen,
vielen Dank für die geleistete Arbeit.
Datenpunkt 56, Warmwassersolltemperatur ist nicht als Inputvariable vorhanden. (Ebenfalls 69, 82, 95)
Hier sollte eine Eingabe lt Wolf ISM 8 Doku eine absoutangabe von 20°C bis 80°C möglich sein.
Gruß Stephan
Nach dem Bugfix werden nun die Datenpunkte aufgelistet, die nicht bekannt sind.
Die Punkte sind nicht in der Doku hinterlegt, könnte also auch ein Bug des ISM8 Moduls sein.
Logger: wolf_ism8.ism8
Source: runner.py:179
First occurred: 20:57:03 (144 occurrences)
Last logged: 21:28:15
unknown datapoint: 343, data:bytearray(b'\x00')
unknown datapoint: 344, data:bytearray(b'\x00\x00')
unknown datapoint: 345, data:bytearray(b'\x00\x00')
unknown datapoint: 347, data:bytearray(b'\x00')
unknown datapoint: 348, data:bytearray(b'\x00')
Bug description
Es ist nur möglich Daten zu lesen. Jedoch nicht zu schreiben. Beispiel: 1x Warmwasser wird als Bool angezeigt, anstatt, wie in der Beschreibung als DPT_Switch.
Your environment
Home Assistant 2022.9.2
Supervisor 2022.08.6
Operating System 8.5
Frontend 20220907.0 - latest
Expected behaviour
Ich kann die 1x Warmwasser per HomeAssistant über Button aktivieren.
What went wrong?
1x Warmwasser (und andere) sind als Boolean definiert.
Hi, I'm unable to find the HACS integration when I search something with "wolf". Do i have to add anything anywhere?
Core 2024.4.0 (also not visible in 2024.3.0)
Supervisor 2024.03.1
Operating System 12.1
Frontend 20240403.1
Best regards,
Stefan
EN:
From a current perspective, I would say that faults are displayed correctly but do not work properly.
For example, if I close the gas valve and restart the heating, I get the message "Problem" for the heater1 fault.
However, if I now create an automation by using the entity "binary_sensor.heizgeraet1_stoerung" as a trigger. (change to "Problem"), the automation is still not started.
Even if I create a group helper to summarise all faults, this does not react.
I have built a binary_sensor template helper for printing, which is also of the display type Problem. This triggers the automation and also changes the status in my helper group.
DE:
Aus aktueller Sicht würde ich sagen, dass Störungen zwar richtig angezeigt werden, aber nicht richtig arbeiten.
Wenn ich z.B. das Gasventil schließe und die Heizung neu starte, dann bekomme ich als Meldung für das Heizgerät1 Störung „Problem“.
Wenn ich nun aber eine Automatisierung erstelle, indem ich die Entität „binary_sensor.heizgeraet1_stoerung“ als Trigger verwende. (Wechsel zu „Problem“) So wird dennoch die Automatisierung nicht gestartet.
Auch wenn ich einen Gruppen Helfer erstelle um alle Störungen zusammenzufassen reagiert dieser nicht.
Ich habe mir für den Druck ein binary_sensor Template Helfer gebaut, der auch vom Anzeigetyp Problem ist. Dieser Triggert die Automatisierung und ändert auch in meiner Helfergruppe den Status.
Zusammenfassung:
Moinsen,
ich hab seite heute meine CHA-07 mit ISM8 am laufen. Leider kriege ich keine Betriebsart angezeigt, sollte laut Doku Datenpunkt 177 sein.
Gruß,
Marc
Bei Sollwertkorrektur/Sparfaktor gibt es 2 Probleme:
(1) Aktueller Wert wird nicht angezeigt
2) Wert kann nicht geändert werden
Fehlermeldung:
Fehler beim Aufrufen des Dienstes select/select_option. Option -1 not valid for select.dkw_sollwertkorrektur
DPT_TEMPD ist float und muss für die Benutzung von homeassistant.select in str umgewandelt werden.
Die Gegenrichtung in async_select_option gibt es ja schon: option = float(option)
https://developers.home-assistant.io/docs/core/entity/select/
Name Type Default Description
current_option str None The current select option
options list Required A list of available options as strings
Möglicher Fix:
select.py
class WolfSelect(SelectEntity):
@Property
def options(self):
"""Return all available options"""
_options = []
if self._type in (SensorType.DPT_HVACCONTRMODE,
SensorType.DPT_HVACMODE,
SensorType.DPT_DHWMODE,
SensorType.DPT_TEMPD,
SensorType.DPT_SWITCH):
for opt in self._ism8.get_value_area(self.dp_nbr):
if self._type == SensorType.DPT_TEMPD:
opt = str(opt)
_options.append(opt)
else:
_LOGGER.error("Unknown datapoint type %s for select sensor", self._type)
return _options
async def async_update(self) -> None:
"""Return state"""
option = self._ism8.read(self.dp_nbr)
if self._type == SensorType.DPT_TEMPD:
option = str(option)
self._attr_current_option = option
return
Hallo marcschmiedchen,
Ich habe die Integration komplett neu hinzugefügt.
Beim Setzen der Werte für die betreffenden Datenpunkte bekomme ich nun folgende Fehlermedlung. Die Fehlermeldung hatte ich bereits im Issue #15 bekommen:
Dieser Fehler wurde von einer benutzerdefinierten Integration verursacht
Logger: wolf_ism8.ism8_helper_functions
Source: custom_components/wolf/select.py:137
Integration: Wolf Climate Control ISM8 (documentation, issues)
First occurred: 20:57:29 (3 occurrences)
Last logged: 21:08:54
value for 153 has invalid datatype <class 'str'>, should be <class 'int'>
value for 158 has invalid datatype <class 'str'>, should be <class 'int'>
Vielen Dank für die Bemühungen.
Doe the code also support CHA X version heat pumps? Or does it support whatever the ISM8 supports? If not then I'd like to suggest to add such support. Thanks!
Hello, i want to change the pressure from pa to bar. i tried to change the unit of measurement on the entity but it is not working.
Hallo @marcschmiedchen.
Die neue Version läuft recht gut bei mir.
Eine Sache verstehe ich nicht ganz.
Es gibt ein paar Datenpunkte die bei mir hin und wieder auf "None" gesetzt werden.
Ich weiß aber nicht warum.
Passiert es, weil zu lange keine Daten von der Schnittstelle kommen?
In meinem Screenshot kann man sehen, dass (bis auf ein paar Ausreißer) die Daten korrekt eintrudeln und gespeichert werden.
Aber dann gibt es Momente bei denen der Wert "None" ist.
Da ich die Daten per Automatisierung in Variablen meiner Homematic schreibe, gibt es immer wieder Fehlermeldungen im Log, da es sich hierbei dann um ein String und nicht um eine Zahl handelt.
Wenn das Verhalten korrekt ist, werde ich meine Automatisierungen anpassen müssen.
Vielen Dank und Gruß
Tower
Moin, ich habe in den HA Protokollen folgende Fehler:
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 336, data:bytearray(b'\x00')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 362, data:bytearray(b'\x00')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 363, data:bytearray(b'\x00')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 337, data:bytearray(b'\x03')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 338, data:bytearray(b'\x01')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 341, data:bytearray(b'\x00')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 339, data:bytearray(b'\x00')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 340, data:bytearray(b'\x01')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 342, data:bytearray(b'\x01')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 343, data:bytearray(b'\x01')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 344, data:bytearray(b'\x01^')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 345, data:bytearray(b'\x03\x84')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 347, data:bytearray(b'\x01')
ERROR (MainThread) [wolf_ism8.ism8] unknown datapoint: 348, data:bytearray(b'\x01')
Heizung: Wolf CHA07-200
Core 2024.1.3
Supervisor 2023.12.0
Operating System 11.4
Frontend 20240104.0
@marcschmiedchen einfach toll, dass es noch implementiert wurde. Noch ein kurzes Feedback von mir.
Läuft alles tip top. Nur muss man erstmal verstehen, wenn man noch die alte Konfig hatte, dass diese raus muss aus der configuration.yaml. Danach klassisch einrichten.
Bilder habe ich dir auch noch mal angehangen für vielleicht Doku Anpassung noch.
Kann man sich bei dir erkenntlich zeigen mit einer Paypal Spende oder ähnlichen? Ich finde, dass so etwas auch gewürdigt werden muss. Viele fordern immer nur und geben nichts. Kenne das leider viel zu oft.
Hier noch der Tipp für andere:
Ich habe z.B. eine CGB-2 und das BM-2.
Wenn man jetzt aber noch die Programme also Werte schreiben möchte, dann muss immer DKW mit ausgewählt werden.
Also für alle HA User, immer DKW & SYM mit auswählen. SYM kann auch manuell einen Datenpush - geniale Funktion.
Hallo marcschmiedchen,
ich versuche gerade die WolfISM8 Software in HA zu intergrieren. Leider scheitere ich schon beim Versuch die Dateien über Python (vonPyPi) zu installieren. Mein HA läuft auf einer VM mit dem OS Betriebssystem.
Vielen Dank vorab
Stephan
Hello marcschmiedchen,
I am trying to integrate the WolfISM8 software into HA. Unfortunately I fail already when trying to install the files via Python (fromPyPi). My HA is running on a VM with the OS operating system.
Thanks in front
Stephan
Bei der Konfiguration ist mir aufgefallen, dass bei den Sensoren nichts angezeigt wird. Zum Beispiel steht bei HG1_Abgastemperatur "None °C"...Eigentlich bei sämtlichen Sensoren. Einzig Sensoren mit An/Aus werden korrekt dargestellt (z.B. HG1_Status_Brenner)
@marcschmiedchen seit dem update auf 3.0 bekomme ich keine Daten mehr. Habe schon neu eingerichtet und ISM8i Modul neugestartet. Geht nix. Haben andere auch Probleme?
Mein ism8i Modul:
Does it work with ISM7i as well?
DPT_FlowRate decoder in PHP:
function convfrom_DPT_FlowRate($val)
{
$value = ($val[0]<<24)|($val[1]<<16)|($val[2]<<8)|($val[3]<<0);
$flowrate = $value * 0.0001;
return ((string)$flowrate);
}
Do you have any plan to support these? At least for reading?
Logger: wolf_ism8.ism8
Source: /usr/local/lib/python3.9/site-packages/wolf_ism8/ism8.py:494
First occurred: 13:31:33 (10 occurrences)
Last logged: 13:31:36
datatype not implemented: DPT_Date
datatype not implemented: DPT_TimeOfDay
datatype not implemented: DPT_FlowRate_m3/h
BTW: Where can I find the repo for the wolf_ism8 python module?
Hallo @marcschmiedchen, danke für die Integration. Ich hoffe Deutsch ist ok, da ich die Vermutung habe, dass Schmiedchen aus Deutschland kommt ;)
Ich benutze FHEM und ioBroker und prüfe gerade, ob ich auf HomeAssistant umsteigen kann.
Dabei ist mir natürlich meine Wolf Heizung wichtig. Momentan läuft mein Testaufbau auf einem Raspberry Pi5, den ich mir extra für HomeAssistant gekauft habe. Das Interesse an der Integration ist also groß ;)
Erfahrungswert vielleicht für andere interessant: Weitere Geräte erweitern, mit kleiner Hürde
Meldung "ISM8 - Kein Gerät oder Entitäten - Fehler beim EInrichten"
Die Einbindung hat auf Anhieb funktioniert, auch wenn ich zur Erweiterung der Geräte (SM1, MM1) alle Geräte einmal löschen und neu anlegen muss, sowie die YAML-Konfiguration überprüfen und den HomeAssistant auch dort neu starten muss.
Mein aktuelles Problem: BM2 - Bediengerät 2 / Bedienmodul 2 wird nicht aufgelistet
Mein aktuelles Problem ist, dass ich BM2 ausgewählt habe, es aber nicht aufgelistet wird. Da es das letzte Gerät ist, hoffe ich, dass es ein Fehler im Programm ist und das letzte Array nicht verarbeitet wird. (Vermutung, habe noch nicht in den Quellcode geschaut)
Ist dies ein Bug oder muss ich noch etwas beachten?
Allgemeine Frage / Feature Vorschlag: BM2 - Bediengerät 2 / Bedienmodul 2 wird nicht aufgelistet
Und wenn das Bedienmodul vorhanden ist, frage ich mich, ob ich die folgenden Parameter über HomeAssistant steuern kann. Denn unter SYM sehe ich bisher "nur" die Warmwasser Einmalladung.
Die 4 Parameter sind für mich wichtig, da ich derzeit über den ioBrocker meine Heizung bedarfsgerecht steuere.
z.B.: alle Heizkörper / Fußbodenheizungsventile zu, dann Heizung Standby
oder: Mind. 1 Heizkörper 100% auf, dann mehr Leistung, um den Raum schnell warm zu bekommen.
usw.
Vielen Dank für deine Hilfe.
Hallo,
ich bekomme vom Heizgerät HG1den Wert: "Unbekannt" für fast alle Parameter vom ISM8 Modul zurückgeliefert.
Ich habe das ISM8i an einer Luft-Wärmepumpe BWL1S07 hängen.
Gruß Stephan
Wenn ich das Addon hinzufügen will erhalte ichfolgende Meldung
https://github.com/marcschmiedchen/wolf_ism8 is not a valid add-on repository
https://github.com/marcschmiedchen/home-assistant-wolf_ism8 is not a valid add-on repository
Seit dem Update kann ich kein Warmwasser mehr machen.
Das Plugin bietet u.a. folgende Buttons. Mit dem "Systembedienmodul 1x Warmwasserladung (global)" konnte ich bis jetzt immer außer Plan Warmwasser machen:
Wenn ich in die home-assistant.log schaue, bekomme ich folgende Fehlermeldung:
ERROR (MainThread) [wolf_ism8.ism8_helper_functions] mode number 7 not implemented:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.