Aeon Labs Z-Wave Multisensor 6 (AEOEZW100) Probleme beim Anlernen

Begonnen von emilio_35, 25 August 2015, 20:36:18

Vorheriges Thema - Nächstes Thema

emilio_35

Zitat von: aga am 28 August 2015, 21:24:00


Woanders habe ich gefunden, dass der sensorType für den UV-Sensor 27 ist. Also 1b.
Dann bin ich in der 10_Zwave.pm fündig geworden. Bei ZWave_multilevelParse die 1b ergänzt und ich habe ein Reading ultraviolet.
Somit funktioniert bei mir jetzt alles.



Kannst du mal genau Posten was du da eingefüt hast und wo genau ?
Fhem Raspberry Pi, SPS, S7 315PN,VU+

aga

in Deiner FHEM Installation im Ordner FHEM (bei mir ist das unter /opt/fhem/FHEM) gibt es eine Datei 10_Zwave.pm
Diese datei machst Du mit einem Editor auf und suchst nach "ZWave_multilevelParse".

dort findest Du diese Auflistung:
   '01' => { n => 'temperature',          st => ['C', 'F'] },
   '02' => { n => 'generalPurpose',       st => ['%', ''] },
   '03' => { n => 'luminance',            st => ['%', 'Lux'] },
   '04' => { n => 'power',                st => ['W', 'Btu/h'] },
   '05' => { n => 'humidity',             st => ['%'] },
   '06' => { n => 'velocity',             st => ['m/s', 'mph'] },
   '07' => { n => 'direction',            st => [] },
   '08' => { n => 'atmosphericPressure',  st => ['kPa', 'inchHg'] },
   '09' => { n => 'barometricPressure',   st => ['kPa', 'inchHg'] },
   '0a' => { n => 'solarRadiation',       st => ['W/m2'] },
   '0b' => { n => 'dewpoint',             st => ['C', 'F'] },
   '0c' => { n => 'rain',                 st => ['mm/h', 'in/h'] },
   '0d' => { n => 'tideLevel',            st => ['m', 'feet'] },
   '0e' => { n => 'weight',               st => ['kg', 'pound'] },
   '0f' => { n => 'voltage',              st => ['V', 'mV'] },
   '10' => { n => 'current',              st => ['A', 'mA'] },
   '11' => { n => 'CO2-level',            st => ['ppm']},
   '12' => { n => 'airFlow',              st => ['m3/h', 'cfm'] },
   '13' => { n => 'tankCapacity',         st => ['l', 'cbm', 'usgal'] },
   '14' => { n => 'distance',             st => ['m', 'cm', 'feet'] },
   '15' => { n => 'anglePosition',        st => ['%', 'relN', 'relS'] },
   '1b' => { n => 'ultraviolet',          st => [] },


Die letzte Zeile habe ich hinzugefügt.

krikan

Anliegender Patch implementiert neben ultraviolet / UV die mir derzeit bekannten noch fehlenden Messwert / Einheit - Kombinationen der CC Sensor_Multilevel. Zudem habe ich aufgrund des Wunsches von flurin von hier http://forum.fhem.de/index.php/topic,40469.msg327083.html#msg327083 für das Reading "position" den Inhalt von Mehrzahl auf Einzahl umgestellt.

@Rudi:
Die Einheiten von CC Sensor_Multilevel enthalten Leerzeichen. Mir ist nicht bekannt, ob das Ok ist. Zudem habe ich leichte Probleme mit 80er Zeilenbreite. Bitte kontrolliere, ob meine Umbrüche so in Ordnung sind. Danke.

aga

Eines würde ich gerne noch wissen. Ich betreibe den Sensor nur über das USB-Kabel, also quasi Netzbetrieb.
Ist der Sonsor jetzt routingfähig?
Zumindest in der Anleitung steht geschrieben:
 Basic Device Class: BASIC_TYPE_ROUTING_SLAVE
 Generic Device class: GENERIC_TYPE_ SENSOR_MULTILEVEL
 Specific Device Class: SPECIFIC_TYPE_ ROUTING_MULTILEVEL_SENSOR

Das lässt mich zumindest hoffen. Aber wie kann man das verifizieren?

/Andreas

rudolfkoenig

@aga: ich musste bei einem aehnlichen Umbau eines Sensors eine Konfigurationsvariable setzen.
@krikan: habe dein Patch eingecheckt.
Leerzeichen in den Einheiten sind mAn kein Problem, da man man auf die Zahlenwerte gezielt zugreifen kann. Es gab laengere "Einheitendiskussionen" fuer FHEM, die einen erheblichen Umbau verlangen, und deren Nutzen sich mir bisher nicht erschlossen hat.

krikan

Zitat von: aga am 29 August 2015, 11:07:07
Eines würde ich gerne noch wissen. Ich betreibe den Sensor nur über das USB-Kabel, also quasi Netzbetrieb.
Ist der Sonsor jetzt routingfähig?
Zumindest in der Anleitung steht geschrieben:
 Basic Device Class: BASIC_TYPE_ROUTING_SLAVE
 Generic Device class: GENERIC_TYPE_ SENSOR_MULTILEVEL
 Specific Device Class: SPECIFIC_TYPE_ ROUTING_MULTILEVEL_SENSOR

Das lässt mich zumindest hoffen. Aber wie kann man das verifizieren?

/Andreas
Routing Slaves sind fast alle aktuellen (auch batteriebetriebenen) Zwave-Geräte. Das besagt nur, dass die Geräte Routen zu anderen Geräten speichern und nutzen können.
Das ist leider nicht die von Dir gewünschten Fähigkeit des Weiterleitens von Nachrichten von anderen Geräten. Geräte mit der Fähigkeit des Weiterleitens werden als Router bezeichnet.
Der Begriff Routing Slaves ist nicht ideal gewählt, da er dass von Dir genannte impliziert, was aber eben nicht stimmt.

Mit ist leider keine ZWave-Funktion bekannt, wie man herausfinden kann, ob ein Gerät als Router arbeitet. Man kann Hersteller fragen oder entsprechenden Testaufbau machen. Habe erst mal Zweifel, dass der USB-Anschluss das Gerät zum von Dir gewünschten Router macht.

krikan

Zitat von: rudolfkoenig am 29 August 2015, 11:36:47
ich musste bei einem aehnlichen Umbau eines Sensors eine Konfigurationsvariable setzen.
Hast Du dazu noch mehr Infos?  Meine stammen aus dem zwaveeurope-Wiki und aus Paetz.
Kennst Du eine Abfragemöglichkeit auf Router?

rudolfkoenig

Ich kann es nicht generell pruefen, ich verlasse mich auf die Doku. Es ist ein EZMotion/ExpressControls 3in1, der mit configStayAwake 1 angeblich auch routing uebernimmt.

Zitat aus http://www.expresscontrols.com/pdf/EZMotion+OwnerManual.pdf
ZitatSetting Stay Awake to a non-zero value will cause the Z-Wave Listening Bit to be set. EZMotion+ will become a routing node in the Z-Wave Mesh-Network when the Listening Bit is set.

aga

Danke für die schnellen Antworten.
Vielleicht schreib ich den Hersteller mal an, ob der Sensor routing kann, wenn er über USB gespeist wird.

Noch eine Ergänzung zum UV-Sensor.
Der liefert Werte nach dem UV-Index der WHO, der Index geht von 1-11.
Wenn das am Ende dieser Zeile die Einheit ist, vielleicht kann man besser UVI oder UV-I nehmen??
'1b' => { n => 'ultraviolet',          st => [UV] },

Wenn wir schon dabei sind, weiter oben hatte emilio20 die TemperatureCalibration über set configByte in der Befehlszeile gemacht.
Ich habe mit dem set configTemperatureCalibration (da fehlt übrigens das p) in der Detailansicht gespielt. Da funktioniert ein Wert wie z. B. 220 nicht.
Wenn ich da 60160 als Wert eingebe, bekomme ich mit einem get 235 zurück, also -20 bzw. -2.0°C.

Ich hatte irgendwo gelesen, dass der Wert 2 Byte hat, deswegen habe ich mit den Bit-Wertigkeiten aus dem high byte gerechnet und es hat funktioniert.
Vielleicht lässt sich auch da was anpassen, damit man mit set die Werte eingeben kann die ein get liefert.

Und noch was.
Der Motion Sensor meldet "alarm: HomeSecurity: Motion Detection, Unknown Location, arg 0000"
Die Unknown Location suggeriert, dass der Sensor auch eine bekannte Location mitteilen könnte, wenn er davon wüsste.
Liege ich da falsch mit meiner Vermutung? Und wo/was müsste man konfigurieren? Die Anleitung schweigt sich dazu aus...
Bei mehreren Sensoren wäre das auch nicht nur Kosmetik.

Gruß
Andreas

rudolfkoenig

ZitatDie Unknown Location suggeriert, dass der Sensor auch eine bekannte Location mitteilen könnte, wenn er davon wüsste.

Es gibt ein "set location" falls NODE_NAMING unterstuetzt wird.

krikan

Zitat von: aga am 29 August 2015, 14:08:49
Wenn das am Ende dieser Zeile die Einheit ist, vielleicht kann man besser UVI oder UV-I nehmen??
Habe die Werte von http://220.135.186.178/zwave/example/SENSOR%20MULTILEVEL/index.html. Die haben mit Sicherheit Zugriff auf die zwapi und das von dort übernommen. Letztlich ist mir eine Änderung gleich und nicht meine Entscheidung.

Die Config-XML kommt von openzwave und enthält den von Dir festgestellten Tippfehler:
ZitatconfigTemperatureCalibration (da fehlt übrigens das p)
Von meiner Seite aus möchte ich das nicht in unserer verteilten Version ändern. Macht mir nur unnötige Arbeit bei neuen Übernahmen.

Außerdem hat der Entwickler von openzwave angekündigt, das die Config-XMLs in Kürze geändert (Versionierung) werden. Daher habe ich auch mein Zweifel, ob man dies angehen soll:
ZitatIch hatte irgendwo gelesen, dass der Wert 2 Byte hat, deswegen habe ich mit den Bit-Wertigkeiten aus dem high byte gerechnet und es hat funktioniert.
Vielleicht lässt sich auch da was anpassen, damit man mit set die Werte eingeben kann die ein get liefert.

ZitatIch kann es nicht generell pruefen, ich verlasse mich auf die Doku
Zu einfach.  ;) Steht bei dem hier behandelten Sensor eben nicht drin.

aga

Alles klar krikan, da bin ich auf Deiner Seite, unnötige Arbeit braucht keiner.
Wegen dem Schreibfehler oder der Einheit mach ich mir nicht ins Hemd, war nur eine Anmerkung.
Noch kenne ich die Zusammenhänge nicht so gut, aber wie Du schreibst sollte man erstmal nichts dran ändern.

@Rudolf, das mit dem NODE_NAMING wird leider nicht unterstützt, aber danke für den Hinweis.

/Andreas

krikan

@aga: Bitte solche Anmerkungen immer machen, nur so kommen wir weiter. Ich schreibe auch nur meine Meinung und die ist nicht immer richtig  :).

Zum Hintergrund: rudolfkoenig entwickelt u.a. das ZWave-Modul und ich kümmere mich nur um die ZWave-Config-XMLs. Details zu den Config-XMLs stehen im Wiki.

aga

Ich hab Antwort von Aeon Labs bzgl. der Frage, ob der Multisensor routen kann.
ZitatYes, the Multisensor 6 does act as a repeater when included as a USB device. Let me know if you have any further questions.

Cheers,
Chris Cheng
Field Application Engineer
Aeon Labs

krikan

Zitat von: aga am 31 August 2015, 11:53:36
Ich hab Antwort von Aeon Labs bzgl. der Frage, ob der Multisensor routen kann.
"Yes, the Multisensor 6 does act as a repeater when included as a USB device. Let me know if you have any further questions."
Danke Andreas für die wichtige Info! Jetzt müssen wir nur noch rausfinden, wie man das selbst am Gerät feststellen kann. Muss meinen AEOEZW100 mal inkludieren und testen. Gruß, Christian