NEWS
[Adapter] - Mihome
-
Ich habe die Xiaomi BWM bisher nur im Haus in Verwendung. Dort ist es gut wenn sie ihren maximalen Bereich auch ausnutzen.
Der liegt bei mir z.T. über 6 m. Einstellbar per Software ist der BWM nicht. Was möglich sein dürfte ist ein Abkleben des Sichtfensters so dass der Öffnungswinkel kleiner wird. Im Zentrum wird dann aber die Entfernung ggf. immer noch die maximale sein.
Du müsstest den Sensor also z.B. in z.B. 2m Höhe montieren und das Sensorfenster nach unten drehen.
-
Bzgl. Rauchmelder und Auslösen beim Gateway ohne Internetzugang kann ich weiterhelfen
Das Gateway bekommt bei mir nur Internetzugang, wenn ich ein neues Gerät anlernen möchte, ansonsten ist dieses gesperrt.
Ich habe den Rauchmelder auslösen lassen und das Gateway hat prompt mit reagiert. Akustischer und Optischer Alarm. Blinkt dann wie wild rot auf.
Von daher ist kein Internetzugang notwendig zum auslösen des Alarms am Gateway. Ich habe allerdings in der App auch keine Einstellung gefunden, die Sensibilität des Rauchmelders zu ändern. Vielleicht habe ich die Stelle aber auch übersehen. `
Ist für mich leider nicht wirklich eine Hilfe. Die Sachen die du beschrieben hast sind alle schon bekannt und wird auch bei mir genau so gehandhabt.
In diesem Fall geht es tatsächlich NUR um die Frage, ob Sachen wie "Rauchmelder Sensibilitäts-Einstellungen auch Offline funktionieren da diese nur über die App eingestellt werden kann und z.b. auch keinen State im Iobroker abbildet. Im Gegensatz zum Alarm selbst.
-
sorry doppelt gelöscht
-
Hallo zusammen,
habe jetzt eine Stunde rumgespielt und zu dem Entschluss gekommen, dass fast nichts so funktioniert wie ich es mir vorstelle.
Selbst mit Aktiver Verbindung zum Internet klappt relativ wenig.
Der Motion Sensor, der eigentlich das Nachtlicht auslösen sollte funktioniert zwar perfekt, aber das Licht schaltet sich trotz Einstellung unter "Automatisierung" vom Hub, nicht an.
Vielleicht ist es auch wieder mal eine schlechte Übersetzung, aber selbst wenn man unter "Induktionszeit" zb von 16:50 bis 16:55 einstellt, bleibt das Nachtlicht aus. Per Default war von 0 Uhr bis 0 uhr eingestellt. Vermutlich verstehe ich die Übersetzung falsch und die Funktion soll bedeuten in welcher Zeit er auf Lichtveränderungen reagiert (dunkel = Nachtlicht an). Aber selbst in einem dunklen Raum bleibt das Licht aus.
Scheinbar ist es wohl wirklich besser ein kleines Script zu machen was auf den State des Motion Sensors reagiert.
Soweit, so enttäuschend.
Zum Rauchmelder. Ob die Einstellungen offline erhalten bleiben, kann ich nicht sagen. Selbst auf niedrigster Empfindlichkeitsstufe reagiert das Ding meiner subjektiven Meinung nach absolut unverändert schnell beim Dampf.
Im Moment sehe ich keine sinnvolle Begründung warum dieses Ding ein Internetverbindung haben sollte.
Nachtrag1:
So Problem gelöst ohne Internetanbindung des Hub:
var MOTION1 = 'mihome.0.devices.sensor_motion_aq2_158d0002e940d5.state'; var AKTOR1 = 'scene.Nachtlicht_Xioami-Hub'; on({id: MOTION1, change: "ne", val: true}, function (obj) { setState(AKTOR1, true); });
Manchmal kann es so einfach sein….
Nachtrag2:
Induktionszeit bedeutet, in welchem Zeitrahmen das Gerät auf den Motion Sensor überhaupt reagiert. Dieses konnte ich anhand der Option "Verzögerungszeit für das Ausschalten des Lichts, nachdem die Person das Gebäude verlassen hat" feststellen. Ist es innerhalb der Zeit wird das Nachtlicht nach x Minuten ausgeschaltet.
Das passiert auch, wenn der Sensor über Iobroker getriggert wurde.
Liegt es außerhalb der Zeit, nachdem Iobroker getriggert hat, bleibt es einfach an.
Jetzt gilt es nur noch herauszufinden warum der Sensor nicht direkt das Nachtlicht anschaltet mit der in der MiHome-App hinterlegten Automatisierung.
Nachtrag3:
So, nun zu 99% sicher das alles an individuellen Einstellungen in der Cloud gespeichert sind und beim Start des Hub abgerufen wird. Bedient sich dann der Standardwerte, wenn er offline ist. Somit ist alles was in der App als Automatisierung hinterlegt ist nicht mehr gescheit nutzbar. Schade.
Nachtrag4:
Es ist leider noch viel schlimmer. Offline verliert das Ding jedes Zeitgefühl und agiert willkürlich. Mal geht das Nachtlicht nach 5 Minuten aus, mal nach einer Stunde. Für meine Umgebung zum Glück total egal. Nachtlichter sind in der regel Nachts eh immer an. Da es auf den Bewegungssensor reagiert, spielt es keine Rolle. Im Gegensatz zum HUB, scheint der Motion Sensor auch keine Lux Werte mehr zu melden wenn der Hub Offline ist.
-
Mal so eine Frage nebenher.
Wie hast du im Unifi dem Gateway das Internet verboten? Also welche Einstellungen hast du vorgenommen?
-
Habe mir heute nen Satz Ikea tradfri Lampen gekauft und mit dem Xiaomi Gateway verbunden. Leider erscheinen sie bei iobroker nicht unter Objekten. Ist die Einbindung noch geplant ?
-
Mal so eine Frage nebenher.
Wie hast du im Unifi dem Gateway das Internet verboten? Also welche Einstellungen hast du vorgenommen? `
Im Unifi überhaupt nicht. Ich habe noch einen DHCP Server laufen. Dort habe ich einfach für den mihome eine Reservierung auf die MAC-Adresse gemacht und als DNS Server und Gateway jeweils 0.0.0.0 zugewiesen.
-
Habe mir heute nen Satz Ikea tradfri Lampen gekauft und mit dem Xiaomi Gateway verbunden. Leider erscheinen sie bei iobroker nicht unter Objekten. Ist die Einbindung noch geplant ? `
Wenn ich mir die Produktübersicht des Adapters anschaue, würde ich einfach mal auf nein tippen. Also entweder das Tradfri Gateway , ein Hue Gateway oder die USB-Stick Zigbee-Lösung für die Bastler nehmen.
-
Die IKEA Unterstützung von Xiaomi ist ja recht neu. Da ist es klar dass im Adapter bisher nur Xiaomi Produkte unterstützt wurden.
Die Frage ist eher ob ein Entwickler Zeit hätte/fände den Adapter weiterzuentwickeln.
Und zuerst müsste mal jemand im Log (debug level) prüfen ob das Gateway überhaupt Werte der IKEA Teile raus reicht.
-
Mal so eine Frage nebenher.
Wie hast du im Unifi dem Gateway das Internet verboten? Also welche Einstellungen hast du vorgenommen? `
Im Unifi überhaupt nicht. Ich habe noch einen DHCP Server laufen. Dort habe ich einfach für den mihome eine Reservierung auf die MAC-Adresse gemacht und als DNS Server und Gateway jeweils 0.0.0.0 zugewiesen. `
Danke!
-
Weiß jemand ob möglich ist sowas wie einen "last seen/is reachable" state zu erzeugen ?
Während man das bei den humidity-sensoren noch gut an den geänderten Werten erkennen kann, ist das beim Rauchmelder und Gasmelder nicht mehr so einfach. Im Iobroker ist defacto überhaupt nicht zu erkennen das mein Rauchmelder seit 3 Wochen ohne Batterie hier rumliegt.
Nur um sicher zu gehen, dass das Gerät auch das Gateway erreichen kann, wäre so ein state praktisch.
-
hab keinen Rauchmelder von xiaomi, aber der Rauchmelder liefert doch bestimmt auch seinen Batteriestatus in %
Da kannst du doch mit script auf dem Datenpunt auf "last update" prüfen.
Blockly: das Puzzle-Ding mit "[Wert] von [ObjectID]" nehmen, auf Wert klicken und [letzte Änderung] auswählen.
JS: getState("mihome.0.devices.magnet_0815abcd0000000.percent").lc;
wenn länger als 1 Tag her Nachricht wohin auch immer…
edit: oder der Wert<15 Warnhinweis" batterie kaufen; wert=0 Fehlermeldung :idea:
-
Nur um sicher zu gehen, dass das Gerät auch das Gateway erreichen kann, wäre so ein state praktisch. `
Eine „unreach“ Meldung oder ähnliches ist bei Xiaomi anscheinend nicht üblich. Auch in der App habe ich bisher keine Meldefunktion bei Nichterreichbarkeit gefunden.Die Rauchmelder aktualisieren mind. 1x pro Stunde ihren Batteriestatus, was man wiederum gut als „alive“ Meldung weiterverarbeiten kann. Meldet sich das Gerät nicht innerhalb 1 Stunde ist etwas faul… Ich überprüfe jedes Gerät einzeln per Blockly:
-
@J Riemann
Das ist tatsächlich eine nützliche Idee. Nur mit Blockly kann ich nichts anfangen. Hatte mich entschieden Javascript zu erlernen (so gut es geht). Mal schauen wie es sich damit bewerkstelligen lässt.
Der Timestamp-Wert scheint aber relevanter als der "letzte Änderung"-Wert.
Beispiel: Der Gas-Melder wird per Netzteil betrieben und steht somit immer auf 100%. Daher hat sich der "letzte Änderung"-Wert seit der Anschaffung nicht geändert. Der Timestamp hat zumindest einen Zugriff verzeichnet.
Gleiche Spiel beim Rauchmelder. Lag ein paar Tage in der Ecke, gestern mal wieder angeschlossen für 2-3 Stunden.
Da die eingelegte Batterie immer noch 100% hat, hat sich der "letzte Änderung"-Wert nicht geändert. Der Zeitstempel hingegen schon. (Siehe Bild).
4505_1.jpg -
Der Gas-Melder wird per Netzteil betrieben und steht somit immer auf 100%. `
Welches Meldeverhalten der Gas-Sensor hat kann ich nicht sagen da ich keinen besitze.Ansonsten ist "bei Aktualisierung" die richtige Wahl… Die Sensoren melden ja auch unveränderte Batteriewerte...
-
@J Riemann:Der Gas-Melder wird per Netzteil betrieben und steht somit immer auf 100%. `
Welches Meldeverhalten der Gas-Sensor hat kann ich nicht sagen da ich keinen besitze.Ansonsten ist "bei Aktualisierung" die richtige Wahl… Die Sensoren melden ja auch unveränderte Batteriewerte... `
Also auch wenn ich meine Sensoren angucke, kann ich deine Aussage leider nicht bestätigen.
Anbei ein Bild eines Sensors für Türen/Fenster.
Ein Batteriestand wurde das letzte mal gestern gegen 17 Uhr geändert. Während der Zeitstempel einen Wert von heute morgen hat.
Für zeitnahe Abfragen scheint mir der Timestamp besser geeignet.
Jetzt nur noch rausfinden wie man in Javascript damit rechnet
4505_2.jpg -
Hab gerade kein iobroker zu Hand, aber probier mal so an den timestamp zu kommen:
var myTimestamp = getState("pfad.zu.meinem.Objekt_Datenpunkt").ts;
Den Zahlenwert kannst du ganz normal mit Grundrechenarten oder Date-funktionen verarbeiten.
-
Hab gerade kein iobroker zu Hand, aber probier mal so an den timestamp zu kommen:
var myTimestamp = getState("pfad.zu.meinem.Objekt_Datenpunkt").ts;
Den Zahlenwert kannst du ganz normal mit Grundrechenarten oder Date-funktionen verarbeiten. `
Danke für deine Rückmeldung. Habe ich schon gefunden und das Script ist auch schon soweit fertig. Jetzt werde ich erst mal den Rauch- und Gas-Melder im Auge behalten, wie oft die den Timestamp erneuern, um keine Fehlalarme zu bekommen.
Da ich kein Programmierer bin, ist das Script 100 Zeilen groß geworden. Man hätte sich vermutlich die ein oder andere variable oder umständliche Rechnung ersparen können -…aber dafür kann das Script auch was.
Zb. nach festgelegten Intervallen Alexa eine Ansage machen lassen, eine Email versenden oder eine Telegram-Nachricht wenn das Gerät nicht erreichbar ist.
-
Ok geht alles.
Für den Gasmelder sollte man den Zeitstempel (nicht letzte Änderung) von voltage oder percent nehmen. Dieser wird alle 15min vom Gasmelder aktualisiert.
Rauchmelder verhält sich fast genauso, nur unzuverlässiger. Mal nach 15 Minuten mal nach 40, mal nach 45… Keine Updates in "letzte Änderung" sondern nur in den Timestamps von voltage und percent.
Rate dringend ab, bei Zigbee Geräte den "letzte Änderung" input zu nehmen. Dieser wird wirklich nur aktualisiert, wenn sich was ändernt und ist somit kein Indikator.
Da scheinbar doch ein Zugriff erfolgt, auch wenn sich nichts geändert hat, ist die Timestamp hier zu bevorzugen.
4505_3.jpg -
schön, dass es jetzt funktioniert. Wenn du magst stelle dein script doch hier zur Verwendung rein. Auch wenn es noch nicht perfekt optimiert ist. Die Experten hier können mal drüber gucken und vielleicht noch hilfreiche Tipps geben. Ich bin mit js auch noch nicht so fit und lerne gerne dazu.