Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)

Begonnen von Markus M., 11 Juni 2017, 12:48:58

Vorheriges Thema - Nächstes Thema

Ma_Bo

Ich habe öfter solche Meldungen im LOG:

2017.07.14 13:14:56.420 2: Xiaomi_Vacuum: connection timeout
2017.07.14 13:15:56.398 3: Xiaomi_Vacuum: disconnecting
2017.07.14 13:15:56.399 2: Xiaomi_Vacuum: connecting
2017.07.14 13:15:56.401 3: Xiaomi_Vacuum: initialized
2017.07.14 13:16:00.498 2: Xiaomi_Vacuum: invalid JSON: |��
P���K,"����
2017.07.14 13:17:16.419 2: Xiaomi_Vacuum: connection timeout
2017.07.14 13:18:16.427 2: Xiaomi_Vacuum: connection timeout
2017.07.14 13:27:16.451 3: Xiaomi_Vacuum: disconnecting
2017.07.14 13:27:16.452 2: Xiaomi_Vacuum: connecting
2017.07.14 13:27:16.454 3: Xiaomi_Vacuum: initialized
2017.07.14 13:27:20.478 2: Xiaomi_Vacuum: invalid JSON: :cN��������m�Q


Es läuft soweit alles, kann man das ignorieren, bzw. kann ich diese Meldungen durch Änderung des LOGLEVEL unterbinden...?

Grüße Marcel


************ EDIT ***************

Das hier erscheint mit verbose 0 trotzdem im LOG:

2017.07.14 15:30:53.979 1: ERROR: Select error -1 (9), error count= 0
2017.07.14 15:30:53.979 1: Found and deleted bad fileno for Xiaomi_Vacuum
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

Manul

Funzt, danke! Ich komme allerdings frühestens Montag dazu, das mit der App im WLAN auszuprobieren. Bin übers Wochenende weg.

Die Kommunikation zwischen Sauger und Server ist offensichtlich anders verschlüsselt. Kommen wir da nicht ran?

Markus M.

Zitat von: Manul am 14 Juli 2017, 14:08:01Die Kommunikation zwischen Sauger und Server ist offensichtlich anders verschlüsselt. Kommen wir da nicht ran?
Keine Chance wenn dabei SSL Pinning verwendet wird.
App zu Cloud ist theoretisch denkbar, habe aber keine Zeit dazu.


EDIT: Du kannst dir das vorerst sparen, die Funktion ist schon im Modul :)
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

stephanblasch

Hallo,
klasse Modul! Seit einiger Zeit meldet sich der Sauger jedoch nach relativ kurzer Zeit (5min)  im FHEM mit "disconnect" ab. Wenn ich ihn dann wieder starten möchte, muss ich den "start" Befehl zweimal hintereinander geben, beim ersten mal wacht er auf und beim zweiten mal läuft er dann los.
Das war vorher (ich weiss leider nicht seit wann (evtl. seit einem Firmware Update ?)) nicht so, da ich ihn zeitgesteuert per FHEM starte, fährt er jetzt nicht mehr los (da er den Start-Befehl ja nur einmal bekommt)
Hier ein kurzer Auszug aus dem Log wo er sich disconnected hat.

2017-07-14_16:12:41 SaugRoboter charge
2017-07-14_16:12:41 SaugRoboter connected
2017-07-14_16:17:30 SaugRoboter disconnected
2017-07-14_16:18:27 SaugRoboter start
2017-07-14_16:18:33 SaugRoboter start
2017-07-14_16:18:33 SaugRoboter connected
2017-07-14_16:18:38 SaugRoboter stop


Ich könnte natürlich den Startbefehl von FHEM zweimal senden lassen, aber das ist ja auch nicht im Sinne des Erfinders ;-)

Vielleicht kann mir ja jemand helfen und den entscheidenden Tipp geben.

Danke im voraus
Stephan
Homematic Raspberry Adapter, Raumthermostate, Wandtaster, div. Aktoren, Fensterkontakte, Stecker mit Leistungsmessung, Selbstbauwassermelder, Jeelink (für Temperatur- und Feuchtigkeitssensoren), Pushover Benachrichtigung, CUL für Intertechno, Alexa, Mi-Light... Zigbee und Zwave zum spielen.

Markus M.

Zitat von: Ma_Bo am 14 Juli 2017, 13:52:39
Ich habe öfter solche Meldungen im LOG:

2017.07.14 13:27:20.478 2: Xiaomi_Vacuum: invalid JSON: :cN��������m�Q

Das hier erscheint mit verbose 0 trotzdem im LOG...

Sieht nach Netzwerk Problemen aus, wenn nicht sogar irgendein anderes Gerät querschießt.
Ich versuche das nachzuvollziehen, ebenso wie die Reconnects.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

Markus M.

Zitat von: stephanblasch am 14 Juli 2017, 16:47:49Seit einiger Zeit meldet sich der Sauger jedoch nach relativ kurzer Zeit (5min)  im FHEM mit "disconnect" ab.

Was sagt das FHEM Log dazu?
Probier mal die neueste Version aus.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

stephanblasch

Danke Markus!
Ich hab natürlich immer nur neue Geräte dazugeschrieben und nur einfache Updates gemacht und ganz vergessen, dass das Modul damit nicht aktualisiert wird...

Nach erstem Test läuft es!

Vielen Dank, Klasse Support!
Homematic Raspberry Adapter, Raumthermostate, Wandtaster, div. Aktoren, Fensterkontakte, Stecker mit Leistungsmessung, Selbstbauwassermelder, Jeelink (für Temperatur- und Feuchtigkeitssensoren), Pushover Benachrichtigung, CUL für Intertechno, Alexa, Mi-Light... Zigbee und Zwave zum spielen.

Jamo

Hallo Markus,
set vacuum wifi_setup DEINWLANNAME DEINWLANPASSWORT DEINEXIAOMIUSERID

wenn ich das Wlan vom vacuum mit diesem Befehl ändere, muss dann der vacuum Internetzugang haben, oder darf der vacuum in der Fritzbox vom Internet gesperrt sein?

Mein scenario ist das ich den vacuum über Wlan erreichen kann, aber Internet ist gesperrt in der Fritzbox, damit der vacuum nicht ständig nach China telefoniert. Kann ich jetzt einfach Wlanname und/oder Passwort ändern, oder muss ich das jetzige Wlan in der FB aufmachen, weil der vacuum das neue Wlan vor der internen übernahme zum China Server übertragen muss?

Danke!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Markus M.

Zitat von: inoma am 15 Juli 2017, 15:50:57
wenn ich das Wlan vom vacuum mit diesem Befehl ändere, muss dann der vacuum Internetzugang haben, oder darf der vacuum in der Fritzbox vom Internet gesperrt sein?

Du solltest das mit deiner ID machen und ihm kurz WLAN geben, sonst verlierst du die Steuerung über die App komplett.
Theoretisch sollte es auch ohne gehen.
Wie du aus einem Backup an den neuen Token kommst weißt du? Das ist im schlimmsten Fall nötig.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

Jamo

Hallo Markus,
ich habe jetzt eine Xiaomi / Philips EyeCare, die wollte ich mit dem gleichen WLAN wie den Vaccum in FHEM einbinden.
Leider kann die EyeCare kein "/" Charcater im Passwort, deswegen wollte ich dann das WLAN vom Vaccum ändern (deswegen meien Frage von oben).
Habe dann gedacht, ich probier erst mal nur die Eyecare. Habe dann temporär erst mal ein neues WLAN passwort in der FB ohne das "/" vergeben,
um die Xiaomi EyeCare in FHEM einzubinden.
Leider bekomme ich immer folgende Fehlermeldung. Muss aus der Lampe noch der Token ausgelesen werden?

2017.07.15 23:00:41 3: EyeCare: disconnecting
2017.07.15 23:00:41 2: EyeCare: connecting
2017.07.15 23:00:41 3: EyeCare: initialized
2017.07.15 23:00:41 5: EyeCare: initSend
2017.07.15 23:00:41 5: EyeCare Send SUCCESS
2017.07.15 23:00:41 5: EyeCare > 21310020ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
2017.07.15 23:00:41 5: EyeCare < 213100200000000002f9a903000004ac8a4807a1845f7b538fb614df2ba44d87 (32)
2017.07.15 23:00:45 4: EyeCare: write {"id":32,"method":"miIO.wifi_assoc_state","params":[""]} (56)
2017.07.15 23:00:45 5: EyeCare: send 213100600000000002f9a903000004b05aa121577d3bdab69e612121b5398a01fb1d6230096cfeced26ec2644f406b2901268aab36d2e83fa35c9a6c7702796d36db85842c04e09d647260f4666ec1dba6fe3f9f61eb50df200aa25953fcdf9d
2017.07.15 23:00:45 5: EyeCare Send SUCCESS
2017.07.15 23:00:45 5: EyeCare > 213100600000000002f9a903000004b05aa121577d3bdab69e612121b5398a01fb1d6230096cfeced26ec2644f406b2901268aab36d2e83fa35c9a6c7702796d36db85842c04e09d647260f4666ec1dba6fe3f9f61eb50df200aa25953fcdf9d
2017.07.15 23:00:45 4: EyeCare: write {"id":33,"method":"miIO.info","params":[""]} (44)
2017.07.15 23:00:45 5: EyeCare: send 213100500000000002f9a903000004b0a0b67be3869d3b4925a14624b83476e23bb4b1b6a0cec0b7ea9008e9d9210d486eb2cfb4fbc858e8f1d80858fe2e988cf937316aeba95afb51a525a948f21f65
2017.07.15 23:00:45 5: EyeCare Send SUCCESS
2017.07.15 23:00:45 5: EyeCare > 213100500000000002f9a903000004b0a0b67be3869d3b4925a14624b83476e23bb4b1b6a0cec0b7ea9008e9d9210d486eb2cfb4fbc858e8f1d80858fe2e988cf937316aeba95afb51a525a948f21f65
2017.07.15 23:00:45 4: EyeCare: write {"id":34,"method":"get_serial_number","params":[""]} (52)
2017.07.15 23:00:45 5: EyeCare: send 213100600000000002f9a903000004b022893e682a9e4bec29bbfd9f951c954db3090877bbd32ea6f5bbd63679f8a649299a3d7a8b9b5ecfe6e3088af13230ed21a753286d3b877f1be3a8e7006257f0b9a12b46193a0b405c70df75cfef131f
2017.07.15 23:00:45 5: EyeCare Send SUCCESS
2017.07.15 23:00:45 5: EyeCare > 213100600000000002f9a903000004b022893e682a9e4bec29bbfd9f951c954db3090877bbd32ea6f5bbd63679f8a649299a3d7a8b9b5ecfe6e3088af13230ed21a753286d3b877f1be3a8e7006257f0b9a12b46193a0b405c70df75cfef131f
2017.07.15 23:00:45 5: EyeCare < 213100600000000002f9a903000004b0ffffffffffffffffffffffffffffffff (96)
2017.07.15 23:00:45 5: EyeCare: decrypted

2017.07.15 23:00:45 2: EyeCare: invalid JSON:
2017.07.15 23:00:45 5: EyeCare < 213100500000000002f9a903000004b0ffffffffffffffffffffffffffffffff (80)
2017.07.15 23:00:45 5: EyeCare: decrypted

2017.07.15 23:00:45 2: EyeCare: invalid JSON:
2017.07.15 23:00:45 5: EyeCare < 213100600000000002f9a903000004b0ffffffffffffffffffffffffffffffff (96)
2017.07.15 23:00:45 5: EyeCare: decrypted

2017.07.15 23:00:45 2: EyeCare: invalid JSON:
2017.07.15 23:00:48 4: EyeCare: write {"id":35,"method":"get_prop","params":["power","bright","cct","snm","dv","ct","color_mode","delayoff","flowing","flow_params","name","rgb","hue","sat"]} (152)
2017.07.15 23:00:48 5: EyeCare: send 213100c00000000002f9a903000004b3222a02c2fe6ed5bfe8055889a4d0d264e2fd348c21f9d0cdda30cbb609d23a56043d9ffe258e7caea7205304db9cda2898794f4f6bcd33489886686c733d3acff3fcd650855f7b432e4dce769c6f4f25cee445975d1ed523ea2c4d473652beb7915ce79f432befa834c5c5ff94131c1a2c3db4327cb37df54f59bd120417901fef817d9b850bf2c06543e3ca9f6c8e57bfbe2b48c517b49599a80e5ab421e7475123b557c0ac149fea4811bd48b311d7
2017.07.15 23:00:48 5: EyeCare Send SUCCESS
2017.07.15 23:00:48 5: EyeCare > 213100c00000000002f9a903000004b3222a02c2fe6ed5bfe8055889a4d0d264e2fd348c21f9d0cdda30cbb609d23a56043d9ffe258e7caea7205304db9cda2898794f4f6bcd33489886686c733d3acff3fcd650855f7b432e4dce769c6f4f25cee445975d1ed523ea2c4d473652beb7915ce79f432befa834c5c5ff94131c1a2c3db4327cb37df54f59bd120417901fef817d9b850bf2c06543e3ca9f6c8e57bfbe2b48c517b49599a80e5ab421e7475123b557c0ac149fea4811bd48b311d7
2017.07.15 23:00:48 5: EyeCare < 213100c00000000002f9a903000004b3ffffffffffffffffffffffffffffffff (192)
2017.07.15 23:00:48 5: EyeCare: decrypted

2017.07.15 23:00:48 2: EyeCare: invalid JSON:
2017.07.15 23:00:51 4: EyeCare: write {"id":36,"method":"get_prop","params":["power","bright","cct","snm","dv","ct","color_mode","delayoff","flowing","flow_params","name","rgb","hue","sat"]} (152)
2017.07.15 23:00:51 5: EyeCare: send 213100c00000000002f9a903000004b667ad6239a22fa5b4bbe3e8cf65a5915568233b44dc58088a93a4ec88afb8150aaf5c06864010f24325be7f96b286682dd6b260993acd32fa863a8b136e2414e69a3cde3318e957b67b19d9cfa7ccb02e6d6842d109fb47ae77964e5839c2021f74375e3b900dac13d0b2ebe5646524b65f90c8088b2fc9b04f107d1aafcbf6d4248d52edef19d3d5a5f9b876c8724c9010d064dccc6a5633a13c32f766ce313c4e6262538cbe6cf17841d6c5ff3ba6ff
2017.07.15 23:00:51 5: EyeCare Send SUCCESS
2017.07.15 23:00:51 5: EyeCare > 213100c00000000002f9a903000004b667ad6239a22fa5b4bbe3e8cf65a5915568233b44dc58088a93a4ec88afb8150aaf5c06864010f24325be7f96b286682dd6b260993acd32fa863a8b136e2414e69a3cde3318e957b67b19d9cfa7ccb02e6d6842d109fb47ae77964e5839c2021f74375e3b900dac13d0b2ebe5646524b65f90c8088b2fc9b04f107d1aafcbf6d4248d52edef19d3d5a5f9b876c8724c9010d064dccc6a5633a13c32f766ce313c4e6262538cbe6cf17841d6c5ff3ba6ff
2017.07.15 23:00:51 5: EyeCare < 213100c00000000002f9a903000004b6ffffffffffffffffffffffffffffffff (192)
2017.07.15 23:00:51 5: EyeCare: decrypted

2017.07.15 23:00:51 2: EyeCare: invalid JSON:
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Markus M.

Geänderter Token und noch ein paar andere Dinge die ich mir ansehen muss. Hast du nur das WLAN neu gesetzt? Oder neu eingerichtet?
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

Jamo

Hallo Markus,
ich habe temporär das Wlan passwort in der FB geändert beispielsweise auf 'abcdef', ohne "/",
und dann die EyeCare mit diesem WLAN und Passwort 'abcdef' unter IOS mit der Xiaomi Home APP mit dem WLAN verbunden, und dann in FHEM eingerichtet, mit deiner App vom 2017-07-14, mit der korrekten IP Adresse. Ich habe mit Token '00000000000000000000000000000000' und ohne Token probiert.

Hier auch mal das list (das list ist jetzt aber wieder ohne aktive WLAN Verbindung, weiss nicht ob das wichtig ist)

Internals:
   DEF        172.21.0.19
   FD         35
   NAME       EyeCare
   NR         2215
   STATE      disconnected
   TYPE       XiaomiDevice
   device_type
   READINGS:
     2017-07-15 23:36:01   state           disconnected
   helper:
     ConnectionState initialized
     crypt      AES
     ip         172.21.0.19
     last_read  1500154251
     packetid   45
     port       54321
     sequence   1500151245
     token      00000000000000000000000000000000
     packet:
       1          lamp_data
       10         lamp_status
       11         lamp_status
       12         power_on
       13         power_off
       14         lamp_status
       15         lamp_status
       16         lamp_data
       17         power_on
       18         power_off
       19         lamp_status
       2          power_on
       20         lamp_status
       21         lamp_data
       22         wifi_stats
       23         device_info
       24         get_serial_number
       25         lamp_data
       26         lamp_data
       27         wifi_stats
       28         device_info
       29         get_serial_number
       3          power_off
       30         lamp_data
       31         lamp_data
       32         wifi_stats
       33         device_info
       34         get_serial_number
       35         lamp_data
       36         lamp_data
       37         lamp_data
       38         lamp_data
       39         lamp_data
       4          wifi_stats
       40         lamp_data
       41         lamp_data
       42         lamp_data
       43         lamp_data
       44         lamp_data
       5          device_info
       6          get_serial_number
       7          set_light
       8          lamp_data
       9          lamp_data
Attributes:
   room       Lights
   stateFormat state
   subType    SmartLamp
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Markus M.

Zitat von: inoma am 16 Juli 2017, 11:25:47
Hallo Markus,
ich habe temporär das Wlan passwort in der FB geändert beispielsweise auf 'abcdef', ohne "/",
und dann die EyeCare mit diesem WLAN und Passwort 'abcdef' unter IOS mit der Xiaomi Home APP mit dem WLAN verbunden, und dann in FHEM eingerichtet, mit deiner App vom 2017-07-14, mit der korrekten IP Adresse. Ich habe mit Token '00000000000000000000000000000000' und ohne Token probiert.

Du musst den Token aus einem App Backup extrahieren analog zum Sauger, siehe Post 3.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

Jamo

Hallo Markus,
danke, ich dachte erst die Lampe geht ohne Token. Nun, mein iOS backup bricht gerade immer mit "iTunes could not back up the iPhone becasue the iPhone disconnected" ab, andere Baustelle. Das muss ich erstmal lösen. :-(
Dann melde ich mich wieder.
Beste Grüsse!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Markus M.

Zitat von: inoma am 17 Juli 2017, 07:20:16
danke, ich dachte erst die Lampe geht ohne Token.

Das war meine Schreibtischlampe, die von Yeelight.
Allerdings auch nur bis zum Firmware Update letzte Woche...
Wer die also kauft: erst einrichten, dann updaten.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0