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

Rince

Ich hab mal eine Wiki Seite erstellt.

Bei mir hat es Anfang der Woche so recht gut funktioniert.
Werde dafür auch einen Diskussionsthread eröffnen. Vorschläge oder Verbesserungen,  einfach Ändern und verbessern den Eintrag :)

https://wiki.fhem.de/wiki/Mi_vacuum

Diskussionsthread:
https://forum.fhem.de/index.php/topic,76940.0.html

Wenn wer eine Step by Step Anleitung für iOS schreiben würde bitte?
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

schlingi

@Rince:
Nach Eingeben des Befehls laut Anleitung

sudo chown -R fhem:dialout /opt/fhem

hat sich bei mir die Kommunikation zwischen FHEM und Alexa aufgehängt. Woran kann das liegen? Wenn ich Alexa über den Raspberry starte, funktioniert es. Aber nicht mehr wie früher... Wie könnte man den Befehl quasi rückgängig machen?
Wenn ich sudo dpkg --get-selections | grep hold eingebe, erscheint "fhem     hold"

MadMax-FHEM

Wo hast du alexa-fhem installiert?

(/opt/fhem/alexa-fhem  ?)

Welcher User startet bei dir alexa-fhem?

(pi ?)

EDIT: Rückgängig geht nur, wenn man weiß welche Rechte bzw. "Besitzer/Gruppen" vorher auf den einzelnen Dateien/Ordnern waren...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

@Rince: vielleicht den Aufruf nur spezifisch für die Übertragene Datei machen:

sudo chown fhem:dialout /opt/fhem/FHEM/72_XiaomiDevice.pm

Und auch den Hinweis, dass das nur gilt, wenn fhem dort installiert ist und auch unter fhem läuft (ist bei meinem Wheezy-System nicht so [gewesen])...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

schlingi

Vielen Dank für die schnelle Antwort. Ja, alexa fhem ist unter /opt/fhem/alexa-fhem installiert. Wie bekomme ich raus, welcher User alexa-fhem startet?

MadMax-FHEM

Wie startest du?

init.d-Script?

Dann steht es dort drin...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

schlingi

In der fhem.cfg heißt es insoweit "system ("sudo /etc/init.d/alexa start > /dev/null 2>&1 &")}"...Meinst Du das?

Esjay

Ganz kurz,was hat die Aktuelle Diskussion mit dem Modul zu tun?

Fangt ihr jetzt schon an die Alexa Sachen Global zu klären?

MadMax-FHEM

@Esjay: sorry!

@schlingi: ja meine ich. Dort steht der User drin der alexa-fhem startet: su -c "pi" cd $ALEXAPATH usw. Was steht da bei dir? Auch "pi", dann: sudo chown -R pi:pi /opt/fhem/alexa-fhem

Ansonsten einen neuen Thread aufmachen und hier den Link posten...
...oder im "offiziellen Problem-Thread" von alexa-fhem noch mal die Problematik schildern:

https://forum.fhem.de/index.php/topic,60452.0.html

EDIT: und zukünftig vorher zumindest nachsehen was denn das jeweilige Kommando/Befehl tut bevor man es einfach anwendet ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

ahlermi

Ich habe das Token aus meiner App ermittelt: a2c89638d54ae37f27c94dcc9a51228dc675663dfd6963a3cfc21348e41ffba90143db63ee66b0cdff9f69917680151e

das command:
define vacuum XiaomiDevice 192.168.69.123 a2c89638d54ae37f27c94dcc9a51228dc675663dfd6963a3cfc21348e41ffba90143db63ee66b0cdff9f69917680151e
macht dann aber:

2017.09.22 20:19:50 3: vacuum: initialized, using AES
2017.09.22 20:19:50 3: vacuum: token decryption using Crypt::Cipher::AES
2017.09.22 20:19:50 1: vacuum: token decryption failed
Asked to truncate 194 bytes, which is greater than Crypt::Cipher::AES's blocksize (16 bytes).

im Log
PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN

Markus M.

Zitat von: ahlermi am 22 September 2017, 20:23:24macht dann aber:
2017.09.22 20:19:50 3: vacuum: initialized, using AES
2017.09.22 20:19:50 3: vacuum: token decryption using Crypt::Cipher::AES
2017.09.22 20:19:50 1: vacuum: token decryption failed
Asked to truncate 194 bytes, which is greater than Crypt::Cipher::AES's blocksize (16 bytes).
im Log

Welche Perl Version, welches Betriebssystem und welche Version der AES Library hast du?
Kannst du mal versuchen Perl und AES auf den neusten Stand zu bringen?

Dein Token ist übrigens 6e5252414e353935687a7861456e5433
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

ahlermi

PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN

ahlermi

Linux openmediavault 4.11.7 #1 SMP Tue Jun 27 12:03:15 CEST 2017 x86_64 GNU/Linux

Debian Wheezy

cpan version Crypt::Cipher::AES
Reading '/root/.cpan/Metadata'
  Database was generated on Fri, 22 Sep 2017 13:17:02 GMT
version is up to date (0.9918).
Crypt::Cipher::AES is up to date (0.053).

Vor zwei Stunden cpan upgrade ausgeführt.

perl -v

This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-linux-gnu-thread-multi
(with 104 registered patches, see perl -V for more detail)
PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN

ahlermi

irgendwas ist da aber auch noch faul:


2017.09.22 21:05:14 2: vacuum: invalid json evaluation: {"result":[{"msg_ver":5,"msg_seq":26,"state":8,"battery":98,"clean_time":0,"clean_area":3960000,"error_code":0,"map_present":1,"in_cleaning":0,"fan_power":60,"dnd_enabled":0}],"id":15}
2017.09.22 21:06:43 3: MAX_0d4a8d(Fenster Küche) onoff: 0
2017.09.22 21:09:37 3: vacuum: disconnecting
2017.09.22 21:09:37 2: vacuum: connecting
2017.09.22 21:09:37 3: vacuum: initialized
2017.09.22 21:09:41 2: vacuum: invalid json evaluation: {"id":16,"code":0,"message":"ok","result":{"state":"ONLINE","auth_fail_count":0,"conn_success_count":1,"conn_fail_count":0,"dhcp_fail_count":0}}
2017.09.22 21:09:41 2: vacuum: invalid json evaluation: {"partner_id":"","id":17,"code":0,"message":"ok","result":{"hw_ver":"Linux","fw_ver":"3.3.9_003077","ap":{"ssid":"NETZ","bssid":"38:10:D5:18:F5:BE","rssi":-46},"netif":{"localIp":"192.168.69.123","mask":"255.255.255.0","gw":"192.168.69.254"},"model":"rockrobo.vacuum.v1","mac":"34:CE:00:EA:7E:70","token":"6e5252414e353935687a7861456e5433","life":7167}}
2017.09.22 21:09:41 2: vacuum: invalid json evaluation: {"result":[{"serial_number":"1387100531890"}],"id":18}
2017.09.22 21:09:41 2: vacuum: invalid json evaluation: {"result":["Europe\/Berlin"],"id":19}
2017.09.22 21:09:45 2: vacuum: invalid json evaluation: {"result":[{"main_brush_work_time":1305,"side_brush_work_time":1305,"filter_work_time":1305,"sensor_dirty_time":1305}],"id":20}
2017.09.22 21:09:45 2: vacuum: invalid json evaluation: {"result":[1305,22605000,2,[1506060000,1506038400]],"id":21}
2017.09.22 21:09:45 2: vacuum: invalid json evaluation: {"result":[{"start_hour":22,"start_minute":0,"end_hour":8,"end_minute":0,"enabled":1}],"id":22}
2017.09.22 21:09:45 2: vacuum: invalid json evaluation: {"result":[],"id":23}
2017.09.22 21:09:47 2: vacuum: invalid json evaluation: {"result":[{"msg_ver":5,"msg_seq":28,"state":8,"battery":99,"clean_time":0,"clean_area":3960000,"error_code":0,"map_present":1,"in_cleaning":0,"fan_power":60,"dnd_enabled":0}],"id":24}
2017.09.22 21:10:10 2: vacuum: invalid json evaluation: {"result":[1305,22605000,2,[1506060000,1506038400]],"id":25}
2017.09.22 21:11:45 3: MAX_0a9db5(Fenster Schlafzimmer Garten) onoff: 0
2017.09.22 21:14:42 2: vacuum: invalid json evaluation: {"result":[{"msg_ver":5,"msg_seq":30,"state":8,"battery":100,"clean_time":0,"clean_area":3960000,"error_code":0,"map_present":1,"in_cleaning":0,"fan_power":60,"dnd_enabled":0}],"id":26}
2017.09.22 21:14:59 2: vacuum: invalid json evaluation: {"result":[{"main_brush_work_time":1305,"side_brush_work_time":1305,"filter_work_time":1305,"sensor_dirty_time":1305}],"id":27}
2017.09.22 21:14:59 2: vacuum: invalid json evaluation: {"result":[1305,22605000,2,[1506060000,1506038400]],"id":28}
2017.09.22 21:14:59 2: vacuum: invalid json evaluation: {"result":[{"start_hour":22,"start_minute":0,"end_hour":8,"end_minute":0,"enabled":1}],"id":29}
2017.09.22 21:14:59 2: vacuum: invalid json evaluation: {"result":[],"id":30}
2017.09.22 21:15:18 2: vacuum: invalid json evaluation: {"result":[{"serial_number":"1387100531890"}],"id":31}


Internals:
   CFGFN
   DEF        192.168.69.123 6e5252414e353935687a7861456e5433
   FD         101
   NAME       vacuum
   NR         578
   STATE      ???
   TYPE       XiaomiDevice
   device_type
   helper:
     ConnectionState connected
     crypt      AES
     delay      0
     dev        03da
     id         d0f2
     ip         192.168.69.123
     last_read  1506109849
     packetid   13
     port       54321
     sequence   -17
     token      6e5252414e353935687a7861456e5433
     packet:
       1          wifi_stats
       10         device_info
       11         get_status
       12         get_status
       2          device_info
       3          get_serial_number
       4          get_timezone
       5          get_consumable
       6          get_clean_summary
       7          get_dnd_timer
       8          get_timer
       9          get_status
Attributes:
   icon       scene_robo_lawnmower
   room       Wohnzimmer
   subType    VacuumCleaner
   webCmd     start:stop:charge
PI4 FHEM, PI3 FHEM, 6 x Echo mit talk2fhem, Siri, SNIPS auf PI3 mit Samson UB1, YeeLight, Homematic, MAX!, 433Mhz, LaCross, Xiaomi Vacuum V1, ESPEasy, Gardena, Telegram, FLOORPLAN, HEOS, Xiaomi Aqara, Sonoff, SolvisMax, SolvisClient, HUE, ESPEasy für Bayernlüfter, Harmony, Tasmota, JKBMS, EASUN

Markus M.

Ich habe hier Perl 5.22 auf Ubuntu 16.04 - da funktioniert alles.
Bei dir machen AES und JSON Probleme.
Ich hab leider keine Ahnung wie ich dir auf der Ebene helfen kann.
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