Das Problem liegt grundsätzlich am Bus bzw. an der Justierung des Adapters, wenn hier keine AA's zwischen den Nachrichten gesehen wird.
Nichtsdestotrotz sollte der Daemon, wenn die Länge in keinster Weise paßt, einfach nicht abstürzen und das Telegramm verwerfen.
Ich denke mal darüber nach, wie ich den Daemon dahingehend etwas robuster gestalten kann.
Ankündigung
Einklappen
Keine Ankündigung bisher.
[ebusd] Frage zu command.csv
Einklappen
Dieses Thema ist geschlossen.
X
X
-
Ein Gast antwortete
-
Hallo yuhu,
hat bei mir auch nichts ausgemacht, ging ja auch. aber nach einer halben stunde hatte ich wieder "segmentation Fault" schade das der EbusD dann gestoppt wird. Stattdessen könnte das Programm doch das Paket einfach verwerfen und weiter laufen. Währe super, wenn sich das im ebusd umprogrammieren ließe, aber da bist du ehr der Profi als ich. Ich würde wenn dann in meinem CCU.IO ein script bauen (lassen) was den ebusd überwacht und diesen ggf. neu startet.
Einen Kommentar schreiben:
-
Ein Gast antworteteIch habe das gerade mal mit csv (tools) getestet. Das vermeintlich doppelte Semikolon macht der Konfiguration nichts. Bei beiden male sieht die Ausgabe so aus.Zitat von Matthi Beitrag anzeigenHallo yuhu, 2 Semikolon´s hm aber es lief ja eine halbe stunde und ich konnte auch werte abfragen und dann kam dieser zusammengewürfelte Block, wo was nicht passte. Ich probiers mal in der korrigierten Fassung aus, mal sehen was passiert
Code:./csv . -ad 2014-02-06 20:23:53.656 [NOT] ./test.csv 2014-02-06 20:23:53.656 [NOT] ./test.csv success 2014-02-06 20:23:53.656 [INF] [000] cyc : vwl.OutUnitData (type: MS) E0B52100 (len: 5) [7] ==> AusseneinheitDaten 2014-02-06 20:23:53.656 [INF] stat1 sd pos: 1 bcd [ 1.00] [-] - - 2014-02-06 20:23:53.656 [INF] stat2 sd pos: 2 bcd [ 1.00] [-] - - 2014-02-06 20:23:53.656 [INF] sole sd pos: 3,4 d2c [ 1.00] [°C] - Temperatur 2014-02-06 20:23:53.656 [INF] zuluft sd pos: 5,6 d2c [ 1.00] [°C] - Temperatur 2014-02-06 20:23:53.656 [INF] stat3 sd pos: 7 bcd [ 1.00] [-] - - 2014-02-06 20:23:53.656 [INF] fanspeed sd pos: 8 d1b [10.00] [Upm] - Drehzahl 2014-02-06 20:23:53.656 [INF] fanpower sd pos: 9 d1b [ 1.00] [%] - Power 2014-02-06 20:23:53.656 [INF]
Einen Kommentar schreiben:
-
Hallo, JuMi 2006,Zitat von JuMi2006 Beitrag anzeigenDu könntest den PWM-Wert ändern, der sollte auslesbar und setzbar sein. Ich hab gerade die config nicht zur Hand.
Dann sollte man einfach zwischen 0% und 100% wechseln können.
also mit "get vpm3035w CircoPumpPower" kann man das abfragen set befehle für die vpmw habe ich leider nicht. Rausfinden kann ich das auch nicht, da ich keine VRDialog mit adapter besitze. Vielleicht funktioniert ja auch der ZP eingang der hauptplatine, kann ich ja mal probieren am Wochenende....
Hallo yuhu, 2 Semikolon´s hm aber es lief ja eine halbe stunde und ich konnte auch werte abfragen und dann kam dieser zusammengewürfelte Block, wo was nicht passte. Ich probiers mal in der korrigierten Fassung aus, mal sehen was passiert
MfG Matthi
Einen Kommentar schreiben:
-
Ein Gast antwortete[QUOTE=Matthi;375829]
Da paßt was nicht:Code:cyc;vwl;OutUnitData;AusseneinheitDaten;MS;E0;B521;5;00;7;stat1;sd;1;bcd;1;-;-;-;stat2;sd;2;bcd;1;-;-;-;[B][COLOR=Red];[/COLOR][/B]sole;sd;3,4;d2c;1;°C;-;Temperatur;zuluft;sd;5,6;d2c;1;°C;-;Temperatur;stat3;sd;7;bcd;1;-;-;-;fanspeed;sd;8;d1b;10;Upm;-;Drehzahl;fanpower;sd;9;d1b;1;%;-;Power
Es sind stets 8 Werte in der WiederholgruppeCode:0 -> cyc;vwl;OutUnitData;AusseneinheitDaten;MS;E0;B521;5;00;7; 1 -> stat1;sd;1;bcd;1;-;-;-; 2 -> stat2;sd;2;bcd;1;-;-;-;[B][COLOR=Red];[/COLOR][/B][COLOR=Red] <- Fehler, 1 Semikolon zuviel[/COLOR] 3 -> sole;sd;3,4;d2c;1;°C;-;Temperatur; 4 -> zuluft;sd;5,6;d2c;1;°C;-;Temperatur; 5 -> stat3;sd;7;bcd;1;-;-;-; 6 -> fanspeed;sd;8;d1b;10;Upm;-;Drehzahl; 7 -> fanpower;sd;9;d1b;1;%;-;Power
Einen Kommentar schreiben:
-
Du könntest den PWM-Wert ändern, der sollte auslesbar und setzbar sein. Ich hab gerade die config nicht zur Hand.
Dann sollte man einfach zwischen 0% und 100% wechseln können.
Einen Kommentar schreiben:
-
Ein Gast antworteteFür die Zirkulationspumpe kann man Zeiten festlegen, in der diese aktiv bzw. inaktiv ist. Da ich so etwas nicht habe, habe ich das nicht weiter verfolgt.Zitat von Matthi Beitrag anzeigenDie Frage, die ich noch offen habe, währe: mit welchem "set" Befehl an die vpm20/25W starte ich die Zirkulationspumpe für eine gewisse Zeit. Ich möchte die gerne mit dem Bewegungsmelder in der Küche verbinden, aber dazu später mehr!
Einen Kommentar schreiben:
-
Hallo, ich habe vorhin bereits schon Poti gedreht, ich habe etwa 2 Umdrehungen an meinem Spindeltrimmer, wo ich daten empfange, es ändert sich aber rein garnichts an den Störungen in der Antwort von der außeneinheit, habe sogar das Telefonkabel welches in mein Bastelzimmer geht im keller vom Ebus abgeklemmt, nicht das es zu Störungen von dort aus kommt. Ich spiele gerade mit dem Gedanen den Rasperry in meine Wärmepumpe mal Probehalber mit ganz kurzem Kabel zur Hauptplatine laufen zu lassen. Derzeit hängt das ding genau am anderen Ende des Busses zur Außeneinheit, nämlich am vpm20s Parallel drauf mit noch rund 6Meter Kabel dran bis in meinen 19" netzwerkschrank. Muss mal sehen am Wochenende, habe die Zeile erstmal auskommentiert. Wenn´s nicht geht, muss ich mir ein script überlegen, welches den ebusd. bei Fehlerhafter Connection über Telnet einfach neu startet. Ich nutze übrigens ein Homematic-System mit CCU.IO zur visualisierung und nutze die dort eingebaute Telnet-Schnittstelle zur kommunikation mit dem ebusD.
Die Frage, die ich noch offen habe, währe: mit welchem "set" Befehl an die vpm20/25W starte ich die Zirkulationspumpe für eine gewisse Zeit. Ich möchte die gerne mit dem Bewegungsmelder in der Küche verbinden, aber dazu später mehr!
MfG Matthi
Einen Kommentar schreiben:
-
Ein Gast antworteteDas mit dem "Segmentation fault" ist natürlich Schlecht.
Kannst Du mal prüfen, ob zwischen den einzelnen Befehlen auch einige AA's dazwischen sind.
Im Normalfalls sind bei mir immer so zwischen 3-5 AA hintereinander.
Ansonsten nochmal etwas am Adapter nachjustieren.
Einen Kommentar schreiben:
-
Komisch, jetzt läufts....
Hallo,
also habe das jetzt nochmal in die cyc.csv eingetragen und den ebusD laufen lassen. Dabei habe ich erstmal folgendes entdeckt, denn aktuell war grad mal wieder die Kommunikationsstörung zur Ausseneinheit
sprich, wenn da Müll kommt, nimmter´s nicht! Schonmal gut und jetzt zur eigentlichen Sache:Code:2014-02-05 21:30:55.579 [EBH] 03 e0 b5 21 05 00 02 07 00 e7 65 80 42 40 a0 ff 1c 00 07 00 00 78 00 2014-02-05 21:30:55.579 [NOT] found: E0B5210500 type: MS ==> id: 68 2014-02-05 21:30:55.580 [WAR] Slave CRC Error
Jetzt gehts, entweder hatte ich einen Fehler in der Configdatei oder es waren haufenweise Communikationsstörungen:
hier meine komplette cyc.csv:Code:cyc vwl outunitdata 0 2 -0.125000 1.250000 7 0.000000 0.000000
Aber jetzt das:Code:# type;class;cmd;comment;msg type: 1=BROAD, 2=MM, 3=MS;ZZ;PBSB;NN;D1D2D3;elements;sub;part;position;datatype;factor;unit;valid;comment;sub;part;position;datatype;factor;unit;valid;comment;sub;part;position;datatype;factor;unit;valid;comment;sub;part;position;datatype factor;unit;valid;comment cyc;broad;date_time_temp;Datum, Uhrzeit und Aussentempertur;BR;FE;0700;9;-;4;temp;md;1,2;d2b;1;°C;-;Temperatur;day;md;8;bdy;-;-;-;Wochentag;date;md;6,7,9;bda;-;-;-;Datum;time;md;5,4,3;bti;-;-;-;Uhrzeit cyc;broad;load_VF_temp;Speicherladung und Vorlauftempertur;BR;FE;B505;4;27;3;load;md;2;bcd;1;-;00,01;Speicherladung;temp;md;3;d1c;2;°C;-;Temperatur;stat;md;4;bcd;1;-;-;Status;;;;;;;; cyc;broad;date_time;Datum, Uhrzeit;BR;FE;B516;8;0;3;day;md;7;hdy;-;-;-;Wochentag;date;md;5,6,8;bda;-;-;-;Datum;time;md;4,3,2;bti;-;-;-;Uhrzeit;;;;;;;; cyc;broad;temp;Aussentemperatur;BR;FE;B516;3;01;1;-;md;2,3;d2b;1;°C;-;-;;;;;;;;;;;;;;;;;;;;;;;; #;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; cyc;mv;VF1_temp;VorlauftemperaturVF1;MS;08;B509;3;290100;2;temp;sd;3,4;d2c;1;°C;-;Temperatur;stat;sd;5;bcd;1;-;-;Status;;;;;;;;;;;;;;;; cyc;mv;RF1_temp;RücklauftemperaturRF1;MS;08;B509;3;290700;2;temp;sd;3,4;d2c;1;°C;-;Temperatur;stat;sd;5;bcd;1;-;-;Status;;;;;;;;;;;;;;;; cyc;mv;VF2_temp;VorlauftemperaturVF2;MS;50;B504;2;0D00;4;stemp;sd;1;d1b;1;°C;-;Temperatur;stat;sd;2;bcd;1;-;-;-;temp;sd;3,4;d2c;1;°C;-;Temperatur;rstemp;sd;5;d1b;1;°C;-;Temperatur cyc;mv;SP1_temp;VorlauftemperaturVF2;MS;25;B504;2;0D00;4;stemp;sd;1;d1b;1;°C;-;Temperatur;stat;sd;2;bcd;1;-;-;-;temp;sd;3,4;d2c;1;°C;-;Temperatur;mtemp;sd;5;d1b;1;°C;-;Temperatur$ cyc;mv;brine_in;Quellentemperatur;MS;08;B509;3;290F00;2;temp;sd;3,4;d2c;1;°C;-;Temperatur;stat;sd;5;bcd;1;-;-;Status;;;;;;;;;;;;;;;; cyc;amu;high_eff_pump_stat;Hocheffizenzpumpenstatus;MS;08;B509;3;29B801;1;-;sd;3;bcd;1;-;-;-;;;;;;;;;;;;;;;;;;;;;;;; cyc;cir2;heat_pump_stat;StatusHeizkreispumpe;MS;08;B509;3;29B901;1;-;sd;3;bcd;1;-;-;-;;;;;;;;;;;;;;;;;;;;;;;; #;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; #cyc;cir2;date_time_temp;Datum, Uhrzeit und Aussentempertur;MS;50;B504;1;0;4;day;sd;7;hdy;-;-;-;Wochentag;date;sd;5,6,8;bda;-;-;-;Datum;time;sd;4,3,2;bti;-;-;-;Uhrzeit;temp;sd;9,10;d2b;1;°C;-;Temperatur cyc;vwl;OutUnitData;AusseneinheitDaten;MS;E0;B521;5;00;7;stat1;sd;1;bcd;1;-;-;-;stat2;sd;2;bcd;1;-;-;-;;sole;sd;3,4;d2c;1;°C;-;Temperatur;zuluft;sd;5,6;d2c;1;°C;-;Temperatur;stat3;sd;7;bcd;1;-;-;-;fanspeed;sd;8;d1b;10;Upm;-;Drehzahl;fanpower;sd;9;d1b;1;%;-;Power
irgendwie würfelt der jetzt 2 sachen zusammen und stürzt ab, machter seit Sonntag, seit dem ich die B521 abhöre, versteh ich nicht.Code:2014-02-05 21:47:35.915 [EBH] 1 03 e0 b5 21 05 00 02 07 00 e7 65 80 42 40 20 20 a0 04 74 04 04 34 02 a6 83 fe 08 b5 10 09 2014-02-05 21:47:35.915 [EBH] 2 00 01 00 00 00 00 00 00 02 0c 00 00 00 00 2014-02-05 21:47:35.916 [NOT] found: E0B5210500 type: MS ==> id: 68 Segmentation fault
Einen Kommentar schreiben:
-
Ein Gast antwortetePost bitte mal die verwendete csv Datei mit dem Befehl (7 Elementen)
Einen Kommentar schreiben:
-
Hallo, yuhu,
welche defekte .csv? meinste die, die dann die zu lange Configzeile hätte? Die CSV selbst geht ja, nur werden die werte nirgends nicht zwischengespeichert, es kommt dann bei der Abfrage über Telnet überall 0 bzw. 0.000000 raus. Die Anzahl der Werte Selbst passt schon, es währen dann 7 Stück.
MfG Matthias
Einen Kommentar schreiben:
-
Ein Gast antworteteIm Sourcecode habe ich da keine Beschränkungen eingebaut. In der Theorie solltest du beliebige Elemente definieren können.Zitat von Matthi Beitrag anzeigenLeider kann ich nur 4 Werte abfragen, wenn ich mehr als 41 semikolons benutze werden zwar alle Werte angezeigt, aber überall steht dann null.
Vielleicht ist auch nur ein Buffer falsch gesetzt. Kannst Du mal die "defekte" CSV mit dem Tool csv aus dem tools Verzeichnis auslesen und anzeigen.
Ja, wäre möglich, man muss aber auf die Reihenfolge aufpassen. Die Regel, welche als erstes gefunden wird, wird verwendet.Zitat von Matthi Beitrag anzeigenWas passiert, wenn ich eine neue Configzeile erstelle und die Restlichen blöcke, die noch nicht abgefragt sind darin abfrage, also die stellen 1,2 und 7. Funktioniert das?
Einen Kommentar schreiben:
-
bin schon weiter, aber noch ne Frage:
Hallo yuhu,
zur Info, es funktioniert, wenn man zur erkennung des paketes nicht alles der angegeben datenlänge einträgt. meine Configzeile sieht so aus:
leider kann ich nur 4 Werte abfragen, wenn ich mehr als 41 semikolons benutze werden zwar alle Werte angezeigt, aber überall steht dann null. Ich wollte mal beobachten wann welcher Status kommt um diese auch noch zu erforschen, aber das geht leider nicht so. was passiert, wenn ich eine neue Configzeile erstelle und die Restlichen blöcke, die noch nicht abgefragt sind darin abfrage, also die stellen 1,2 und 7. Funktioniert das?Code:cyc;vwl;OutUnitData;AusseneinheitDaten;MS;E0;B521;5;00;4;sole;sd;3,4;d2c;1.00;°C;-;Temperatur;zuluft;sd;5,6;d2c;1;°C;-;Temperatur;fanspeed;sd;8;d1b;10;Upm;-;Drehzahl;fanpower;sd;9;d1b;1;%;-;Power
MfG Matthi
Einen Kommentar schreiben:
-
läuft....
Ah, jetzt kommt Licht ins dunkle, mit der "08" klappt das auch. das ist die Grundlage zum weiter rum probieren. Das ist vermutlich auch der Grund, warum die vaillant_get.csv nur teilweise funktioniert, habe dort statt 1, 2, und 3 in BR, MS und MM in excel geändert. Danke dafür. Wenn ich das jetzt hinbekomme, stelle ich die cyc.csv mal zur verfügung, wenn ich schon einige Daten herrausgefunden habe, kann die auch jeder andere nuten der es braucht. Es wird eh besser sein die Daten einfach Passiv mitzulesen, um so den lumpigen Ebus nicht zu überlasten!
MfG Matthias
Einen Kommentar schreiben:


Einen Kommentar schreiben: