
Sommaire
Récuperer le Token
Pour que le plugin fonctionne il nous faut un élément : Le Token, c’est comme un mot de passe qui permet de parler au robot, il est impératif de l’avoir, depuis le FW 3.3.9_003077 il faut aller chercher ce Token directement dans l’application MiHome de votre appareil mobile :Android :
Pour Android : il existe un super outil MiToolkit qui se présente sous la forme d’un programme Windows téléchargeable ici : https://github.com/ultrara1n/MiToolkit/releases Il vous faut choisir la version 1.5 et télécharger MiToolkit.1.5.zip A l’intérieur tout le nécessaire pour qu’il fonctionne


- Il lance l’application MiHome sur votre appareil
- Fait une sauvegarde de l’application sur votre PC
- Va recherche le Token pour vous dans la base de données de l’application


Ios
Tuto réalisé par @ebretteville qui suit le blog sur tweeter et m’a bien aidé sur la partie Ios :- Créer une sauvegarde avec iTunes de votre iphone/ipad sur lequel vous avez installé l’application Mi-Home et configuré votre robot aspirateur Xiaomi.
- Vous pouvez vérifier la présence de votre sauvegarde dans iTunes Préférences Appareils.
- Ouvrir la sauvegarde réalisée avec iBackup une fois le logiciel installé.
- Cliquez sur open Raw Data
- Localiser sur le volet de gauche la ligne « App/Domain-com.xiaomi.mihome
- Localiser sur le volet de droite la ligne « Documents/xxxxxxxxxx_mihome.sqlite » (xxxxxxxxxx sont des chiffres).
- Cliquer sur export et exporté ce fichier vers un emplacement que vous retrouverez.
- Ouvrir le fichier sauvegardé avec DB Browser sqlite.
- Cliquer sur l’onglet « Exécuter le SQL » et entrer la requêtre suivante
select ZTOKEN from ZDEVICE where ZLOCALIP is 'lipdevotrerobotaspi'
- Rendez-vous sur le site Cryptomathic et prendre son token crypté en 96 caractères, le copier dans « Input Data » avec 00000000000000000000000000000000 dans la case « key » (laisser IV rempli comme tel »). Choisir ECB et décrypt. Puis copier la clé obtenue dans Output.
- Aller sur le site Darkbyte et coller la clé dans la case HEX et cliquer sur decode. Votre token en 32 character apparait dans la case « TEXT ».

Installation du plugin
Il faut connecter en SSH a votre serveur ensuite suivre les instructions du développeur du plugin : https://github.com/mrin/domoticz-mirobot-plugin ici traduit en français Avant l’installation du plugin, on vérifie que vous ayez tout ce qu’il faut :python3
et python3-dev
par la commande :
sudo apt-get install python3 python3-devOn vérifie également que la version de setuptools (un outil de python) est la plus récente possible :
pip3 install -U setuptoolsIl faut également que vous ayez installé les bonnes dépendances Linux par cette commande :
sudo apt-get install libffi-dev libssl-devUne fois que tout est OK, on va dans le répertoire des plugins de Domoticz
cd domoticz/plugins
Et on « clone » le plugin dans votre serveur :
git clone https://github.com/mrin/domoticz-mirobot-plugin.git xiaomi-mirobotEnfin on installe python-mirobo localement, c’est le programme qui permet de faire l’interface avec le Robot Aspi, mais également avec beaucoup d’autres « Gadjets » Wifi de Xiaomi (Ampoules Philips, Purificateur d’air, Ventilateur, Friteuse, Abattant de WC lavant…)
cd xiaomi-mirobot
pip3 install python-mirobo -t .vendors
Enfin on redémarre Domoticz
sudo service domoticz.sh restart
Voila c’est fini pour le « gros bidouillage », maintenant retour au point and click sur l’interface de Domoticz.

Le Plugin
Vous avez votre token ? vous avez installé le plugin ? Vous avez bu une boisson fraîche ? enjoy ! Maintenant allez dans Réglages -> Materiel depuis l’interface Domoticz et ajouter le matériel qui porte le nom : Xiaomi Mi Robot Vacuum.


commandArray = {} if devicechanged['Alarme']=='On' then commandArray['Xiaomi Robot - Control']='Set Level: 10' --clean elseif devicechanged['Alarme']=='Off' then commandArray['Xiaomi Robot - Control']='Set Level: 20' --home end return commandArrayAlors ? Il est de quel type ce script ? All ? Device ? Time ?
Retour d’utilisation
[Mode RTL = ON #cestduvecu] Bien-sur avec l’inclusion du Robot aspi dans Domoticz et un petit bidouillage, je peux le commander vocalement avec ma Google Home : « Ok Google, met l’aspi en route » ou « dis Google arrete l’aspi » = WAF a 200% et l’épate des copains a l’apéro entre deux petits fours ! Le robot en lui même, venant d’un IRobot Roomba 500, je ne peux qui apprécier les avantages de l’appareil :- Puissance d’aspiration,
- Vitesse de travail : 100m² de carrelage et tapis en 1 heure c’est nickel pour un entretien régulier,
- La cartographie qui lui permet de toujours revenir a sa base ou le Roomba ce perdait dans la maison 1 fois sur 5.
- Je ne sais pas il n’est pas encore livré, et honnêtement, je ne le prendrait pas, ne trouvant aucun intérêt a la fonction serpillière qui n’est qu’en faite un simple « mouillage de sol » reprenant une devise de la Marine : Mouillé c’est lavé, c’est que c’est propre.
- Il sera sûrement compatible avec le plugin une fois qu’il sera dans la librairie python-mirobo
