Die Frage ist, ob er eine Comfoair 350 hat. Ich hebe nirgend's denTyp der KWL gelesen.
Ankündigung
Einklappen
Keine Ankündigung bisher.
ComfoAir Steuerung über RS232
Einklappen
X
-
Zitat von swiss Beitrag anzeigenDie Frage ist, ob er eine Comfoair 350 hat. Ich hebe nirgend's denTyp der KWL gelesen.Gruß, Carsten
Kommentar
-
Zitat von lio123 Beitrag anzeigen..ist's denn die Luxe version?
Dann einfach auf der Eiweiterungsplatine den sub-d benutzen.
Ich habe jetzt eine Buchse statt der CC Ease dran und bekomme mit dem PC und hterm ein valides Ergebnis. Wenn ich den String zur Abfrage des Gerätetyps sende (HEX 07 F0 00 69 00 16 07 0F), kommt das ACK (07 F3) und danach 00 6A 0D ..... 07 0F. Die dreizehn Datenbytes plus Prüfsumme habe ich jetzt nicht ausgewertet, aber alleine, daß das ACK plus inkrementiertes Kommando zurückkommt, spricht für eine saubere Kommunikation.
Danach habe ich den USB-Seriell-Adapter angesteckt und habe im Log wieder das gleiche wie vorher: was vom Plugin gesendet wird, kommt genauso zurück (im Script frage ich nur noch den Gerätetyp ab, da ich weiß, das dort eine valide Antwort kommen müßte):
Code:2013-01-01 15:06:46.517,ComfoAir,transmit: 0x7 0xf0 0x0 0x69 0x0 0x16 0x7 0xf 2013-01-01 15:06:46.519,ComfoAir,reciv-direkt: 07 2013-01-01 15:06:46.520,ComfoAir,reciv-direkt: f0 2013-01-01 15:06:46.521,ComfoAir,reciv-direkt: 00 2013-01-01 15:06:46.522,ComfoAir,reciv-direkt: 69 2013-01-01 15:06:46.523,ComfoAir,reciv-direkt: 00 2013-01-01 15:06:46.524,ComfoAir,reciv-direkt: 16 2013-01-01 15:06:46.525,ComfoAir,reciv-direkt: 07 2013-01-01 15:06:46.526,ComfoAir,reciv-direkt: 0f 2013-01-01 15:06:46.526,ComfoAir,ACK senden 2013-01-01 15:06:46.526,ComfoAir,String ohne 07f3: 07f000690016
Code:2013-01-01 14:46:59.422,ComfoAir,transmit: 0x7 0xf0 0x0 0xd1 0x0 0x7e 0x7 0xf 2013-01-01 14:46:59.473,ComfoAir,reciv-direkt: 07f3 2013-01-01 14:46:59.580,ComfoAir,reciv-direkt: 07 2013-01-01 14:46:59.581,ComfoAir,reciv-direkt: f3 2013-01-01 14:46:59.692,ComfoAir,reciv-direkt: 07 2013-01-01 14:46:59.693,ComfoAir,reciv-direkt: f3
Jetzt bin ich total ratlos, warum es aus dem Skript heraus nicht funktioniert...Gruß, Carsten
Kommentar
-
Sehr seltsam...
Also mal im Detail... (Nur um nichts zu vergessen. So zusagen als Basis zur Fehlersuche)
- Du hast die aktuelle Version 1.6 hier aus diesem Thread?
- Du nutzt die conf.d und hast dort die Schnittstelle entsprechend angepasst?
- Du verwendest den originalen USB-Seriell Wandler aus dem WG Shop?
- Die CCEASE ist NICHT angeschlossen
Wie sieht die Verkabelung aus? Steht das WG neben der KWL oder nutzt du einen USB Extender?
Hast du irgend etwas im Code oder an einer Variable im Plugin selbst geändert?
Was hängt sonstnocham WG neben demUSB-Seriell Wandler für die KWL?Gruss Patrik alias swiss
Kommentar
-
Zitat von swiss Beitrag anzeigen- Du hast die aktuelle Version 1.6 hier aus diesem Thread?
- Du nutzt die conf.d und hast dort die Schnittstelle entsprechend angepasst?
- Du verwendest den originalen USB-Seriell Wandler aus dem WG Shop?
- Die CCEASE ist NICHT angeschlossen
Wie sieht die Verkabelung aus? Steht das WG neben der KWL oder nutzt du einen USB Extender?
Hast du irgend etwas im Code oder an einer Variable im Plugin selbst geändert?
Was hängt sonstnocham WG neben demUSB-Seriell Wandler für die KWL?- Ich nutze das Script aus Post #90 = 1.6
Ich habe mir die Änderungen von meinem aktiven Script zu dem aus #90 in WinMerge nochmal angeguckt und es ist nichts wesentliches verändert:- $debug von 0 auf 2
- _cycle auf 10 damit ich schneller Werte bekomme
- Im Code des zyklischen Aufrufs habe ich die Abfragen der einzelnen Werte auskommentiert, damit das Log nicht so geflutet wird. Dafür ist nur einmal "006900" für den Gerätetyp drin. Hier der Auschnitt ohne "# ...."-Zeilen
Code:} else { # zyklischer Aufruf # Plugin an Gruppenadresse "anmelden", hierdurch wird das Plugin im folgenden bei jedem eintreffen eines Telegramms auf die GA aufgerufen und der obere Teil dieser if-Schleife durchlaufen $plugin_subscribe{$ga_stufeabwesend}{$plugname} = 1; $plugin_subscribe{$ga_stufe1}{$plugname} = 1; $plugin_subscribe{$ga_stufe2}{$plugname} = 1; $plugin_subscribe{$ga_stufe3}{$plugname} = 1; $plugin_subscribe{$ga_komforttemp}{$plugname} = 1; $plugin_subscribe{$ga_reset_filter}{$plugname} = 1; $plugin_subscribe{$ga_reset_error}{$plugname} = 1; $daten= "006900"; plugin_log($plugname,'Gerätetyp abrufen'); $return_value2 = command_senden($daten); if($debug>=2){plugin_log($plugname,'ENDE Zyklische Abfrage');} return; }
- In Zeile 263 habe ich das IF erweitert, damit nur geloggt wird, wenn wirklich etwas empfangen wurde (damit sind die ganzen leeren "reciv-direkt:"-Zeilen nicht mehr im Log).
Code:if($debug>=2[B] && $sin[/B]){plugin_log($plugname,'reciv-direkt: ' . $sin);}
- conf.d habe ich angepaßt: /dev/ttyUSB0 ist der serielle Adapter und das funktioniert so weit auch, siehe meine Versuche mit hterm
- Es ist der origniale Adapter aus dem WG-Shop und er hängt am HUB aus dem Shop. Das WG steht im Moment unter der KWL (habe es erst seit vier Tagen :-) )
- Sonst hängt nichts am WG. Es ist neu und eigentlich habe ich noch nicht viel damit gemacht.
- CC EASE habe ich von Anfang an abgeklemmt, da ich es hier im Thread schon gelesen hatte.
Vielen Dank für Deine Hilfe.Gruß, Carsten
Kommentar
- Ich nutze das Script aus Post #90 = 1.6
-
Hmm...
Bitte hänge doch mal das vollständige Plugin an. Hast du das Plugin auch mal ohne deine Änderungen getestet? Nur um sicher zu gehen, dass sich nicht ein Fehler in der Programmierung eingeschlichen hat.
Denn Scheinbar bist du der Erste der mit dem Plugin das genannte Problem hat. Bei den anderen scheint es ja in der originalfassung zu funktionieren!??
Den schönheitsfehler mit den leeren Einträgen tritt auch nur im Debugmodus auf und hat auch den Vorteil, dass man daran die Verzögerung der Antwort der KWL ablesen kann. Es ist ja nicht der Sinn an der Sache, dass wenn es läuft das Plugin auf debuglevel=3 betrieben wird.
(Ich war sogar ursprünglich gegen die Idee die Variablein die conf.d aufzunehem da es bei unsachgemässem Einsatz auch zu Problemen führen kann.)Gruss Patrik alias swiss
Kommentar
-
Zitat von swiss Beitrag anzeigenHmm...
Bitte hänge doch mal das vollständige Plugin an. Hast du das Plugin auch mal ohne deine Änderungen getestet? Nur um sicher zu gehen, dass sich nicht ein Fehler in der Programmierung eingeschlichen hat.
Denn Scheinbar bist du der Erste der mit dem Plugin das genannte Problem hat. Bei den anderen scheint es ja in der originalfassung zu funktionieren!??
Den schönheitsfehler mit den leeren Einträgen tritt auch nur im Debugmodus auf und hat auch den Vorteil, dass man daran die Verzögerung der Antwort der KWL ablesen kann. Es ist ja nicht der Sinn an der Sache, dass wenn es läuft das Plugin auf debuglevel=3 betrieben wird.
(Ich war sogar ursprünglich gegen die Idee die Variablein die conf.d aufzunehem da es bei unsachgemässem Einsatz auch zu Problemen führen kann.)
Code:root@wiregate886:~# tail /var/log/wiregate_plugin.log -f -n 0 2013-01-01 16:54:21.561,ComfoAir, reading conf file [/etc/wiregate/plugin/generic/conf.d/ComfoAir.conf]. 2013-01-01 16:54:21.565,ComfoAir,conf file [/etc/wiregate/plugin/generic/conf.d/ComfoAir.conf] returned result[2] 2013-01-01 16:54:21.572,ComfoAir,Schnittstelle: /dev/ttyUSB0 erfolgreich geöffnet 2013-01-01 16:54:21.572,ComfoAir,Temperatur abrufen 2013-01-01 16:54:21.572,ComfoAir,data: 00D100 2013-01-01 16:54:21.573,ComfoAir,String für die Berechnung der Checksumme: 00D100AD 2013-01-01 16:54:21.573,ComfoAir,Checksumme vor der Umwandlung: 382 2013-01-01 16:54:21.573,ComfoAir,Checksumme vor der Kürzung: 17e 2013-01-01 16:54:21.573,ComfoAir,Checksumme nach der Kürzung: 7e 2013-01-01 16:54:21.574,ComfoAir,Checksumme aus der Subroutine: 7e 2013-01-01 16:54:21.574,ComfoAir,transmit: 0x7 0xf0 0x0 0xd1 0x0 0x7e 0x7 0xf 2013-01-01 16:54:21.574,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.575,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.575,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.576,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.576,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.577,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.577,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.577,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.578,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.578,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.578,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.579,ComfoAir,reciv-direkt: d1 2013-01-01 16:54:21.579,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.580,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.580,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.581,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.581,ComfoAir,reciv-direkt: 7e 2013-01-01 16:54:21.581,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.582,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.582,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.583,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.583,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.583,ComfoAir,ACK senden 2013-01-01 16:54:21.584,ComfoAir,String ohne 07f3: 07f000d1007e 2013-01-01 16:54:21.584,ComfoAir,Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.584,ComfoAir,reciv gekuerzt: 00d1007e 2013-01-01 16:54:21.584,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 00d1 2013-01-01 16:54:21.585,ComfoAir,Checksumme gelesen: 7e 2013-01-01 16:54:21.585,ComfoAir,Datenpaket ohne Checksumme: 00d100 2013-01-01 16:54:21.585,ComfoAir,String für die Berechnung der Checksumme: 00d100AD 2013-01-01 16:54:21.585,ComfoAir,Checksumme vor der Umwandlung: 382 2013-01-01 16:54:21.586,ComfoAir,Checksumme vor der Kürzung: 17e 2013-01-01 16:54:21.586,ComfoAir,Checksumme nach der Kürzung: 7e 2013-01-01 16:54:21.586,ComfoAir,Checksumme OK 2013-01-01 16:54:21.586,ComfoAir,Ventilator Status abrufen 2013-01-01 16:54:21.586,ComfoAir,data: 000B00 2013-01-01 16:54:21.587,ComfoAir,String für die Berechnung der Checksumme: 000B00AD 2013-01-01 16:54:21.587,ComfoAir,Checksumme vor der Umwandlung: 184 2013-01-01 16:54:21.587,ComfoAir,Checksumme vor der Kürzung: b8 2013-01-01 16:54:21.587,ComfoAir,Checksumme nach der Kürzung: b8 2013-01-01 16:54:21.588,ComfoAir,Checksumme aus der Subroutine: b8 2013-01-01 16:54:21.588,ComfoAir,transmit: 0x7 0xf0 0x0 0xb 0x0 0xb8 0x7 0xf 2013-01-01 16:54:21.589,ComfoAir,reciv-direkt: 07f3 2013-01-01 16:54:21.589,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.589,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.590,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.590,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.591,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.591,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.591,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.592,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.592,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.593,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.593,ComfoAir,reciv-direkt: 0b 2013-01-01 16:54:21.593,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.594,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.594,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.595,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.595,ComfoAir,reciv-direkt: b8 2013-01-01 16:54:21.595,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.596,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.596,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.597,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.597,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.597,ComfoAir,ACK senden 2013-01-01 16:54:21.598,ComfoAir,String ohne 07f3: 07f307f0000b00b8 2013-01-01 16:54:21.598,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 16:54:21.598,ComfoAir,reciv gekuerzt: 07f0000b00b8 2013-01-01 16:54:21.598,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.599,ComfoAir,reciv gekuerzt: 000b00b8 2013-01-01 16:54:21.599,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 000b 2013-01-01 16:54:21.599,ComfoAir,Checksumme gelesen: b8 2013-01-01 16:54:21.599,ComfoAir,Datenpaket ohne Checksumme: 000b00 2013-01-01 16:54:21.599,ComfoAir,String für die Berechnung der Checksumme: 000b00AD 2013-01-01 16:54:21.600,ComfoAir,Checksumme vor der Umwandlung: 184 2013-01-01 16:54:21.600,ComfoAir,Checksumme vor der Kürzung: b8 2013-01-01 16:54:21.600,ComfoAir,Checksumme nach der Kürzung: b8 2013-01-01 16:54:21.600,ComfoAir,Checksumme OK 2013-01-01 16:54:21.601,ComfoAir,Bypass Zustand abrufen 2013-01-01 16:54:21.601,ComfoAir,data: 000D00 2013-01-01 16:54:21.601,ComfoAir,String für die Berechnung der Checksumme: 000D00AD 2013-01-01 16:54:21.601,ComfoAir,Checksumme vor der Umwandlung: 186 2013-01-01 16:54:21.601,ComfoAir,Checksumme vor der Kürzung: ba 2013-01-01 16:54:21.602,ComfoAir,Checksumme nach der Kürzung: ba 2013-01-01 16:54:21.602,ComfoAir,Checksumme aus der Subroutine: ba 2013-01-01 16:54:21.602,ComfoAir,transmit: 0x7 0xf0 0x0 0xd 0x0 0xba 0x7 0xf 2013-01-01 16:54:21.603,ComfoAir,reciv-direkt: 07f3 2013-01-01 16:54:21.603,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.603,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.604,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.604,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.605,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.605,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.606,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.606,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.606,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.607,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.607,ComfoAir,reciv-direkt: 0d 2013-01-01 16:54:21.608,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.608,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.609,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.609,ComfoAir,reciv-direkt: ba 2013-01-01 16:54:21.610,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.610,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.610,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.611,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.611,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.612,ComfoAir,ACK senden 2013-01-01 16:54:21.612,ComfoAir,String ohne 07f3: 07f307f0000d00ba 2013-01-01 16:54:21.612,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 16:54:21.612,ComfoAir,reciv gekuerzt: 07f0000d00ba 2013-01-01 16:54:21.613,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.613,ComfoAir,reciv gekuerzt: 000d00ba 2013-01-01 16:54:21.613,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 000d 2013-01-01 16:54:21.613,ComfoAir,Checksumme gelesen: ba 2013-01-01 16:54:21.614,ComfoAir,Datenpaket ohne Checksumme: 000d00 2013-01-01 16:54:21.614,ComfoAir,String für die Berechnung der Checksumme: 000d00AD 2013-01-01 16:54:21.614,ComfoAir,Checksumme vor der Umwandlung: 186 2013-01-01 16:54:21.614,ComfoAir,Checksumme vor der Kürzung: ba 2013-01-01 16:54:21.614,ComfoAir,Checksumme nach der Kürzung: ba 2013-01-01 16:54:21.615,ComfoAir,Checksumme OK 2013-01-01 16:54:21.615,ComfoAir,Betriebsstunden abrufen 2013-01-01 16:54:21.615,ComfoAir,data: 00DD00 2013-01-01 16:54:21.615,ComfoAir,String für die Berechnung der Checksumme: 00DD00AD 2013-01-01 16:54:21.616,ComfoAir,Checksumme vor der Umwandlung: 394 2013-01-01 16:54:21.616,ComfoAir,Checksumme vor der Kürzung: 18a 2013-01-01 16:54:21.616,ComfoAir,Checksumme nach der Kürzung: 8a 2013-01-01 16:54:21.616,ComfoAir,Checksumme aus der Subroutine: 8a 2013-01-01 16:54:21.617,ComfoAir,transmit: 0x7 0xf0 0x0 0xdd 0x0 0x8a 0x7 0xf 2013-01-01 16:54:21.617,ComfoAir,reciv-direkt: 07f3 2013-01-01 16:54:21.617,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.618,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.618,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.619,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.619,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.619,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.620,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.620,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.621,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.621,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.622,ComfoAir,reciv-direkt: dd 2013-01-01 16:54:21.622,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.622,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.623,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.623,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.624,ComfoAir,reciv-direkt: 8a 2013-01-01 16:54:21.624,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.624,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.625,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.625,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.626,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.626,ComfoAir,ACK senden 2013-01-01 16:54:21.626,ComfoAir,String ohne 07f3: 07f307f000dd008a 2013-01-01 16:54:21.627,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 16:54:21.627,ComfoAir,reciv gekuerzt: 07f000dd008a 2013-01-01 16:54:21.627,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.627,ComfoAir,reciv gekuerzt: 00dd008a 2013-01-01 16:54:21.627,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 00dd 2013-01-01 16:54:21.628,ComfoAir,Checksumme gelesen: 8a 2013-01-01 16:54:21.628,ComfoAir,Datenpaket ohne Checksumme: 00dd00 2013-01-01 16:54:21.628,ComfoAir,String für die Berechnung der Checksumme: 00dd00AD 2013-01-01 16:54:21.629,ComfoAir,Checksumme vor der Umwandlung: 394 2013-01-01 16:54:21.629,ComfoAir,Checksumme vor der Kürzung: 18a 2013-01-01 16:54:21.629,ComfoAir,Checksumme nach der Kürzung: 8a 2013-01-01 16:54:21.629,ComfoAir,Checksumme OK 2013-01-01 16:54:21.629,ComfoAir,Binäreingänge abrufen 2013-01-01 16:54:21.630,ComfoAir,data: 000300 2013-01-01 16:54:21.630,ComfoAir,String für die Berechnung der Checksumme: 000300AD 2013-01-01 16:54:21.630,ComfoAir,Checksumme vor der Umwandlung: 176 2013-01-01 16:54:21.630,ComfoAir,Checksumme vor der Kürzung: b0 2013-01-01 16:54:21.630,ComfoAir,Checksumme nach der Kürzung: b0 2013-01-01 16:54:21.631,ComfoAir,Checksumme aus der Subroutine: b0 2013-01-01 16:54:21.631,ComfoAir,transmit: 0x7 0xf0 0x0 0x3 0x0 0xb0 0x7 0xf 2013-01-01 16:54:21.631,ComfoAir,reciv-direkt: 07f3 2013-01-01 16:54:21.632,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.632,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.633,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.633,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.634,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.634,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.634,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.635,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.635,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.636,ComfoAir,reciv-direkt: 03 2013-01-01 16:54:21.636,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.636,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.637,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.637,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.638,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.638,ComfoAir,reciv-direkt: b0 2013-01-01 16:54:21.638,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.639,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.639,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.640,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.640,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.641,ComfoAir,ACK senden 2013-01-01 16:54:21.641,ComfoAir,String ohne 07f3: 07f307f0000300b0 2013-01-01 16:54:21.641,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 16:54:21.641,ComfoAir,reciv gekuerzt: 07f0000300b0 2013-01-01 16:54:21.641,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.642,ComfoAir,reciv gekuerzt: 000300b0 2013-01-01 16:54:21.642,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 0003 2013-01-01 16:54:21.642,ComfoAir,Checksumme gelesen: b0 2013-01-01 16:54:21.642,ComfoAir,Datenpaket ohne Checksumme: 000300 2013-01-01 16:54:21.642,ComfoAir,String für die Berechnung der Checksumme: 000300AD 2013-01-01 16:54:21.643,ComfoAir,Checksumme vor der Umwandlung: 176 2013-01-01 16:54:21.643,ComfoAir,Checksumme vor der Kürzung: b0 2013-01-01 16:54:21.643,ComfoAir,Checksumme nach der Kürzung: b0 2013-01-01 16:54:21.643,ComfoAir,Checksumme OK 2013-01-01 16:54:21.644,ComfoAir,Ventilationsstufe abrufen 2013-01-01 16:54:21.644,ComfoAir,data: 00CD00 2013-01-01 16:54:21.644,ComfoAir,String für die Berechnung der Checksumme: 00CD00AD 2013-01-01 16:54:21.644,ComfoAir,Checksumme vor der Umwandlung: 378 2013-01-01 16:54:21.645,ComfoAir,Checksumme vor der Kürzung: 17a 2013-01-01 16:54:21.645,ComfoAir,Checksumme nach der Kürzung: 7a 2013-01-01 16:54:21.645,ComfoAir,Checksumme aus der Subroutine: 7a 2013-01-01 16:54:21.645,ComfoAir,transmit: 0x7 0xf0 0x0 0xcd 0x0 0x7a 0x7 0xf 2013-01-01 16:54:21.646,ComfoAir,reciv-direkt: 07f3 2013-01-01 16:54:21.646,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.647,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.647,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.647,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.648,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.648,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.649,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.649,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.650,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.650,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.650,ComfoAir,reciv-direkt: cd 2013-01-01 16:54:21.651,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.651,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.652,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.652,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.652,ComfoAir,reciv-direkt: 7a 2013-01-01 16:54:21.653,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.653,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.654,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.654,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.654,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.655,ComfoAir,ACK senden 2013-01-01 16:54:21.655,ComfoAir,String ohne 07f3: 07f307f000cd007a 2013-01-01 16:54:21.655,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 16:54:21.655,ComfoAir,reciv gekuerzt: 07f000cd007a 2013-01-01 16:54:21.656,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.656,ComfoAir,reciv gekuerzt: 00cd007a 2013-01-01 16:54:21.656,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 00cd 2013-01-01 16:54:21.656,ComfoAir,Checksumme gelesen: 7a 2013-01-01 16:54:21.657,ComfoAir,Datenpaket ohne Checksumme: 00cd00 2013-01-01 16:54:21.657,ComfoAir,String für die Berechnung der Checksumme: 00cd00AD 2013-01-01 16:54:21.657,ComfoAir,Checksumme vor der Umwandlung: 378 2013-01-01 16:54:21.657,ComfoAir,Checksumme vor der Kürzung: 17a 2013-01-01 16:54:21.658,ComfoAir,Checksumme nach der Kürzung: 7a 2013-01-01 16:54:21.658,ComfoAir,Checksumme OK 2013-01-01 16:54:21.658,ComfoAir,Störungen abrufen 2013-01-01 16:54:21.658,ComfoAir,data: 00D900 2013-01-01 16:54:21.658,ComfoAir,String für die Berechnung der Checksumme: 00D900AD 2013-01-01 16:54:21.659,ComfoAir,Checksumme vor der Umwandlung: 390 2013-01-01 16:54:21.659,ComfoAir,Checksumme vor der Kürzung: 186 2013-01-01 16:54:21.659,ComfoAir,Checksumme nach der Kürzung: 86 2013-01-01 16:54:21.659,ComfoAir,Checksumme aus der Subroutine: 86 2013-01-01 16:54:21.660,ComfoAir,transmit: 0x7 0xf0 0x0 0xd9 0x0 0x86 0x7 0xf 2013-01-01 16:54:21.660,ComfoAir,reciv-direkt: 07f3 2013-01-01 16:54:21.661,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.661,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.661,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.662,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.662,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.663,ComfoAir,reciv-direkt: f0 2013-01-01 16:54:21.663,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.663,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.664,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.664,ComfoAir,reciv-direkt: d9 2013-01-01 16:54:21.665,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.665,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.666,ComfoAir,reciv-direkt: 00 2013-01-01 16:54:21.666,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.666,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.667,ComfoAir,reciv-direkt: 86 2013-01-01 16:54:21.667,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.667,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.668,ComfoAir,reciv-direkt: 07 2013-01-01 16:54:21.668,ComfoAir,reciv-direkt: 2013-01-01 16:54:21.669,ComfoAir,reciv-direkt: 0f 2013-01-01 16:54:21.669,ComfoAir,ACK senden 2013-01-01 16:54:21.669,ComfoAir,String ohne 07f3: 07f307f000d90086 2013-01-01 16:54:21.670,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 16:54:21.670,ComfoAir,reciv gekuerzt: 07f000d90086 2013-01-01 16:54:21.670,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 07f0 2013-01-01 16:54:21.670,ComfoAir,reciv gekuerzt: 00d90086 2013-01-01 16:54:21.670,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 00d9 2013-01-01 16:54:21.671,ComfoAir,Checksumme gelesen: 86 2013-01-01 16:54:21.671,ComfoAir,Datenpaket ohne Checksumme: 00d900 2013-01-01 16:54:21.671,ComfoAir,String für die Berechnung der Checksumme: 00d900AD 2013-01-01 16:54:21.671,ComfoAir,Checksumme vor der Umwandlung: 390 2013-01-01 16:54:21.672,ComfoAir,Checksumme vor der Kürzung: 186 2013-01-01 16:54:21.672,ComfoAir,Checksumme nach der Kürzung: 86 2013-01-01 16:54:21.672,ComfoAir,Checksumme OK 2013-01-01 16:54:21.672,ComfoAir,ENDE Zyklische Abfrage
Code:#################### ###Einstellungen:### #################### #Erzeuge Variablen fuer die Zuordnung der Steuerfunktionen zu den Gruppenadressen: $ga_stufeabwesend = '9/3/0'; #1bit Trigger fuer Stufe "Abwesend". 1=Aktivieren $ga_stufe1 = '9/3/1'; #1bit Trigger fuer Stufe1. 1=Aktivieren $ga_stufe2 = '9/3/2'; #1bit Trigger fuer Stufe2. 1=Aktivieren $ga_stufe3 = '9/3/3'; #1bit Trigger fuer Stufe3. 1=Aktivieren $ga_komforttemp = '9/3/4'; #GA DPT 9.001 zum setzen der Komforttemperatur $ga_reset_filter = '9/3/5'; #1bit Trigger fuer das Zuruecksetzen des Betriebsstundenzaehlers des Filters. 1=Reset $ga_reset_error = '9/3/6'; #1bit Trigger fuer das zuruecksetzen der KWL nach einem Fehler. 1=Reset #Hier werden die Gruppenadressen fuer die Rueckmeldungen vergeben: (Nich vergeben = inaktiv) $ga_status_ventilator_zul = '9/3/7'; #GA DPT5.001 fuer Status Ventilator Zuluft % $ga_status_ventilator_abl = '9/3/8'; #GA DPT5.001 fuer Status Ventilator Abluft % $ga_status_bypass_prozent = '9/3/9'; #GA DPT5.001 fuer Status Bypassklappe % $ga_betriebsstunden_filter = '9/3/10'; #GA DPT16.000 fuer die Rueckmeldung der Betribsstunden des Filters $ga_zustand_badschalter = '9/3/11'; #GA DPT1.001 fuer die Rueckmeldung des Zustandes des Badezimmerschalters $ga_fehler_filter = '9/3/12'; #GA DPT 1.001 fuer den Zustand des Filters. 0=OK, 1=Filter Voll $ga_fehlercode = '9/3/13'; #GA DPT 16.000 fuer die Ausgabe des Fehlercodes als Text $ga_aktstufe = '9/3/14'; #GA DPT 5.005 Wert für aktuelle Stufe #Hier werden die Gruppenadressen für die Temperaturen vergeben: (Nicht vergeben=inaktiv) $ga_aul_temp = '9/3/15'; #GA DPT 9.001 für die Aussenlufttemperatur $ga_zul_temp = '9/3/16'; #GA DPT 9.001 für die Zulufttemperatur $ga_abl_temp = '9/3/17'; #GA DPT 9.001 für die Ablufttemperatur $ga_fol_temp = '9/3/18'; #GA DPT 9.001 für die Fortlufttemperatur #Zuordnung der Namen fuer die RRD's: $Name_rrd_AUL = 'KWL_Aussenluft'; #Name RRD Aussenluft $Name_rrd_ZUL = 'KWL_Zuluft'; #Name RRD Zuluft $Name_rrd_ABL = 'KWL_Abluft'; #Name RRD Abluft $Name_rrd_FOL = 'KWL_Fortluft'; #Name RRD Fortluft #Pfad zur seriellen Schnittstelle oder dem USB-Seriell-Wandler: $schnittstelle = '/dev/ttyUSB0'; ### Neu in Version 1.6### #Angaben für die Kommunikation über den UDP-Port einer MOXA [diese Einstellungen reichen aus, d.h. auf dem Wiregate muss unter "Seriell/LAN/Socketverbindungen" KEINE Socketverbindung erstellt werden $socknum = ""; # Eindeutige Nummer des Sockets $send_ip = ""; # SendeIP (UDP) $send_port = ""; # Sendeport (UDP) $recv_ip = ""; # EmpfangsIP (UDP) $recv_port = ""; # Empfangsport (UDP) # Kommunikationsart $Kom_Art = "S"; # "S" = seriell; "M" = Moxa # Dauer einer Abfrage $Zaehler = "2500"; #Mit dieser Variable Zaehler wird beeinflusst, wie lange das Plugin auf den Abschluss einer Rückmeldung der KWL wartet; empfohlener Wert für seriell: 2'500; für Moxa: 250 # Debug level 0 = nur die wichtigsten Infos, 1 = Alle Zustaende, 2 = Rohdaten (nur für Fehlersuche) $debug=2; ###################### ##ENDE Einstellungen## ######################
Gruß, Carsten
Kommentar
-
Wirklich seltsam...
Als ob die KWL einfach immer dass nachplappert was das Plugin sendet...
Kurze Frage... Wie bist du darauf gekommen, dass die Schnittstelle so korrekt ist?
Meine nennt sich z.B. /dev/usbserial-1-4.6
Deine müsste eine ähnliche Kennung haben. Die genaue Bezeichnung findest du im Webmin unter Seriell/LAN/Socket im unteren Teil.Gruss Patrik alias swiss
Kommentar
-
Im Webim steht "/dev/usbserial-1-4.2 ", was aber nur ein Link auf ttyUSB0 ist.
Ein "ls -la /dev" bringt das:
Code:crw-rw---- 1 root dialout 188, 0 1. Jan 19:01 ttyUSB0 lrwxrwxrwx 1 root root 7 1. Jan 14:41 ttyUSB-1-4.2 -> ttyUSB0 drwxr-xr-x 6 root root 140 1. Jan 14:42 .udev crw-rw-rw- 1 root root 1, 9 1. Jan 14:41 urandom crw-rw---- 1 root root 251, 0 1. Jan 14:41 usbmon0 crw-rw---- 1 root root 251, 1 1. Jan 14:41 usbmon1 crw-rw---- 1 root root 251, 2 1. Jan 14:41 usbmon2 lrwxrwxrwx 1 root root 7 1. Jan 14:41 usbserial-1-4.2 -> ttyUSB0
Ich habe jetzt nochmal die Schnittstelle auf die Anzeige aus Webmin geändert, erhalte aber das gleiche Ergebnis (= nachplappern):
Code:2013-01-01 21:22:11.778,ComfoAir, reading conf file [/etc/wiregate/plugin/generic/conf.d/ComfoAir.conf]. 2013-01-01 21:22:11.782,ComfoAir,conf file [/etc/wiregate/plugin/generic/conf.d/ComfoAir.conf] returned result[2] 2013-01-01 21:22:11.788,ComfoAir,Schnittstelle: /dev/usbserial-1-4.2 erfolgreich geöffnet 2013-01-01 21:22:11.789,ComfoAir,Temperatur abrufen 2013-01-01 21:22:11.789,ComfoAir,data: 00D100 2013-01-01 21:22:11.789,ComfoAir,String für die Berechnung der Checksumme: 00D100AD 2013-01-01 21:22:11.789,ComfoAir,Checksumme vor der Umwandlung: 382 2013-01-01 21:22:11.789,ComfoAir,Checksumme vor der Kürzung: 17e 2013-01-01 21:22:11.790,ComfoAir,Checksumme nach der Kürzung: 7e 2013-01-01 21:22:11.790,ComfoAir,Checksumme aus der Subroutine: 7e 2013-01-01 21:22:11.790,ComfoAir,transmit: 0x7 0xf0 0x0 0xd1 0x0 0x7e 0x7 0xf 2013-01-01 21:22:11.791,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.791,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.791,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.792,ComfoAir,reciv-direkt: 07 2013-01-01 21:22:11.792,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.793,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.793,ComfoAir,reciv-direkt: f0 2013-01-01 21:22:11.794,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.794,ComfoAir,reciv-direkt: 00 2013-01-01 21:22:11.794,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.795,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.795,ComfoAir,reciv-direkt: d1 2013-01-01 21:22:11.796,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.796,ComfoAir,reciv-direkt: 00 2013-01-01 21:22:11.797,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.797,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.798,ComfoAir,reciv-direkt: 7e 2013-01-01 21:22:11.798,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.798,ComfoAir,reciv-direkt: 07 2013-01-01 21:22:11.799,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.799,ComfoAir,reciv-direkt: 2013-01-01 21:22:11.800,ComfoAir,reciv-direkt: 0f 2013-01-01 21:22:11.800,ComfoAir,ACK senden 2013-01-01 21:22:11.800,ComfoAir,String ohne 07f3: 07f000d1007e 2013-01-01 21:22:11.800,ComfoAir,Erste 4 Byte des Datenpakets: 07f0 2013-01-01 21:22:11.801,ComfoAir,reciv gekuerzt: 00d1007e 2013-01-01 21:22:11.801,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 00d1 2013-01-01 21:22:11.801,ComfoAir,Checksumme gelesen: 7e 2013-01-01 21:22:11.801,ComfoAir,Datenpaket ohne Checksumme: 00d100 2013-01-01 21:22:11.802,ComfoAir,String für die Berechnung der Checksumme: 00d100AD 2013-01-01 21:22:11.802,ComfoAir,Checksumme vor der Umwandlung: 382 2013-01-01 21:22:11.802,ComfoAir,Checksumme vor der Kürzung: 17e 2013-01-01 21:22:11.802,ComfoAir,Checksumme nach der Kürzung: 7e 2013-01-01 21:22:11.803,ComfoAir,Checksumme OK
Ich habe nachdem die ersten Daten kamen, sofort "HEX 07 F3 00 11 22 33 44 07 0F" geschickt und genau das ist auch im Log angekommen
Code:2013-01-01 21:28:40.076,ComfoAir, reading conf file [/etc/wiregate/plugin/generic/conf.d/ComfoAir.conf]. 2013-01-01 21:28:40.080,ComfoAir,conf file [/etc/wiregate/plugin/generic/conf.d/ComfoAir.conf] returned result[2] 2013-01-01 21:28:40.094,ComfoAir,Schnittstelle: /dev/usbserial-1-4.2 erfolgreich geöffnet 2013-01-01 21:28:40.094,ComfoAir,Temperatur abrufen 2013-01-01 21:28:40.094,ComfoAir,data: 00D100 2013-01-01 21:28:40.094,ComfoAir,String für die Berechnung der Checksumme: 00D100AD 2013-01-01 21:28:40.095,ComfoAir,Checksumme vor der Umwandlung: 382 2013-01-01 21:28:40.095,ComfoAir,Checksumme vor der Kürzung: 17e 2013-01-01 21:28:40.095,ComfoAir,Checksumme nach der Kürzung: 7e 2013-01-01 21:28:40.095,ComfoAir,Checksumme aus der Subroutine: 7e 2013-01-01 21:28:40.096,ComfoAir,transmit: 0x7 0xf0 0x0 0xd1 0x0 0x7e 0x7 0xf 2013-01-01 21:28:40.103,ComfoAir,reciv-direkt: [~830 leere Zeilen gelöscht) 2013-01-01 21:28:40.415,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.416,ComfoAir,reciv-direkt: 07 2013-01-01 21:28:40.416,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.417,ComfoAir,reciv-direkt: f3 2013-01-01 21:28:40.417,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.418,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.418,ComfoAir,reciv-direkt: 00 2013-01-01 21:28:40.418,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.419,ComfoAir,reciv-direkt: 11 2013-01-01 21:28:40.419,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.420,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.420,ComfoAir,reciv-direkt: 22 2013-01-01 21:28:40.421,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.421,ComfoAir,reciv-direkt: 33 2013-01-01 21:28:40.421,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.422,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.422,ComfoAir,reciv-direkt: 44 2013-01-01 21:28:40.423,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.423,ComfoAir,reciv-direkt: 07 2013-01-01 21:28:40.423,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.424,ComfoAir,reciv-direkt: 2013-01-01 21:28:40.424,ComfoAir,reciv-direkt: 0f 2013-01-01 21:28:40.425,ComfoAir,ACK senden 2013-01-01 21:28:40.425,ComfoAir,String ohne 07f3: [B]07f30011223344[/B] 2013-01-01 21:28:40.425,ComfoAir,Erste 4 Byte des Datenpakets: 07f3 2013-01-01 21:28:40.425,ComfoAir,reciv gekuerzt: 0011223344 2013-01-01 21:28:40.426,ComfoAir,NEU. Erste 4 Byte des Datenpakets: 0011 2013-01-01 21:28:40.426,ComfoAir,Checksumme gelesen: 44 2013-01-01 21:28:40.426,ComfoAir,Datenpaket ohne Checksumme: 00112233 2013-01-01 21:28:40.426,ComfoAir,String für die Berechnung der Checksumme: 00112233AD 2013-01-01 21:28:40.426,ComfoAir,Checksumme vor der Umwandlung: 275 2013-01-01 21:28:40.427,ComfoAir,Checksumme vor der Kürzung: 113 2013-01-01 21:28:40.427,ComfoAir,Checksumme nach der Kürzung: 13 2013-01-01 21:28:40.427,ComfoAir,Checksumme fehlerhaft! Gelesen: 44 Berechnet: 13
Die ComfoAir antwortet mit "HEX 07 F3 07 F0 00 6A 0D 03 1E 20 43 41 33 35 30 20 6C 75 78 65 5F 07 0F"
Code:07 F3 -> ACK 07 F0 -> START 00 6A -> Kommando um eins inkrementiert 0D -> Anzahl Datenbytes = 13 03 1E 20 43 41 33 35 30 20 6C 75 78 65 -> Daten 5F -> Prüfsumme 07 0F -> Ende
Nochmal zusammengefaßt:
- WG -> KWL: was gesendet wurde, kommt zurück
- WG -> PC: PC sieht das richtige und was vom PC gesendet wird kommt im Plugin an
- PC -> KWL: eine Abfrage von der KWL wird korrekt beantwortet.
Warum das WG nicht mit der KWL reden mag, ist mir bei der Faktenlage vollkommen unverständlich....Angehängte DateienGruß, Carsten
Kommentar
-
Ok. Ich habe nicht gesehen, dass /dev/ttyUSB0 auf den USB-Seriell Wandler zeigt.
Nun verstehe ich es aber überhaubt nicht mehr
Also nochmal kurz zusammengefasst:
- PC an KWL geht.
- PC an WG geht (senden und empfangen passt)
- WG an KWL geht nicht (loop?)
Ein solches Verhalten kann doch eigentlich nur auftreten, wenn irgend wo RX und TX kurzgeschlossen sind. Die KWL sendet ja kein loop sonst wäre der bei der PC->KWL verbindung auch zu sehen.
Hast du den PC über den gleichen USB-Seriellwandler mit der KWL verbunden wie das WG? Könnte der Wandler defekt sein?Gruss Patrik alias swiss
Kommentar
-
Ich habe vorher mit einem anderem Wandler vom PC aus gesprochen. Den Wandler vom WG habe ich mal an den PC geklemmt und auch dort bekomme ich nur ein Echo...
Ich habe jetzt einen anderen 4-fach-Wandler ans WG gehängt. Spannenderweise taucht er im Webmin nicht auf, aber unter /dev sind ttyUSB1 bis ttyUSB4 dazugekommen. Was soll ich sagen? Es funktioniert mit usbTTY1...
Code:2013-01-01 22:26:26.680,ComfoAir,Temperatur abrufen 2013-01-01 22:26:26.730,ComfoAir,AUL: 4.5°C, ZUL:17.5°C, ABL: 21°C, FOL: 7°C 2013-01-01 22:26:26.760,ComfoAir,ZUL: 75% ABL: 61% 2013-01-01 22:26:26.797,ComfoAir,Bypass: 0% 2013-01-01 22:26:26.843,ComfoAir,Betriebsstunden: 1299h 2013-01-01 22:26:26.875,ComfoAir,Zustand Badezimmerschalter: 0 2013-01-01 22:26:26.920,ComfoAir,AKT_STUFE: 3 2013-01-01 22:26:26.969,ComfoAir,Aktueller Fehlercode: keiner
ABER: beide Wandler an den PC und mit Null-Modemkabel verbunden und es funktioniert sauber... Auch mit 115.200 Baud (automatisches Senden von langen Strings).
Das Problem besteht also nur, wenn der WG-Wandler mit der KWL reden soll. Egal ob vom WG oder dem PC aus.
Irgendwie hilft das nicht bei der Aufklärung, sondern stiftet höchstens noch mehr Verwirrung... :-)Gruß, Carsten
Kommentar
-
Seltsam, dass das Echo weg ist, wenn du die beiden USB-Seriellwandler mit einander verbindest. Vieleicht kannst du bei Gelegenheit mal die Pegel durch messen und herausfinden, was bei der verbindung mit der KWL anders ist als beim verbinden der beiden Wandler.
Eventuell hat dass auch etwas mit den Leitern zu tun. Die KWL verbindet nur RX, TX und GND. Die Wandlerhaben aber noch viel mehr leitungen z.B. DTR oder RTS. Je nach einstellung der Schnittstelle in deinem PC kannst du so die Kommunikation nicht 1:1 testen.Vieleicht ist die Kommunikation falsch eingestellt.
Gruss Patrik alias swiss
Kommentar
Kommentar