Integration von MySensors in FHEM geplant?

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

Vorheriges Thema - Nächstes Thema

Erdschluss

Mein Gateway erkennt mittlerweile die Sensoren, aber wie bekomme ich jetzt nen Wert raus?! (Im anderen Thread wollte es mir keiner verraten -.-)

ZitatDEF   
100
IODev
gateway
NAME
MYSENSOR_100
NR
38
STATE
humidity
TYPE
MYSENSORS_DEVICE
ack
0
protocol
1.4.2
radioId
100
repeater
0
Was schreibe ich bei stateFormat rein?
"humidity" bringt schon mal nichts...

Eckbert0815

Hi, solange du keine Readings von deinem Sensor bekommst, kannst du auch kein Stateformat angeben!
Wenn du Radings bekommst, dann trägst du das als Stateformat ein.
Beim Anlernen der Sensoren werden die Readings automatisch erstellt sofern der Sensor richtig funktioniert und richtig programiert ist. Im Sketch werden diese als MyMessage definiert. Schau als erstes mal in der Arduino Software, was die serielle Ausgabe sagt.

hexenmeister

Auszug aus meiner Konfiguration eines MySensors-Gerätes als Beispiel:

define EG_GA_MS01 MYSENSORS_DEVICE 117
attr EG_GA_MS01 IODev mysensors
attr EG_GA_MS01 alias MSKombisensor (Garage)
attr EG_GA_MS01 icon motion_detector
attr EG_GA_MS01 mapReading_brightness 1 brightness
attr EG_GA_MS01 mapReading_humidity 4 humidity
attr EG_GA_MS01 mapReading_motion 2 tripped
attr EG_GA_MS01 mapReading_temperature 3 temperature
attr EG_GA_MS01 mode repeater
attr EG_GA_MS01 room Garage
attr EG_GA_MS01 stateFormat T: temperature H: humidity L: brightness
attr EG_GA_MS01 version 1.4.1

Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Erdschluss

Ok, Danke soweit schon mal, das da haut der Sensor raus wenn das Gateway nicht im inclusion mode war und ihn noch nicht kennt:

sensor started, id 100<\n>
send: 100-100-0-0 s=255,c=0,t=17,pt=0,l=5,st=ok:1.4.2<\n>
send: 100-100-0-0 s=255,c=3,t=6,pt=1,l=1,st=ok:0<\n>
send: 100-100-0-0 s=255,c=3,t=11,pt=0,l=8,st=ok:Humidity<\n>
send: 100-100-0-0 s=255,c=3,t=12,pt=0,l=3,st=ok:1.0<\n>
send: 100-100-0-0 s=0,c=0,t=7,pt=0,l=0,st=ok:<\n>
send: 100-100-0-0 s=1,c=0,t=6,pt=0,l=0,st=ok:<\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.1<\n>
T: 22.10<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.4<\n>
H: 55.40<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.2<\n>
T: 22.20<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.5<\n>
H: 55.50<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.1<\n>
T: 22.10<\r><\n>


Aber wehe ich mache die beiden miteinander bekannt, dann habe ich nach jedem Reset das da:

sensor started, id 100<\n>
send: 100-100-0-0 s=255,c=0,t=17,pt=0,l=5,st=ok:1.4.2<\n>
send: 100-100-0-0 s=255,c=3,t=6,pt=1,l=1,st=ok:0<\n>
send: 100-100-0-0 s=255,c=3,t=11,pt=0,l=8,st=ok:Humidity<\n>
send: 100-100-0-0 s=255,c=3,t=12,pt=0,l=3,st=ok:1.0<\n>
send: 100-100-0-0 s=0,c=0,t=7,pt=0,l=0,st=ok:<\n>
send: 100-100-0-0 s=1,c=0,t=6,pt=0,l=0,st=ok:<\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:2.0<\n>
H: 2.00<\r><\n>

hexenmeister

Tut mir leid, keine Ahnung warum. Aber wozu brauchst Du Inclusion-Modus noch? Dieser wird je nur an FHEM weitergereicht und eine ID hat Dein Sensor ja schon. Lege in FHEM die Konfiguration an und gut ist.
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Erdschluss

Ich hatte das Device bei FHEM gelöscht und noch einmal neu erstellen lassen, in der Hoffnung dass da etwas schief gelaufen sei.
Hat aber offensichtlich nix gebracht, jetzt verrennt er sich noch mehr:
define MYSENSOR_100 MYSENSORS_DEVICE 100
attr MYSENSOR_100 IODev gateway
attr MYSENSOR_100 mapReading_brightness255 255 brightness
attr MYSENSOR_100 mapReading_id 0 id
attr MYSENSOR_100 mapReading_level255 255 level
attr MYSENSOR_100 mapReading_percentage1 1 percentage
attr MYSENSOR_100 mapReading_temperature 0 temperature
attr MYSENSOR_100 mode node
attr MYSENSOR_100 setReading_down1 1
attr MYSENSOR_100 setReading_percentage1 slider,0,1,100
attr MYSENSOR_100 setReading_stop1 1
attr MYSENSOR_100 setReading_up1 1
attr MYSENSOR_100 version 1.4.2

Das passt doch vorne und hinten nicht.
Läuft das alles denn nur bei mir derart Amok?  :-[

Am Code habe ich nichts verändert.
http://www.mysensors.org/build/humidity

hexenmeister

Ich verstehe immer weniger...
Wenn Du den Sketch aus Deinem Link verwendest, dann passt diese Konfig schon mal gar nicht.
#define CHILD_ID_HUM 0
#define CHILD_ID_TEMP 1

Daher muss nur humidity auf 0 und temperature auf  gemappt werden. Was tun hier brightness, percentage, slider und Co.?
Was ist denn hardwareseitig angeschlossen?
Außerdem würde ich auf Version 1.5 gehen.
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Erdschluss

Ja, seltsam, ne?
Das ist, was automatisch erstellt wurde.
Der Sensor behauptet das hier zu senden:
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:23.0<\n>T: 23.00<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.8<\n>H: 55.80<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.9<\n>T: 22.90<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.9<\n>H: 55.90<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:23.0<\n>T: 23.00<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.9<\n>T: 22.90<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:23.0<\n>T: 23.00<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.9<\n>T: 22.90<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:23.0<\n>T: 23.00<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.8<\n>H: 55.80<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.9<\n>H: 55.90<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:22.9<\n>T: 22.90<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:23.0<\n>T: 23.00<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:55.8<\n>H: 55.80<\r><\n>
send: 100-100-0-0 s=1,c=1,t=0,pt=7,l=5,st=ok:23.1<\n>T: 23.10<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:54.8<\n>H: 54.80<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:54.4<\n>H: 54.40<\r><\n>
send: 100-100-0-0 s=0,c=1,t=1,pt=7,l=5,st=ok:53.9<\n>H: 53.90<\r><\n>


Im Logfile steht das da:
Zitat2015.10.04 01:18:14 5: MYSENSORS/RAW: /100;0;1;0;1;55.9

2015.10.04 01:18:14 5: MYSENSORS Read: Rx: fr=100 ci=000 c=001(C_SET         ) st=001(V_HUM           ) ack=0 '55.9'

2015.10.04 01:18:21 5: MYSENSORS/RAW: /100;1;1;0;0;23.0

2015.10.04 01:18:21 5: MYSENSORS Read: Rx: fr=100 ci=001 c=001(C_SET         ) st=000(V_TEMP          ) ack=0 '23.0'

2015.10.04 01:18:28 5: MYSENSORS/RAW: /100;1;1;0;0;22.9

2015.10.04 01:18:28 5: MYSENSORS Read: Rx: fr=100 ci=001 c=001(C_SET         ) st=000(V_TEMP          ) ack=0 '22.9'

2015.10.04 01:18:36 5: MYSENSORS/RAW: /100;1;1;0;0;23.0

Die 1.4.2 stand nur noch so im Sketch drin, die Library ist die 1.5, FHEM habe ich auch vor wenigen Stunden erst aktualisiert.

hexenmeister

sieht doch eigentlich gut aus. was passiert, wenn du mapping in konfig korrekt hast, also nur temp/hum?
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Erdschluss

Dann murkst er sobald der Sensor sich gemeldet hat wieder die Mappings rein die von sonstwoher kommen  :o

hexenmeister

Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy


hexenmeister

und diese mappings wurden automatisch ergänzt? sehr merkwürdig. Doch Probleme mit dem neuen Modul?
Habe jetzt Update ausgeführt, hab also genau die gleiche (neuste) Version. Funktioniert wie vorher. Ich lkann mir kein Reim daras machen.
Evtl. ein Problem mit Autocreate. Mach mal aus, falls noch an und setze wieder Mappings aus meinem Device-Konfig.

Mein Konfig für Gateway:
define mysensors MYSENSORS /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_1003-if00-port0@115200
attr mysensors alias MySensors Gateway
attr mysensors first-sensorid 120
attr mysensors group IO
attr mysensors icon cul_usb
attr mysensors room IO_Devices
attr mysensors stateFormat connection
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Erdschluss

Ich habe die Ethernetvariante (W5100), die serielle wollte bei mir gar nicht funktionieren.
Ich glaube fast dass das Gateway nicht ganz tut was es soll, werde mir doch das serielle noch einmal aufbauen.

hexenmeister

Zitat von: Erdschluss am 04 Oktober 2015, 20:54:02
Ich habe die Ethernetvariante (W5100), die serielle wollte bei mir gar nicht funktionieren.
Ich glaube fast dass das Gateway nicht ganz tut was es soll, werde mir doch das serielle noch einmal aufbauen.

habe beide in Benutzung. Beide problemlos.
define mysensors_lan MYSENSORS 192.168.0.25:5003
attr mysensors_lan alias MySensors Gateway LAN
attr mysensors_lan first-sensorid 10
attr mysensors_lan group IO
attr mysensors_lan icon cul_usb
attr mysensors_lan room IO_Devices
attr mysensors_lan stateFormat connection


Hm. Bis auf kaputes Autocreate in neuem Modul fällt mir erstmal nichts ein.
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy