[Xiaomi Smart Home] Das Modul

Begonnen von torte, 24 Oktober 2017, 10:08:47

Vorheriges Thema - Nächstes Thema

torte

Hi Robin,

danke, denke das wird einigen helfen :-)
Steht in der WIKI zum Modul jetzt drin.

https://github.com/T0RST3N/fhem-XiaomiSmartHome/wiki#UsingFHEMinaDOCKERContainer

Grüße
Torte

blueberry63

Hallo, ich nutze dieses Modul schon seit langer Zeit ohne Problem. Aber in den letzten Wochen verliere ich ab und zu (1x pro Woche) die Verbindung von FHEM zum Gateway. Über die MiHome App funktioniert alles prima. Im LOG sehe ich folgende Zeilen:

"XiaomiGW: Write> Cannot write iam Disconnected"

Meine Lösung: Device löschen, Device neu anlegen+Password setzen - danach ist alles wieder in Ordnung.

Hat jemand eine Idee, woran das liegen kann?


FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

torte

Hi Blueberry,

wenn das Modul den Connect via WLAN verliert dann geht der Status auf disconnect. Ich muss da noch mal dran. Bin aber Zeitlich zur Zeit kaum dazu in der Lage
habe mir mit einem DOIF beholfen


defmod DI.MIGATE.Offline DOIF (["^MIGATE"] ne "Connected" and $defs{$DEVICE}->{helper}{ConnectionState} eq "Disconnected") (set TortrBot message <strong>MIGATE AUSFALL</strong>\n$DEVICE <i>$EVENT</i>)
attr DI.MIGATE.Offline do always
attr DI.MIGATE.Offline event-on-change-reading .*


Ich lass mir einfach ne Meldung über Telegram zusenden. Aber so oft passiert das jetzt bei mir nicht. Hasst Du Probleme mit dem WLAN?
Du kannst auch ein get UpdateAll absetzen dann passiert ein Reconnect.

Grüße
Torte

Christian Uhlmann

Hallo Torte,

ich habe auf Github einen PR erstellt (https://github.com/T0RST3N/fhem-XiaomiSmartHome/pull/22) damit man das Modul auch nutzen kann, wenn da Gateway nicht im FHEM Hauptnetzwerk hängt.
Bei mir ist das der Fall, da Gateway hängt in einem zweiten IOT Netz welches der FHEM Server über zusätzliches Interface erreichen kann.

Ich würde mich freuen wenn du den PR mergen könntest.

Bei Fragen einfach melden:

Grüße Christian
Host: Debian Buster als VM / XCP-NG
Gateways: DuoFern Stick, CUL433 Revolt, CUL MAX, HMLan, HM-USB 2, LaCrosseGateway
Devices: 12x Rademacher Rollos, 6x TX 29 DT-HT, 10x HM-CC-RT-DN, 14x MAX Fensterkontakte, Diverse HM Aktoren für Licht, Klingel, Gong, Eingangstür, ESPEasy, Sonoff mit Tasmota

matthias soll

Hallo zusammen,
ich wollte von dem mi gateway auf das aqara gateway zhwg11lm umsteigen, weil ich einen aqara opple schalter gekauft habe den das alte mi gateway nicht unterstützt.
Jetzt bekomme ich das Gateway nicht eingebunden.
Hat irgendjemand das o.g. aqara gateway laufen?
Wird das von dem modul unterstützt?
Im Log bekomme ich nur:AQARAgateway:  Read> No SID, Stop Read
Gruß Matthias

Ofenrohr

Hallo,
ich nutze das MiSmartHome Modul schon lange auf meinem fhemserver. Nun installiere ich gerade parallel einen neuen fhemserver auf einem Raspi 3 B+ mit Debian Buster. Hab schon Gardena und Homematic definiert, dann kam MiSmartHome dran.

Wunderte mich, dass es das Modul gar nicht gibt. Ist das schon immer third-party?
Also hab ich es via
update all https://raw.githubusercontent.com/T0RST3N/fhem-XiaomiSmartHome/master/controls_mish.txt

hinzugefügt (so hab ich das hier im Forum gefunden).

Danach eines (von drei) Gateway(s) angelegt mit define MiHomeGateway2 192.168.x.y -> fhem stürzt ab, startet neu, läuft ein paar Sekunden, startet neu usw.
Es wurden automatisch MiSmartHomeDevices für ein paar verbundene Geräte angelegt.

Erst wenn ich das MiHomeGateway-Gerät wieder lösche, läuft der fhemserver wieder durch.

Im Log steht das hier:
2020.05.30 22:49:17 2: autocreate: define XMI_158d00020f8c5a XiaomiSmartHome_Device 158d00020f8c5a magnet MiHomeGateway2
2020.05.30 22:49:17 2: autocreate: define FileLog_XMI_158d00020f8c5a FileLog ./log/XMI_158d00020f8c5a-%Y.log XMI_158d00020f8c5a
2020.05.30 22:49:17 1: MiHomeGateway2: DEV_Parse> UNDEFINED magnet : 158d000224fe8e
2020.05.30 22:49:17 2: autocreate: define XMI_158d000224fe8e XiaomiSmartHome_Device 158d000224fe8e magnet MiHomeGateway2
2020.05.30 22:49:17 2: autocreate: define FileLog_XMI_158d000224fe8e FileLog ./log/XMI_158d000224fe8e-%Y.log XMI_158d000224fe8e


2020.05.30 22:50:52 1: XMI_158d000224fde1 DEV_Define> magnet - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 439.
2020.05.30 22:50:52 1: XMI_158d0001d5349c DEV_Define> sensor_wleak.aq1 - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 447.
2020.05.30 22:50:52 1: XMI_158d0002282f59 DEV_Define> magnet - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 454.
2020.05.30 22:50:52 1: XMI_158d0001837a5d DEV_Define> magnet - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 462.
2020.05.30 22:50:52 1: XMI_158d00022512a9 DEV_Define> magnet - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 470.
2020.05.30 22:50:52 1: XMI_158d00010b2d84 DEV_Define> cube - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 478.
2020.05.30 22:50:52 1: XMI_158d0001e0799b DEV_Define> sensor_motion.aq2 - no I/O device
2020.05.30 22:50:52 1: PERL WARNING: Use of uninitialized value $iodev in concatenation (.) or string at ./FHEM/71_XiaomiSmartHome_Device.pm line 467, <$fh> line 485.

2020.05.30 22:50:58 3: MiHomeGateway2: getGatewaySID> Find SID for Gateway: 34ce0091e414
2020.05.30 22:50:58 3: MiHomeGateway2: connect> Connected
2020.05.30 22:51:02 1: MiHomeGateway2: disconnect> disconnecting




Fragen:
Hab ich das richtige Paket/die richtige Quelle des Pakets installiert?
Ist es evtl. nicht kompatibel mit Debian Buster?

Ich hab rund 80 MiHome-Devices und viel Logik dazu. Komme mit Linux halbwegs und mit fhem ziemlich gut klar, Quelldateien verändern ist nicht meine Stärke. Was kann ich sinnvoll tun außer "den alten fhemserver nur für das MiSmartHome-Zeug weiter betreiben"?


torte

Tach Ofenrohr,

Guck Mal hier in diesen Threads #221

Ich glaube das ist die Lösung für dein Problem.

Gruß
Torte

Gesendet mit Tapatalk


Ofenrohr

Zitat von: torte am 30 Mai 2020, 23:20:12
Guck Mal hier in diesen Threads #221
Ich glaube das ist die Lösung für dein Problem.

Hammer. Genau das war's.
Tausend Dank für die schnelle Hilfe!

Beste Grüße, Ofenrohr

dominik

Hi,

ich habe heute meinen Xiaomi Gateway V3 erhalten und dachte, dass ich noch den Development Port aktivieren kann. Leider habe ich eine Version erhalten, wo psm-set fehlt und kann daher keinen Development Mode aktivieren

Die Kollegen von Home Assistant haben einen Integrationsweg ueber MQTT gefunden, siehe hier:
https://github.com/AlexxIT/XiaomiGateway3

Arbeitet vielleicht schon jemand fuer FHEM dran? :)
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

#234
Ich habe mir das nun genauer angeschaut und wahrscheinlich eine "einfache" Lösung gefunden.

HomeAssistant macht folgendes:
- Telnet aktivieren mit Token
- mosquitto am Gateway killen
- mosquitto mit offenen Port nach außen starten
- HomeAssistant Verbindung zu MQTT aufbauen

Den letzten Schritt kann man vielleicht ersetzen und das FHEM Standardmodul verwenden, meine Idee dazu:
- Nutzung von mqtt/udp (https://github.com/dzavalishin/mqtt_udp/blob/master/lang/python3/examples/mqtt_bidir_gate.py)
- MQTT to UDP und UDP to MQTT kann dann z.B. am RPi laufen und über Port 9898 die MQTT Msgs anbieten, so wie ich das sehen, sind das die gleichen Msgs wie sie aktuell versendet werden
- Connection von FHEM Modul zu dem UDP Port aufbauen mit dem aktuellen FHEM Modul

Bin leider gerade nicht vor Ort, aber wenn das ginge, wäre das eine super einfache Lösung.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Zur Info, ich habe nun in Python eine erste Implementierung mit Xiaomi Gateway 3 gemacht. Wer es testen will, kann das gerne hier tun:
https://github.com/dominikkarall/fhem_pythonbinding

Einfach der Installationsanleitung folgen und dann
define xiagw3 PythonModule xiaomi_gateway3 192.168... 23456789234567
Die 2 Parameter sind IP und TOKEN.

Aktuell werden nur Werte vom Gateway gelesen und die Readings zu Temperature/Humidity/Contact/... angezeigt. Ein Senden von Befehlen an einen Switch oder ähnliches wird noch nicht unterstützt.

Ein großes Danke an die Kollegen von HomeAssistant von denen ich viel Code übernommen habe:
https://github.com/AlexxIT/XiaomiGateway3/tree/master
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Blackcat

Hi ich bin auch gerade am Anbinden meiner leider geupdatet Aqara Bridge.

Habe aber hier eine nette Seite zum Auslesen des Tokens gefunden:
https://github.com/Maxmudjon/com.xiaomi-miio/blob/master/docs/obtain_token.md

Der ist nur leider 32 Zeichen lang und nicht 16 *hmm...* ich forsche aber noch ein bisschen weiter, aber vielleicht habt ihr ja auch eine Idee.
Viele Grüße Sandra - FHEM Style Entwicklerin iOS6+12
-----
ZBox nano, Homematic, Homebridge, Hue + Mi Light, ZWave, Dyson, etc.
https://www.foodcat.de
https://www.youtube.com/c/FoodCat (hier gibt es auch immer mehr Hausautomatisierungsvideos)

dominik

fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Blackcat

Ich habe nur iOS ;) Deshalb habe ich den Weg mit dem Backup gewählt.

Lade mir gerade deinen Code runter ggf. kann ich dir ja beim Befehlsenden helfen
Viele Grüße Sandra - FHEM Style Entwicklerin iOS6+12
-----
ZBox nano, Homematic, Homebridge, Hue + Mi Light, ZWave, Dyson, etc.
https://www.foodcat.de
https://www.youtube.com/c/FoodCat (hier gibt es auch immer mehr Hausautomatisierungsvideos)

dominik

Zitat von: Blackcat am 02 Oktober 2020, 20:36:30
Ich habe nur iOS ;) Deshalb habe ich den Weg mit dem Backup gewählt.

Lade mir gerade deinen Code runter ggf. kann ich dir ja beim Befehlsenden helfen

Ah, ok. Mit iOS und Xiaomi habe ich keine Erfahrung.

Hast du den Xiaomi Gateway V3? Nur dieser wird von meinem Modul unterstützt, ältere Gateways funktionieren mit dem Modul von Torte.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik