NEWS
Test Adapter canbus v1.1.x Latest
-
@michael-wind
Habe nochmal den CAN angeschlossen und probiert:pi@raspberrypi:~ $ ip -details -statistics link show can0 4: can0: <NO-CARRIER,NOARP,UP,ECHO> mtu 16 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 10 link/can promiscuity 0 minmtu 0 maxmtu 0 can state BUS-OFF restart-ms 0 bitrate 20000 sample-point 0.850 tq 2500 prop-seg 8 phase-seg1 8 phase-seg2 3 sjw 1 mcp251x: tseg1 3..16 tseg2 2..8 sjw 1..4 brp 1..64 brp-inc 1 clock 4000000 re-started bus-errors arbit-lost error-warn error-pass bus-off 0 0 0 1 1 1 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 RX: bytes packets errors dropped missed mcast 0 0 0 2 0 0 TX: bytes packets errors dropped carrier collsns 0 0 0 0 0 0
Sieht nicht so wirklich toll aus.
Zudem steht im Display der HPSU "Keine Kommunikation"
Bedienen darüber kann ich aber -
Es kommen Daten!
Auf der Wiki Seite von den Waveshare CAN-HAT stand was mit unterschiedlichen Quarzen:
https://www.waveshare.com/wiki/RS485_CAN_HATIch hatte dann das neuere genommen, damit läuft es.
Also Obacht hier!
-
Hallo @hg6806 ,
wenn im Display der HPSU 508 "keine Kommunikation" steht, könnte der Parameter 'Terminaladdresse' im Menu 'Installation' nicht auf 'AUS' sondern evtl. auf 1 bis 9 (Ich habe allerdings keine RoCon, mit dieser kann es natürlich irgendwie anders sein). Zu diesem Menüpunkt kommt man allerdings nicht als normaler 'Benutzer' hin, nur als 'Fachmann' (nach Eingabe des Codes).
Oder vielleicht einfach mal neu starten (10s Strom aus). Mach ich inzwischen schon automatisiert, entweder direkt über Auswertung des Fehler Codes 9039 oder indirekt, wenn die über einen externen Fühler gemessene Speichertemperatur mit der internen T-WW mehr als 1° auseinanderläuft.
Freut mich, dass Dein 'neues' System nun mit der Heizung sprechen kann. Mein System ist ja schon ein paar Jahre alt, da war die Hardware wohl noch die Ältere...
LG
Mic
-
@michael-wind
"Keine Kommunikation" taucht nicht mehr auf.
Noch zwei Fragen.
Bei der FHEM Lösung hatte ich bei aktualisierten Werten diese sofort angezeigt bekommen. Geht das hier irgendwie auch?
Warum tauchen immer wieder diese nicht konfigurierte Daten auf? Habe schon auf Löschen bei Start gestellt, die kommen aber immer wieder. -
@michael-wind
Und noch eine Frage. Wenn ich die ganzen nicht-benutzen Werte aus dem Adapter lösche, tauchen sie noch einige Zeit wieder auf.
Kann man die nicht Endgültig löschen? -
@hg6806 sagte in Test Adapter canbus v1.1.x Latest:
Bei der FHEM Lösung hatte ich bei aktualisierten Werten diese sofort angezeigt bekommen. Geht das hier irgendwie auch?
Sobald von der Rotex neue Werte gesendet werden, sollten diese auch direkt im Adapter auftauchen.
Alles andere muss aktiv abgefragt werden (macht FHEM dabei genauso).
Wenn du die Werte schneller haben willst, musst du den Intervall für das automatische Setzen verkürzen, z.B. auf 3000 für alle 3 Sekunden. Ich weiß allerdings nicht, welche Abfrageintervalle hier seitens der Rotex unterstützt werden.@hg6806 sagte in Test Adapter canbus v1.1.x Latest:
Und noch eine Frage. Wenn ich die ganzen nicht-benutzen Werte aus dem Adapter lösche, tauchen sie noch einige Zeit wieder auf.
Kann man die nicht Endgültig löschen?Wenn du nur die Objekte/States löschst, dann werden die spätestens beim Adapterneustart immer wieder angelegt.
Was du nicht brauchst, kannst du aber in der Konfiguration löschen. Dazu einfach bei den entsprechenden Nachrichten die passenden Parser raussuchen, löschen und dann speichern. Die Objekte davon werden dann auch beim Adapterstart gelöscht. Zudem solltest du unter "Allgemein" die Option "Gesehene Nachrichten automatisch hinzufügen" nicht aktivieren und "Nicht konfigurierte Nachrichten löschen" aktivieren. -
Ales klar, vielen Dank.
Wie schon geschrieben, lösche ich das im Adapter (Parser war gemeint), und sie kommen immer wieder.
Allerdings ist der Adapter auch gestoppt, da ich die CAN Verbindung erst einmal getrennt habe.
Vielleicht liegt es daran.Nächste Woche wird alles dann verkabelt und alles umgesetzt auch den CAN-ioBroker Lösung.
-
@hg6806 In der Adapterconfig dürfte da nichts von alleine dazu kommen, wenn du gespeichert hast. Außer du lädst neu die Config von GitHub rein.
Die Objekte werden erst beim Start vom Adapter dann aufgeräumt und bleiben solange noch erhalten.
Du kannst den Adapter auch kurz ohne angeschlossenen Bus starten. Dann werden zumindest die Objekte aufgeräumt. -
So, habe jetzt auf CAN-Anbindung mit dem CAN Adapter umgestellt.
Läuft soweit, habe aber noch einige Fragen.Wenn ich den Wert "canbus.0.680.13-set" = "T-WW Soll1 setzen" verändere, dauert es schon eine recht lange Zeit bis der Wert "canbus.0.300.05" = "T-WW Soll1" dann letztendlich anzeigt. Kommt die Verzögerung von der HPSU? Ein Timing kann man hier nicht einstellen.
Über welchen Wert kann ich die Heizkurve verändern? Ich sehe da nichts. Kann aber auch sein, dass ich den Wert aus Versehen gelöscht habe.
Es werden immer Ordner wie "canbus.0.10A" oder "canbus.0.600" erzeugt. Kann man das verhindern?
-
Hallo @hg6806,
was meinst du mit recht lange Zeit?
Von meiner Homematic habe ich gelernt, das alle Befehle nur zeitverzögert sauber abgearbeitet werden. Dementsprechend habe ich das bei meinem ioBroker mit 20 Adaptern auf einem RasPi3B für Kostal, Homematik, etc in den Blockly Scripten auch gleich so gemacht: 100 Millisekunden nach dem SET, frage ich mit dem ASK, nach weiteren 100 Millisekunden schaue ich mir das READ an und das hat bislang immer sauber funktioniert.Mic
-
@michael-wind
Damit meine 10-30 Sekunden, keine Millisekunden!
-
Um das Ganze mal etwas vom Adaptertest zu entkoppeln, habe ich zwei neue Themen zum Adapter und zu den Wärmepumpen erstellt:
[Adapter] CAN-Bus - Beschreibung, FAQ, Diskussionen, etc.
Rotex HPSU / Daikin Altherma Wärmepumpe über ioBroker.canbus
Alles was nicht direkt mit dem Adaptertest zu tun hat bitte von nun an dort rein.
@hg6806 Im Thema zur Rotex HPSU habe ich auch ein kurzes Script gepostet, was dein Problem mit der Anzeige der geänderten Werte lösen sollte.
-
@crycode Kurze Frage zu der Option "Automatisch einen bestimmten Wert setzen": bei meiner Konfiguration (andere Heizung) hab ich unter der ASK ID 680 z.b. 10 unterschiedliche Parser. Die Ergebnisse werden mit der Receive ID 690 (auch 10 unterschiedliche Parser) empfangen. Brauch ich jetzt zum zyklischen Abfragen (z.B. jede Minute) meiner 10 Werte ein zusätzliches Script oder kann ich einfach bei allen 10 ASK-Parsern das Intervall 60000 setzen?
-
@dreman Genau dafür ist diese Funktion gedacht, damit man eben nicht extra Scripte erstellen muss, um z.B. regelmäßig irgendwas abzufragen.
Einfach bei den entsprechenden Parsern aktivieren, Intervall und Wert festlegen und fertig. Um Abfragen zu Triggern wird der Wert wahrscheinlichtrue
(bzw. Haken gesetzt) sein. -
@crycode Aber mit welcher Sequenz läuft das dann in der Praxis ab? Werden die Sendeframes in einer bestimmten Reihenfolge aktiviert, wird eine Antwort abgewartet, bevor die nächste Abfrage gestartet wird? Ich frage deshalb so dumm, weil das ganze bei mir nicht laufen will. Wenn ich Intervall und Wert nur bei einem Parser festlege (1 Minute), dann wird der Antwort-Wert sicher abgeholt. Setze ich jedoch Intervall und Wert auch bei einem weiteren Parser, dann funktioniert das beim 1. Parser nach wie vor, beim 2. Parser wird der Antwort-Wert aber meistens nicht abgeholt. Kann natürlich alles mit dem noch nicht völlig durchschauten CAN-Protokoll meiner Heizung zudammenhängen, aber mit manuellen Einzelabrufen der bisher bekannten Datenpunkte über das Terminal mit 'cansend can0 680#xxxxxxxx' werden unter der ID 690 im Adapter mit den entsprechenden Parser-Scripten die Antwort-Werte korrekt dargestellt.
-
@crycode Alles zurück, funktioniert jetzt korrekt. Es handelt sich bei meiner Heizung um einen UDS Can-Bus und die Heizung beantwortet jede Anfrage mit einem Multiframe, erwartet also nach Empfang des 1. Frames eine Art Bestätigung (Flow Control, FC) und sendet erst dann weitere Frames mit Datenbytes (z.B. Einheit des Sensors ...). Wenn ich nun nach jeden Anforderungs-Parser einen FC-Parser einfüge, dann funktioniert das mit der minütlichen Abfrage ohne Probleme. Da die allermeisten Sensordaten bereits im ersten Antwort-Frame enthalten sind, klappt auch die Daten-Auswertung. Inwieweit es auch machbar ist, die Daten nach dem FC-Frame noch auszuwerten, ist derzeit für mich nur optional. Sorry für die Verwirrung.
-
@dreman Super!
Vlt. trotzdem noch zur Erklärung:
Beim Start des Adapters wird für alle Parser mit aktiviertem automatisch Senden intern ein Intervall gesetzt, der dann die Aktion regelmäßig triggert. Wenn mehrere Parser den gleichen Intervall haben, dann ist da letztendlich die Reihenfolge der Parser entscheidend. Heißt es wird erst der Parser getriggert, der in der Konfiguration ganz oben steht, dann der zweite usw.
Falls hier Bedarf besteht könnte ich da ggf. noch einen Offset oder sowas hinzufügen, dass die Parser mit einem definierbaren zeitlichen Versatz getriggert werden und man damit dann selbst bestimmen kann, was in welcher Reihenfolge gesendet wird.Für deinen Anwendungsfall mit dem FC wäre es dann wahrscheinlich doch sinnvoll das in einem eigenen Script zu lösen.
Da kannst du dann die erste Anfrage starten, bei Antwort die Bestätigung senden, dann die zweite Anfrage Starten etc.
Ich würde in dem Fall dann wahrscheinlich erst der Reihe nach alle Daten abfragen und zum Schluss auswerten.Falls du dazu Hilfe brauchst mach am besten einen neuen Thread auf und erwähne mich im Text, damit ich das auch mitbekomme.
Alternativ allgemeine Anfragen zum Adapter bitte am besten in den Thread [Adapter] CAN-Bus - Beschreibung, FAQ, Diskussionen, etc.
-
@crycode Danke für die Erklärung. Ich geb dir Recht, mit einem eigenen Script wäre die bessere und zuverlässigere Methode, denn mit dem internen Zeitablauf ist nach meinem Verständnis nicht sichergestellt, dass die geforderte Abfolge 'ASK-Frame schreiben' >> 'Antwort-Frame einlesen' >> 'FC-Frame schreiben' sicher eingehalten wird. Aber dazu muss man erstmal in der Lage sein, ein solches Script zu erstellen und da hakt es bei mir leider aus. Aber jetzt versuch ich erstmal, eine Lösung für das UDS Multiframe-Problem zu finden. Vielen Dank nochmal für dein hilfreiches Feedback.
-
Ich habe diesen Thread quer-gelesen und glaube, dass Du mir (wahrscheinlich, hoffentlich, vielleicht ...) helfen kannst:
Nachdem der Adapter nun sicher läuft und ich Zeit gefunden habe, mich mit der HPSU 516 zu beschäftigen, habe ich einige Anfänger-Fragen:- Ist die Differenz zwischen "Energie Heizung fa06a7" und "Energie erzeugt fa0930" die erzeugte Wärmeenergie ?
- Welcher Wert ist bzgl. "Taktung" von Interesse?
- Was wären deine allgemeinen Empfehlung / Hinweise zur Optimierung ? Vielleicht Links zu anderen Foren ? Scripts ?
Danke für deine Antworten.
-
Wollte nur einmal kurz erwähnen, gehört zwar nicht in diesen thread aber wenn einer möchte kann ich eine Config Datei bereitstellen für einen ESP mit Caninterface um die Rolex abzufragen und zu steuern.
Das ganze wird auch in ESPHome bereitgestellt.
Bis jetzt werden die relevanten Sensoren abgefragt und der Betriebsmodus kann geändert werden.