Integration von MySensors in FHEM geplant?

Begonnen von fh555, 06 September 2014, 00:40:58

Vorheriges Thema - Nächstes Thema

ntruchsess

updates:

- Mapping optional direkt am mapReading-attribut überschreiben:
attr node mapReading_schalter 1 switch 0:on,1:off

- Funktion von attr requestAck überarbeitet. Erhöht jetzt das Intervall mit jedem weiteren Zustellversuch, ignoriert Acknowledges von CONFIG-messages.

- Default-values 0:off,1:on für V_TRIPPED

Gruß,
Norbert
while (!asleep()) {sheep++};

BobbyD

Hallo,

ich kämpfe seit paar Tagen mit dem MySensors-Modul und FHEM. Ich habe den serial Gateway an den Raspi angeschlossen und einen Temp-Sensor per Funk verbunden.
Im Logfile von FHEM sehe ich auch die übertragene Temperatur aber ich bekomme die nicht ins FHEM angezeigt.
Auszug Log:

2014.11.05 22:12:41 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 100-100-0 s=0,c=1,t=0,pt=7,l=5:21.4'

2014.11.05 22:12:41 5: MYSENSORS gateway MYS_GW: read: 100-100-0 s=0,c=1,t=0,pt=7,l=5:21.4
2014.11.05 22:12:41 5: MYSENSORS/RAW: 100;/0;1;0;0;21.4

2014.11.05 22:12:41 5: MYSENSORS Read: Rx: fr=100 ci=000 c=001(C_SET         ) st=000(V_TEMP          ) ack=0 '21.4'

2014.11.05 22:13:16 5: MYSENSORS/RAW: /0;0;3;0;9;read: 100-100-0 s=0,c=1,t=0,pt=7,l=
2014.11.05 22:13:16 5: MYSENSORS/RAW: 0;0;3;0;9;read: 100-100-0 s=0,c=1,t=0,pt=7,l=/5:21.5
100;0;1;0;0;21.5


Der Eintrag in die fhem.cfg sieht so aus:

define MYS_GW MYSENSORS /dev/ttyACM1@115200
attr MYS_GW stateFormat connection
attr MYS_GW verbose 5

define MYSENSOR_100 MYSENSORS_DEVICE 100
attr MYSENSOR_100 IODev MYS_GW
attr MYSENSOR_100 mode node
attr MYSENSOR_100 mapReading_temperature 0 temperature
attr MYSENSOR_100 version 1.4.1


Den Gateway habe ich eingefügt den Sensor "autocreate".

Nun möchte ich die Temp auf der Startseite angezeigt bekommen vlt. sogar in einem Plot.
Ich bekomms einfach nicht hin.
Ich benutze die aktuelle Version von MySensors 1.4 und auch die aktuelle Version vom MySensors.pm Modul.

Wo kann der Fehler liegen?

Vielen Denk schon im vorraus.
Viele Grüsse
Bobby

fh555

Hi Norbert,

danke, ihr habt bei der Umsetzung und Implentierung von MySensors wirklich eine super Arbeitet geleistet "Respekt"  8)

Gruß Jens

ntruchsess

Zitat von: BobbyD am 05 November 2014, 22:21:12
Nun möchte ich die Temp auf der Startseite angezeigt bekommen
->

attr MYSENSOR_100 stateFormat temperature

while (!asleep()) {sheep++};

BobbyD

#214
Guten Morgen,

vielen Dank schon mal.
Ich habe das so eingetragen in die fhem.cfg. Jetzt steht in der Übersicht bei  "MYSENSORS_DEVICE " und  "MYSENSOR_100" das Wort "temperature" drin aber noch nicht der Wert ?
Bei der Variable "STATE" sind jetzt auch die Fragezeichen sind weg und dafür steht auch das Wort "temperature" drin.

Leider habe ich noch nicht herausbekommen wie man hier im Forum Bilder einfügt.

Irgendwie komm ich nicht so recht weiter.
Bobby

fh168

#215
seit dem letzten Update von gestern funktioniert mein Feuchtigkeits / Temperatur humidity-Sensor nicht mehr. Gateway-Lan
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

fh555

#216
seit gestern funktioniert bei mir mein Temperatursensor auch nicht mehr  :(

Am Gateway kommt die Message rein, wird aber nicht verarbeitet.
Ich habe den Sensor heute nach dem heutigen Update noch einmal neu anlegen lassen aber das Problem besteht immernoch.

und das steht im log

2014.11.07 00:19:26 5: MYSENSORS/RAW: 0/;0;3;0;9;read: 60-60-0 s=0,c=1,t=0,pt=7,l=5:26.6
60;0;1;0;0;26.6

2014.11.07 00:19:26 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 60-60-0 s=0,c=1,t=0,pt=7,l=5:26.6'

2014.11.07 00:19:26 5: MYSENSORS gateway MYS_GW: read: 60-60-0 s=0,c=1,t=0,pt=7,l=5:26.6
2014.11.07 00:19:26 5: MYSENSORS Read: Rx: fr=060 ci=000 c=001(C_SET         ) st=000(V_TEMP          ) ack=0 '26.6'


Das was also fehlt, ist der Reading Eintrag. Vielleicht ist das auch der Grund, warum "BobbyD" bald verzweifelt :-)

Gruß Jens

P.S.: Ein "set" oder eine Auswertung per "Alias" scheint auch nicht zu funktionieren, aber erst einmal eins nach den anderen  ::)

ntruchsess

Ich hab mir noch keinen Temperatursensor gebaut und konnte nur mit einem BinarySwichSensor testen. Der Unterschied ist, dass der definierte values (0 und 1) hat, die auch in den Typemappings drinstehen, ein Temperatursensor hat die nicht. Stell doch bitte mal 'attr MYSENSOR_60 verbose 5' an, damit man die Logausgaben des Devices selbst sieht.
while (!asleep()) {sheep++};

ntruchsess

Weil der reconnect mit dem EthernetGateway alles andere als zuverlässig war habe ich mich dem mal angenommen und den code dahingehend überarbeitet: EthernetGateway.ino

Arbeitet jetzt so, dass beim Neu-verbinden die bisherige Verbindung sauber aufgeräumt wird. Funktioniert ab Arduino-IDE >= 1.0.6 bzw. 1.5.7. (Darunter fehlt die passende Implementierung des Operators '==' beim EthernetClient, ist ein Change, den ich vor ca. 6 Monaten mal zum Arduino-projekt contributed habe ;-)).

- Norbert


while (!asleep()) {sheep++};

fh555

Hi ntruchsess,

das log bringt mit verbose 5 folgendes zu Tage:

2014.11.07 18:10:32 4: MYSENSORS_DEVICE MYSENSOR_60: ignoring C_SET-message not type-mapping for type V_TEMP

Es hat ja schon ein ganze Zeit funktioniert, erst als du die Sache mit Tripped eingefuegt hast (glaube ich), ging es nicht mehr.
Evtl. hast du ja zu diesen Zeitpunkt noch mehr geaendert?

Gruss Jens

ntruchsess

danke für die Fehlermeldung, hilft mir weiter.

Ja klar habe ich da noch mehr geändert: man kann beim mapReading-attribut jetzt (optional) das value-mapping direkt überschreiben:

attr MYSENSORS_4711 mapReading_hugo 123 switch 0:paul 1:egon

für types ohne value-mapping (bei V_TEMP soll einfach nur der Wert unverändert durchgereicht werden) ist halt noch irgendwo der Wurm drin ;-)
while (!asleep()) {sheep++};

fh168

#221


ich habe immer noch seit dem Update Probleme mit dem Humidity sensor, da wird nix mehr erkannt.

CFGFN
DEF   
127
IODev

im log steht aber alles

2014.11.07 21:24:18 5: MYSENSORS Read: Rx: fr=127 ci=255 c=003(C_INTERNAL    ) st=011(I_SKETCH_NAME   ) ack=0 'Humidity

2014.11.07 21:24:18 5: MYSENSORS Read: Rx: fr=127 ci=255 c=003(C_INTERNAL    ) st=012(I_SKETCH_VERSION) ack=0 '1.0

2014.11.07 21:24:18 5: MYSENSORS Read: Rx: fr=127 ci=000 c=000(C_PRESENTATION) st=007(S_HUM           ) ack=0 '1.4

2014.11.07 21:24:18 5: MYSENSORS Read: Rx: fr=127 ci=001 c=000(C_PRESENTATION) st=006(S_TEMP          ) ack=0 '1.4

2014.11.07 21:24:19 5: MYSENSORS/RAW: /127;1;1;0;0;22.0
127;0;1;0;1;48.0

2014.11.07 21:24:19 5: MYSENSORS Read: Rx: fr=127 ci=001 c=001(C_SET         ) st=000(V_TEMP          ) ack=0 '22.0

2014.11.07 21:24:19 5: MYSENSORS Read: Rx: fr=127 ci=000 c=001(C_SET         ) st=001(V_HUM           ) ack=0 '48.0

2014.11.07 21:24:22 5: MYSENSORS outstanding ack, re-send: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=005(I_INCLUSION_MODE) ack=1 '1

2014.11.07 21:24:22 5: SW: 303b303b333b313b353b310a
2014.11.07 21:24:22 5: MYSENSORS/RAW: /0;0;3;0;5;1

2014.11.07 21:24:22 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=005(I_INCLUSION_MODE) ack=0 '1

2014.11.07 21:24:38 5: MYSENSORS outstanding ack, re-send: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=005(I_INCLUSION_MODE) ack=1 '1

2014.11.07 21:24:38 5: SW: 303b303b333b313b353b310a
2014.11.07 21:24:38 5: MYSENSORS/RAW: /0;0;3;0;5;1

2014.11.07 21:24:38 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=005(I_INCLUSION_MODE) ack=0 '1

2014.11.07 21:24:55 5: MYSENSORS outstanding ack, re-send: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=005(I_INCLUSION_MODE) ack=1 '1

2014.11.07 21:24:55 5: SW: 303b303b333b313b353b310a
2014.11.07 21:24:55 5: MYSENSORS/RAW: /0;0;3;0;5;1
gateway
I_SKETCH_NAME
Humidity
I_SKETCH_VERSION
1.0
NAME
MYSENSOR_127
NR
1480
STATE
???
TYPE
MYSENSORS_DEVICE
ack
0
protocol
1.4
radioId
127
repeater
0

Robin
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

ntruchsess

so, hab mir grade einen TemperaturSensor zusammengesteckt und den Bug gefixed. Trat tatsächlich nur bei Sensortypen ohne explizites Werte-mapping auf.

while (!asleep()) {sheep++};

fh555

Danke supi, wann checkst du es über die fhep-update funktion ein? Hatte gerade mal geschaut, es war aber noch nicht aufgeführt.


List of new / modified files since last update:
UPD FHEM/37_harmony.pm
UPD FHEM/59_PROPLANTA.pm
UPD FHEM/59_Twilight.pm
UPD FHEM/98_RandomTimer.pm
UPD FHEM/98_WOL.pm
UPD docs/commandref.html
UPD docs/commandref_DE.html


Grusß Jens

ntruchsess

Zitat von: fh555 am 07 November 2014, 23:28:41
wann checkst du es über die fhep-update funktion ein?

gar nicht, aus dem SVN kommt es mit etwas Verzögerung von selber im update an.
while (!asleep()) {sheep++};