eBus Schaltung in Betrieb nehmen

Begonnen von Reinhart, 23 Dezember 2015, 15:19:45

Vorheriges Thema - Nächstes Thema

majorshark

Was hast Du genau gemacht? Ich kann Dir nicht folgen.
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

Reinhart

#46
Zitat von: majorshark am 30 Dezember 2015, 22:45:15
Was hast Du genau gemacht? Ich kann Dir nicht folgen.

Hallo Frank!

er hat einfach die beiden csv von meinem Anhang genommen.
Da ich solche Fragen erwartet habe, war das genau der Grund warum ich die gepostet habe!


LG

FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

john30

author of ebusd

Reinhart

die _templates.csv habe ich nun korrigiert (pumpstate) und das Attachment neu hochgeladen, sonst haben die weiteren Downloader auch noch Probleme die das nutzen.

Aber John hat da schnell reagiert, Danke!

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

majorshark

ZitatHi, ich hoffe Du hast die Nacht nicht durchgemacht.

Nein habe ich nicht. Es ist aber alles so aufregend. ;) . Das zip-File habe ich mal wieder übersehen. Ich gelobe Besserung.  ::) Jetzt wackeln die Readings auch bei mir rein. Versuche mich aber erst einmal nur am 'read'. Klasse Arbeit von allen Beteiligten und Danke für eure Unterstützung.

Falls wir uns nicht noch einmal lesen  ;) wünsche ich allen einen guten Rutsch nach 2016 und ein erfolgreichen Start im neuen Jahr.
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

Reinhart

Im Prinzip ist es egal ob der Boradcast zu 100% in Klartext aufgelöst wird, denn die tatsächlichen Daten die ihr benötigt funktionieren unabhängig vom Broadcast und werden ja durch eure Kommandos (TimeTrigger etc.) gezielt abgefragt.

Der einzige Unterschied ist wie ich es einmal gehabt habe, da war die Senderichtung des Konverters defekt und es kamen nur mehr Broadcasts an. Die konnte ich dann nach Umstellung auf die Broadcastabfrage (Status01) trotzdem aus dem Buffer auslesen. Der Broadcast hat außerdem den Nachteil, das man jeden einzelnen Wert aus dem String filtern muss weil er ja aus mehren Datenpunkten besteht, aber das geht ja dank John jetzt auch äußerst komfortabel indem man den Index angeben kann. Der einzige Vorteil wäre, das man den eBus damit entlastet wenn nicht direkt abgefragt wird.

Ob ihr die Vorlauftemperatur zur Anzeige in Fhem aus dem Status01 oder direkt als FlowTemp holt ist Ansichtssache, geht so oder so.
Der Broadcast ist für unsere Zwecke ja eigentlich nur störend, weil durch das dauernde Gequatsche zwischen dem Slave und dem Master ja es nur zu unnötigen Bus-Errors kommen kann wenn wir noch unsynchronisiert dazwischenfunken. Das Ebus Protokoll ist leider (oder Gott sei Dank) kein TCP.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

ms_9

#51
@Reinhard:
gem. Deinem Beispiel lässt sich die Pumpen-Leistung nicht auslesen.
Zitat2015.12.31 16:16:24 1: EBUS: unexpected answer "ERR: element not found\n\n" received (wrote "r -f PumpPower\n", expected \d+\n\n)
2015.12.31 16:16:24 1: PERL WARNING: Argument "ERR: element not found\n\n" isn't numeric in sprintf at (eval 36) line 1.
2015.12.31 16:16:24 3: eval: { sprintf("%5.0f",$_) }

$ ebusctl r -f PumpPower
ERR: element not found



ZitatOb ihr die Vorlauftemperatur zur Anzeige in Fhem aus dem Status01 oder direkt als FlowTemp holt ist Ansichtssache, geht so oder so.

Das funktioniert aber nur, wenn tatsächlich auch Status01 (broadcast Nachricht) aufgelöst wird.
Mit "FlowTemp" gibt's ne Fehlermeldung im FHEM-Log, da hier mehr als ein Integer zurückkommt. (z.B. "23.60;ok").


Reinhart

#52
wenn die Pumpenleistung nicht funktioniert, dann musst in deine bai00.csv schauen wie die Variable dort definiert wurde und die Abfrage entsprechend anpassen.

r,,PumpPower,d.15 => Leistung Heizungspumpe,,,,7300,,,UCH,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
bei mir ist sie so festgelegt

Das Problem mit den csv ist eben, wenn alles funktioniert dann tauscht man die csv nicht als Spaß ständig aus weil dann ständig die Abfragen angepasst werden müssen.

Außerdem habe ich in meinem Post von Basis 1.xx die cvs eingesetzt. Wo der Wert bei der 2.xx zu finden weis ich nicht weil ich die nicht einsetze. Kann sein das hier 08.bai.xxxx vorgesehen ist, aber das kann uns mit Sicherheit John beantworten.

Aber du kannst ja einmal den Eintrag dazu hängen und dann schauen ob das funktioniert (ebusd --checkconfig durchführen und schauen ob alles passt und wenn ja dann ebusctl reload).
Wenn du auf Basis 2.xx arbeitest, dann einfach in den csv schauen wo und wie die Namen dort definiert wurden.

Ist aber nicht schlecht das solche einfachen Fehler jetzt kommen, dann lernt ihr den Umgang mit den CSV wie das zu handhaben ist. Wenn ihr den großen eBus-Thread anschaut, dann geht es bei 40% der Postings um die CSV.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

Nachtrag betreffend Flowtemp und 2 Datenpunkten, das macht man dann so:

ebusctl r -f flowtemp temp.0


LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

ms_9

@Reinhard:
ZitatFlowtemp und 2 Datenpunkten / ebusctl r -f flowtemp temp.0
Super, danke.

ZitatWo der Wert bei der 2.xx zu finden weis ich nicht weil ich die nicht einsetze.

Da ist noch keine Definition für "d.15".

Reinhart

#55
Zitat von: ms_9 am 31 Dezember 2015, 17:41:52
Da ist noch keine Definition für "d.15".

ok, dann kopiere die Zeile hinein und es sollte funktionieren.
Ich kann mich noch erinnern, da war mal was zu diesem Thema: http://forum.fhem.de/index.php/topic,29737.msg278682.html#msg278682

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

cs-online

Suuuuper, die D.15 fehlte mir auch noch  :D

Ich wünsche allen hier im Forum ein tolles neues Jahr !!!

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20, Shelly1,2 und 2.5,Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV mit Speicher, alles auf einem RPI und da geht noch mehr

Reinhart

#57
offensichtlich haben noch einige User Probleme mit meinen Beispielen, zB: die Abfrage von Vorlauf oder Rücklauf. In meinem Beispiel habe ich dazu Status01 verwendet und den Wert durch Angabe des Index gefiltert. Wer nun andere cvs Files hat wo der status01 nicht definiert ist, wird hier die ersten Probleme bekommen.

Deshalb hier eine andere Variante für den Vorlauf oder Rücklauf.

get Vorlauf cmd {"r -f flowtemp temp\n"}
#get Vorlauf cmd {"r -m 10 status01 temp1.0\n"}
get Vorlauf expect "\d+\.\d+\n\n"
get Vorlauf postproc { sprintf("%5.1f",$_) }

# Ruecklauftemperatur
get Ruecklauf cmd {"r -f sdtrt temp\n"}
#get Ruecklauf cmd {"r -m 10 status01 temp1.1\n"}
get Ruecklauf expect "\d+\.\d+\n\n"
get Ruecklauf postproc { sprintf("%5.1f",$_) }

hier wird nicht der Status verwendet, sondern die dafür vorgesehene Variable. Beachtet bitte auch, dass hier nicht -m 10 sondern mit -f abgefragt wird. -f steht für forced und wird nicht aus dem Buffer sondern direkt vom Bus über eine Abfrage geholt. Den Unterschied habe ich schon erklärt, -f funktioniert nur wenn auch die Senderichtung der Platine korrekt funktioniert, so soll es auch sein. Hier kann man auch im Wiki von John nachlesen.

Hier noch einmal demonstrativ wie der Filter funktioniert.
pi@raspberry2 ~ $ ebusctl r -f flowtemp temp
49.75

mit filter "temp" wird nur der Text der Temperatur ausgeschnitten.

pi@raspberry2 ~ $ ebusctl r -f flowtemp
49.88;ok

ohne Filter wird der gesamte String angezeigt.

und hier das Ganze mit dem Status01, denn der zeigt noch besser wie der Filter zu handhaben ist.
myc,,Status01,VL/RL/AussenTemp/VLWW/RLWW/Status,,,,01,,,temp1;temp1;temp2;temp1;temp1;pumpstate,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

so ist der Status bei mir in der broadcast.csv definiert, es werden 6 Variablen übergeben (temp1;temp1;temp2;temp1;temp1;pumpstate). Wie hier hier seht, gibt es 4x den Wert temp1. Um hier noch den richtigen zu bekommen, hat John den Index eingeführt.

pi@raspberry2 ~ $ ebusctl r -m 10 status01
45.0;40.0;1.062;39.0;42.0;off

temp1;temp1;temp2;temp1;temp1;pumpstate
hier das Ergebnis aus dem Status indem die 6 Messwerte in einem String übergeben werden.

pi@raspberry2 ~ $ ebusctl r -m 10 status01 temp1.0
45.0

hier der Filter auf temp1 und Index 0 = Vorlauf

pi@raspberry2 ~ $ ebusctl r -m 10 status01 temp1.3
42.0

hier der Filter auf temp1 und Index 3 (also der vierte Wert mit temp1)

pi@raspberry2 ~ $ ebusctl r -m 10 status01 temp2
1.062

und hier nur die Aussentemperatur herausgefiltert.

pi@raspberry2 ~ $ ebusctl r -m 10 status01 pumpstate
off

und hier der Pumpen Status, Index ist nicht notwendig. da John bei keiner Angabe automatisch 0 abfragt.

pi@raspberry2 ~ $ ebusctl r -m 10 status01 pumpstate.0
off

ergibt dasselbe wie ohne 0

Ich hoffe die Syntax und die Möglichkeit der Verwendung der Filter ist jetzt klar. Voraussetzung ist, das ihr die genaue Definition aus der csv kennt (vorher nachschauen) um die richtigen Variablendeklarationen (temp, temp1 etc.) zu kennen.

Bitte keine Anfragen zu technischen Problemen per PN, irgendwelche Fehler interessieren alle User und es findet so ein Lerneffekt statt.


Die Filter mit dem Index gibt es seit Februar 2015 und findet ihr hier.

LG
Reinhart

FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

#58
ich glaube du hast einen Fehler in einem csv eingebaut, mach mal

ebusd --checkconfig

in der Console ob alles passt!

hier:
[main error] error reading common config file /etc/ebusd/vaillant/broadcast.csv for scan bai00: ERR: duplicate entry
[main error] error reading config file /etc/ebusd/vaillant/08.bai.HW7401.csv for scan bai00: ERR: duplicate entry


scheint irgendwas doppelt vorhanden zu sein.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

john30

Zitat von: Reinhart am 01 Januar 2016, 19:49:02
ich glaube du hast einen Fehler in einem csv eingebaut, mach mal

ebusd --checkconfig

in der Console ob alles passt!

hier:
[main error] error reading common config file /etc/ebusd/vaillant/broadcast.csv for scan bai00: ERR: duplicate entry
[main error] error reading config file /etc/ebusd/vaillant/08.bai.HW7401.csv for scan bai00: ERR: duplicate entry


scheint irgendwas doppelt vorhanden zu sein.
Wichtig: Bei Verwendung von ebusd 2.0 (auch preview) zusammen mit ebusd-2.x.x CSVs muss auch zwingend "--scanconfig" übergeben werden, also config check dann so:
ebusd --checkconfig --scanconfig

Die doppelten kommen von den bedingten Messages, die je nach SW Version dann ausgewählt werden.
author of ebusd