Xiaomi Smart Home Komponenten

Begonnen von FosCo, 21 Dezember 2016, 18:59:59

Vorheriges Thema - Nächstes Thema

Bartimaus

Zitat von: ahlermi am 07 Januar 2020, 15:49:10
Funksteckdose über Fhem 5 Min vor Start einschalten? :-)

Das hatte ich bereits im Timer berücksichtigt.
Was jetzt geholfen hat, war ca. 5min nach einschalten des Funkis ein "get <XiaomiDevice> data"

Damit ist er aufgewacht.... bis jetzt
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

matthias soll

Hallo zusammen,

ich habe mal eine Frage zu dem xiaomi gateway.
Ich habe knapp 30 aqara geräte über das Gateway laufen und das schreibt mit das fehm log dermaßen zu,
dass ich da fast nichts anderes finden kann.
Ist es möglich das logging für das Gateway auszuschalten?
Für eine Tip wäre ich sehr dankbar.

Gruß
Matthias

torte

Moin Matthias,

ja das geht, am GW Fhem Device das Attribut Verbose auf zb. 0, dann ist ruhe mit Logging

Grüße
Torte

matthias soll

Aach so einfach ist das.
Seit Monaten ärgert mich das.
Danke danke danke!!!!

jkriegl

Erfahrungsbericht: Mi Temperatur- Luftfeuchtigskeits-Sensor (sensor_ht) defekt? #1032
Verschiedene neue Batterien ausprobiert - gleiches Problem.
Nach längerer Zeit ohne Batterie funktioniert der Sensor wieder.
Rpi 3, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly

Hirte82

Hallo,

in einem Beitrag von Eisenhauer1987 (seite 63) heißt es:

ZitatNach kleinen Änderungen mit Hilfe von torte konnte ich den neuen 32Stelligen Key übernehmen.

Ich habe ebenfalls nur den 32 stelligen Token extrahieren können. Bei Eingabe als PW kommt allerdings immer die Fehlermeldung, dass das PW 16stellig sein muss.
Wie genau hat denn die Übernahme des 32stelligen Codes funktioniert?

Vielen Dank.

Viele Grüße
Hirte

memed

Kurze Info für Leute die Probleme mit dem Mi Gateway das plötzlich nach einigen Stunden/Tagen keine Daten mehr empfängt und keine Schaltbefehle mehr annimmt.

Synthome: Thermometer Daten werden nicht mehr Protokolliert, Sensoren Daten kommen nicht mehr, das "NAchtlicht" am Gateway kann nicht mehr geschaltet werden
Im Detail: Das Token und der Heartbeat bleiben aus - technisch sind Daten noch abrufbar, insbesondere der "Get all" set Befehl bekommt noch Daten, wenn man manuell auslöst.

Hintergrund: Das Multicast im LAN klappt dann vermutlich nicht mehr, das kann passieren durch Umbau/Austausch von LAN Komponenten, in meinem Fall ist es 2x passiert: Einmal ein Web-Manage Switch der IGMP Snooping an hatte und das Andere mal durch einen WLAN Accesspoint der WMM + IPTV Optimierung auch auf seinen LAN Ports gemacht hat.

Lösung ist, FHEM System und Mi Gateway davon ausnehmen, bzw. Multicast Filterung und Optimierung ganz ausschalten.
Ich habe am WLAN AP das IPTV und WMM Zeug ausgemacht (mein Amazon Fire läuft seit dem besser...), auf dem Semi-Smart Switch habe ich ein Port-Based VLAN hinzugefügt, das bedeutet auf den Ports vom FHEM und vom Mi Gateway (bzw. dem Uplink Port der zum WLAN AP LAN Port geht) habe ich neben dem Untagged VLAN1 (default= Internet-LAN) zusätzlich ein VLAN (Untagged, Portbasiert) aufgeschaltet - da drinnen ist dann IGMP Proxy ausgeschaltet und das ist als Primary VLAN auf dem Port zugewiesen.

LG

eisenhauer1987

Zitat von: Hirte82 am 04 August 2020, 15:38:49
Hallo,

in einem Beitrag von Eisenhauer1987 (seite 63) heißt es:

Ich habe ebenfalls nur den 32 stelligen Token extrahieren können. Bei Eingabe als PW kommt allerdings immer die Fehlermeldung, dass das PW 16stellig sein muss.
Wie genau hat denn die Übernahme des 32stelligen Codes funktioniert?

Vielen Dank.

Viele Grüße
Hirte

Hier mal die Nachricht von damals:

Moin,

könnte sein das das Passwort jetzt 32 stellen hat. In der letzten Doku vom 16.07.2018 sind dort auch 32 stellen drin.

Probiere mal Bitte folgendes aus.

Auf deinem Fhem Server Ordner opt\fhem\FHEM\ in der Datei 71_XiaomiSmartHome.pm

Änders Du die Zeilen 449, 535, 624

Code: [Auswählen]
if ( $hash->{READINGS}{password}{VAL}  !~ /^[a-zA-Z0-9]{16}$/ )

in das hier

Code: [Auswählen]
if ( $hash->{READINGS}{password}{VAL}  !~ /^[a-zA-Z0-9]{32}$/ )


Und dann noch Zeile 614
Code: [Auswählen]
   if($args[0] =~ /^[a-zA-Z0-9]{16}$/)

in:

Code: [Auswählen]
   if($args[0] =~ /^[a-zA-Z0-9]{32}$/)

Danach gibst du oben in der FHEM Commandline reload 71_XiaomiSmartHome.pm ein
Dann Fehm neustart. Dann sollte zumindest das 32 Zeichen lange Passwort angenommen werden.
Wenn Du dann zb. die LED an dem Gateway steuern kannst wäre es das gewesen.

Sollte das so funktionieren übernehme ich die Änderungen ins Git.

Grüße
Torte


Ich hatte aber das Gateway was naiv HomeKit spricht. Das könnte man damals (keine Ahnung ob das heute geht) nicht mit ehem betreiben

dft606

Hallo zusammen,

ich habe seit heute ein Problem mit meiner Gateway Definition.
Habe einige andere Änderungen vorgenommen und dann FHEM neu gestartet.
FHEM war dann nicht mehr im Browser erreichbar. Hier habe ich festgestellt, dass es in einer Endlosschleife startet.
Die Fehlersuche hat mich dann auf das XIAOMI Gateway gebracht. (send: Invalid argument at ./FHEM/71_XiaomiSmartHome.pm line 548.)
Nachdem ich dann die Gateway Definition in der fhem.cfg gelöscht habe, hat FHEM wieder richtig gestartet.

Hier den Auszug aus der Log.
2021.01.03 15:44:52 3: Xiaomi_Gateway: getGatewaySID> Find SID for Gateway: 7811dcdad415
2021.01.03 15:44:52 3: Xiaomi_Gateway: connect> Connected
2021.01.03 15:45:06 1: Xiaomi_Gateway: DEV_Parse> UNDEFINED smoke : 158d0002049327
2021.01.03 15:45:09 1: Xiaomi_Gateway: DEV_Parse> UNDEFINED sensor_magnet.aq2 : 158d0002059c00
2021.01.03 15:45:12 1: Xiaomi_Gateway: DEV_Parse> UNDEFINED weather.v1 : 158d0002478a02
send: Invalid argument at ./FHEM/71_XiaomiSmartHome.pm line 548.


Zeile 548:    $sock->mcast_send($msg,$GATEWAY .':9898') or die "send: $!";


Dies ist meine device Definition.
define Xiaomi_Gateway XiaomiSmartHome 192.168.0.165
attr Xiaomi_Gateway devStateIcon {Color_devStateIcon(ReadingsVal($name,"rgb","000000"))}
attr Xiaomi_Gateway room 00_MiSmartHome
attr Xiaomi_Gateway webCmd pct:rgb:rgb ff0000:rgb 00ff00:rgb 0000ff:on:off



Woran kann dies liegen?
Ich bin mit meinem Latein am Ende.


Gruß
Johannes



torte

Hi Johannes,

hab durch einen Zufall Deinen Beitrag gefunden, geht das GW wieder? Oder hast Du noch ein Problem?

Grüße
Torte

chris_kmn

Ich habe den Fehler auch:

Invalid argument at /opt/fhem/FHEM/71_XiaomiSmartHome.pm line 548

Es kann sein, dass es bei mir an der Umstellung auf Debian Buster liegt. Ist da noch was bzgl. Verschlüsselung/Zertifikate zu beachten ? Ssl auf https funktioniert bei mir soweit....

chris_kmn

Heute war mein FHEM auch in dieser Endlosschleife nachdem ich ein restore von einem 2 tage alten funktionierenden SD Image gemacht habe.

Ich habe die Vermutung, dass das erst endete als meine Frau das Fenster auf gemacht hat (Window Sensor). Es könnte aber auch sein, dass es an einer schlechten WLAN Verbindung des Xiaomi Gateways liegen könnte. Ich habe nur 32% Signalstärke.

Macht das irgendeinen Sinn ?

chris_kmn

Oder könnte es damit in Zusammenhang stehen ?

Zitat von: dude am 27 September 2019, 22:55:07
Hi,

@slowfinger, @torte (Startup-Problem):
Ich hatte das gleiche Problem, und zwar nach dem Update von Raspbian Stretch auf Buster.
Das Problem scheint im Perl-Modul IO::Socket::Multicast in Verbindung mit Perl 5.28 zu liegen. Mit folgendem Patch startet FHEM bei mir wieder:


--- a/lib/IO/Socket/Multicast.pm 2019-09-27 22:24:18.358025842 +0200
+++ b/lib/IO/Socket/Multicast.pm 2019-09-27 22:24:28.548756284 +0200
@@ -99,7 +99,7 @@
   my $sock = shift;
   my $prev = ${*$sock}{'io_socket_mcast_dest'};
   if (my $dest = shift) {
-    $dest = sockaddr_in($2,inet_aton($1)) if $dest =~ /^($IP):(\d+)$/;
+    $dest = sockaddr_in(int($2),inet_aton($1)) if $dest =~ /^($IP):(\d+)$/;
     croak "invalid destination address" unless length($dest) == 16;
     ${*$sock}{'io_socket_mcast_dest'} = $dest;
   }


In der Annahme, dass es sich um einen Bug in IO::Socket::Multicast handelt, habe ich auch ein Bug-Report bei CPAN erstellt: https://rt.cpan.org/Ticket/Display.html?id=130581

Viele Grüße
dude

torte

Hallo Chris,

ja genau, den Patch einbauen dann geht alles wieder.

Grüße
Torte

chris_kmn

Hi Torte,

kannst du mir noch sagen wo man die multicast.pm findet ? Ich suche mir schon nen Wolf🙈

Vielen Dank, Chris