Hallo Zusammen,
ich bräuchte mal eine kleine Starthilfe zu FHEM2FHEM.
Habe mich durch Forum, Wiki und Commandref gelesen, aber bin nicht wikrlich schlau geworden.
Ich habe seit langem FHEM auf einem Linux Server (Ubuntu) laufen. Dort ist eine FHZ für FHT und ein CUNO für FS20 angeschlossen.
Soweit, so gut.
Jetzt möchte ich mit einem RaspberryPi mit hilfe des AddOn Boards (wenn ich denn mal eines bekommen), einen RoomNode bauen.
Im Moment habe ich auf dem RasPi Wheezy und FHEM 5.5 laufen.
Angeschlossen ist im Moment nur ein CO2 USB Stick.
Jetzt möchte ich, dass der RasPi die Daten (alle Daten) an den FHEM "Master" weiterleitet.
Habe dazu folgenden Code im "Master" eingefügt:
define Room.Node FHEM2FHEM 192.168.x.x:7072 LOG:.*
Meldet sich auch als connected
Auf dem "Slave" (RaspberryPi) habe ich den CO2 Stick definiert:
define Airsensor CO20
Aber irgendwie kommt nichts beim "Master" an?
Muss ich denn auf dem "Master" noch einen Airsensor Dummy definieren?
Und wenn ja, wie verbinde ich den dann?
Muss ich für jedes Device vom "Slave" auf dem "Master" ein FHEM2FHEM Device einrichten?
Insgesamt werden es 5 Devices am "Slave" sein + Sysmon, die ich auf dem "Master" weiterleiten möchte.
Vielen Dank!!
Hab es jezt soweit hinbekommen, dass ich auf dem "Master" zumindest unter Events etwas sehe:
2014-02-26 20:07:55 readingsGroup Luftqualitaet Airsensor.voc:
486
2014-02-26 20:07:55 FHEM2FHEM Airsensor voc: 486
Allerdings bleibt meine readingsGroup für voc leer??
Log habe ich auch angelegt, aber der ist auch leer, genauso wie der Plot dadurch.
Was mach ich da falsch?
UPDATE: hab es jetzt soweit hinbekommen, dass ich den Log und den Plot habe, aber meine readingGroups bleibt leer??
Ich hab jetzt "sämtlich" regex Varianten probiert, die readingsGroup bleibt leer?
Sent from my iPhone using Tapatalk 2
Gruss
Markus
Poste doch mal was in deiner fhem.cfg steht. Ich bin was fhem2fhem angeht auch nicht besonders gut, aber vielleicht fällt mir was auf.
Auf dem RasPi "Slave" habe ich das Device definiert:
define Airsensor CO20
attr Airsensor group Klima
attr Airsensor room Wohnzimmer
Auf dem Server "Master" habe ich den Airsensor über FHEM2FHEM, sowei Log und Plot:
define Airsensor FHEM2FHEM 192.168.0.9:7072 LOG:Airsensor*
define FileLog_Airsensor FileLog /var/log/fhem/Airsensor-%Y.log Airsensor
attr FileLog_Airsensor alias Wohnzimmer
attr FileLog_Airsensor group Luftqualität
attr FileLog_Airsensor logtype Airsensor:airquality,text
attr FileLog_Airsensor room Logs
define SVG_2 SVG FileLog_Airsensor:Airsensor:CURRENT
attr SVG_2 alias Wohnzimmer
attr SVG_2 room Plot
Die readingsGroup ist auf dem Server "Master" wie folgt definiert:
define Luftqualitaet readingsGroup .*:voc
attr Luftqualitaet alias Luftqualität
attr Luftqualitaet mapping %ALIAS
attr Luftqualitaet notime 1
attr Luftqualitaet room Wohnzimmer
attr Luftqualitaet valueFormat {voc => "%.0f"}
attr Luftqualitaet valueStyle {($VALUE > 2000)?'style="color:red"':'style="color:green"'}
Habe als regex auch probiert:
- Airsensor:voc
- Airsensor.*:voc
- .*:Airsensor
FHEM2FHEM in Log mode gibt nur Events weiter. Weder die Geraete, noch Readings werden angelegt. readingsGroup braucht aber Geraete mit Readings.
FHEM2FHEM in RAW Mode legt Geraete+Readings an, das wiederum funktioniert nicht mit CO20, weil das Modul nicht das 2-Schichtenmodell (wie CUL+FS20) implementiert.
Workaround: auf dem Master per notify/setreading die Daten in einem dummy setzen.
Danke Rudi, aber dann verstehe ich nicht, warum ich die readingsGroup im Eventlog sehe:
2014-02-27 11:38:25 readingsGroup Luftqualitaet Airsensor.voc:
869
2014-02-27 11:38:25 FHEM2FHEM Airsensor voc: 869
Werde mir mal die Kombi notify/setreading anschauen, hab ich noch nichts damit gemacht.
Aus dem Bauch würde das ja so aussehen:
define Airsensor.Notify notify Airsenor setreading Airsenor.Dummy voc
??
Zitatdann verstehe ich nicht, warum ich die readingsGroup im Eventlog sehe:
justme1968 fragen. Beides (CO20 und readingsGroup) ist seine Baustelle
ZitatAus dem Bauch würde das ja so aussehen:
Dein Bauch muss noch dazulernen :), ich schlage folgendes vor:
define Airsensor.Notify notify Airsensor { $EVENT=~s/://;; fhem("setreading Airsensor.dummy $EVENT") }
die readingsGroup braucht readings in einem device um die html ansicht aufzubauen und dann events aus dem original device um sich selber per longpoll zu aktualisieren. dazu erzeugt sie selber 'künstliche' events.
was du im event monitor du siehst sind diese 'künstlichen' events die die readingGroup triggert um sich selber im frontend zu aktualisieren.
die könnten zwar im prinzip auch die readingsGroup auf er anderen seite der fhem2fhem verbindung aktualisieren, da gibt es aber nichts zu aktualisieren weil die readingsGroup ohne zugriff auf readings eines echten device leer ist.
das einfachste ist das co20 device auf der anderen seite in einen dummy zu spiegeln und die readingsGroup dort auf den dummy los zu lassen.
gruss
andre
Zitat von: rudolfkoenig am 27 Februar 2014, 12:09:48
define Airsensor.Notify notify Airsensor { $EVENT=~s/://;; fhem("setreading Airsensor.dummy $EVENT") }
@Rudi danke an dein Bauchgefühl das
$EVENT=~s/://;;
Das ist ganz wichtig sonst hat man überall Doppelpunkt hinter den Readings im Dummy.
Danke euch, mit Rudis "Bauch" hat es funnktioniert.