Page 1 sur 1

[Résolu Oui, mais Non] Aspirateur robot Xiaomi, Python et Synology

Publié : 15 avr. 2017, 09:36
par toutazimuth
Bonjour

Version de Domoticz :V3.7320-7 compilé par Jadhal -version beta avec Python
Machine : Synology Ds213J avec DSM 6.1
Python version : 3.5.1
Aspirateur Xiaomi
Niveau de l'utilisateur : je suis une buze en linuxerie et scripts

Alors je possède un aspirateur robot Xiaomi (produit formidable au demeurant surtout depuis que l'application et les vois sont passées de la langue de Mao à celle de Chatquesxpire), et je souhaiterais l'interfacer avec Domoticz. Rien de bien original.
A priori c'est jouable si j'en crois http://www.domoticz.com/forum/viewtopic ... &start=280
J'ai bien réussi à choper les trames avec l'usage conjoint de Packet sender et wiresharck.
Mais après je bloque pour adapter le script python sur le synology.

Mes questions :
Est ce possible d'interfacer le xiaomi vacuum avec domoticz sur un synology ?
Est ce que des utilisateurs du forum ont réussi cette prouesse ? et si oui comment ?
Le python est il obligatoire pour interfacer ce robot aspi ?

Merci pour vos lumières.

Le script "vacuum.py" que j'ai positionné dans /volume2/@appstore/domoticz/var/scripts/python
et j'ai créé un bouton virtuel avec la commande pour lancer le script "script:///volume2/@appstore/domoticz/var/scripts/python/vacuum.py start"

Code : Tout sélectionner

#!/usr/local/bin/python3.5

import socket
import sys
import codecs

UDP_IP = '192.168.1.25'
UDP_PORT = 54321
INET_ADDR = (UDP_IP,UDP_PORT)

action = str(sys.argv[1])
massage = "213100500000000002f2c97b5872"

if action == "start":
   message_to_send = massage + "2fd096c280746dc2091bad1d30c49ce74da6c88492a5c0e7c427ad0b4ca98c3b08ea35e67b29dddd8624dd1f2ea46ced68fce3c5b7fef8e89eef60b3c777f43a5622"

if action == "pause":
   message_to_send = massage + "3080fdc4d67fe6fd048b63eb6d2cee5f285f8fec54c2e3bc5486641ec620bae160e9717af4d17ce3c0265bcb807644dae475bcaaf089391f6f76fa85b31396af3e26"

if action == "home":
   message_to_send = massage + "30e4006525a8e0420c337fbc2bfc1741369bb9760685aafe250790ee4ea8bda3aafbdfaa47ae0e8518503530fb72579fe8cf334c6a6fcd4cbc94bfb310f64163a80a"

if action == "find":
   message_to_send = massage + "29d24b61f9c826221c4c7a68be606ff324f81fcc282e18fa679d0506e3e805cbfe56323f2dc292f5d609d20782cb6df1abe3b4a9ce062da42e3371126048c2213b3e"

message_to_send = codecs.decode(message_to_send, "hex_codec")
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(message_to_send, INET_ADDR)
sock.close()

Re: Aspirateur Xiaomi, Python et Synology

Publié : 23 avr. 2017, 19:52
par toutazimuth
Bonjour

Problème résolu.
Que soit sur synology ou rasberry, l'interpréteur en début de script est toujours le même !

Code : Tout sélectionner

#!/usr/bin/python
Et avec cela, le script Python de l'aspirateur Xiaomi, sur synology DSM 6.1 avec Domoticz version V3 73.76 (version compilée par Jadahl avec Python plugin), fonctionne parfaitement. Un vrai plaisir de faire un ménage domotisé maintenant !
:mrgreen:

Re: [Résolu] Aspirateur robot Xiaomi, Python et Synology

Publié : 10 juin 2017, 21:30
par toutazimuth
Bonjour

Pour info, suite à la mise à jour du dernier firmware du robot aspirateur par XIAOMI, l'envoi des trames pour le WIFI à changé :(
A priori pour la même commande (start, pause ou home), la trame wifi n'est plus identique comme précédemment, mais elle change à chaque commande !
Donc plus de possibilité de le commander via Domoticz avec cette méthode :shock:

Re: [Résolu] Aspirateur robot Xiaomi, Python et Synology

Publié : 15 juin 2017, 14:09
par deennoo
As tu essaye ceci : https://github.com/aholstenson/miio et lu cela ? http://www.domoticz.com/forum/viewtopic.php?t=15537

Tu as un debut de réponse a coup sur, a tester en tout cas

Re: [Résolu] Aspirateur robot Xiaomi, Python et Synology

Publié : 15 juin 2017, 20:13
par toutazimuth
deennoo a écrit :As tu essaye ceci : https://github.com/aholstenson/miio et lu cela ? http://www.domoticz.com/forum/viewtopic.php?t=15537

Tu as un debut de réponse a coup sur, a tester en tout cas
Bonjour deennoo
Merci pour ta réponse et recherche ;)
Par contre là cela dépasse mes maigres compétences :mrgreen:
Mais si tu as envie des faire un article explicatif sur ton blog, je suis preneur :D

Sinon j'ai constaté que la même trame WIFI (pour une commande donnée) qui est valable le lundi, ne fonctionne pas le mardi et le mercredi, mais refonctionne le jeudi.
J'ai l'impression qu'il y a plusieurs trames WIFI pour la même commande qui sont chacune valable à des périodes différentes ; la trame A est valable à l'instant T, et à T+48H; et ça pour chaque trame.
Ils sont marrants les développeurs de XIAOMI.

Re: [Résolu Oui, mais Non] Aspirateur robot Xiaomi, Python et Synology

Publié : 15 juin 2017, 21:06
par deennoo
Patience patience...je viens de recevoir un capteur qualitée de l'air. Du coup je suis obliger de faire un tuto quand le github l'aura integrer.

En soi rien dz compliquer sur un system linux (pas syno)
Installer nodejs6 puis suivre les indications du forum domoticz

Le tuto ne sera qu'une traduction l'auteur a deja tout fait

Reste a voir si Miio supporte le dernier fw du robot, j'ai vu sur github que certains l'ont deja fait.
il apporte quoi de nouveau ? Attention aux mise a jour, c'est toujours un risque de casser quelque chose qui marche bien (android wear2 a tuer ma LG Gwatchr)

Re: [Résolu Oui, mais Non] Aspirateur robot Xiaomi, Python et Synology

Publié : 16 juin 2017, 10:16
par deennoo
[quote="deennoo"
Reste a voir si Miio supporte le dernier fw du robot, j'ai vu sur github que certains l'ont deja fait sans utiliser miio[/quote]

justement non il ne l'integre pas encore : https://github.com/aholstenson/miio/issues/40

Re: [Résolu Oui, mais Non] Aspirateur robot Xiaomi, Python et Synology

Publié : 16 juin 2017, 10:17
par deennoo
deennoo a écrit :[quote="deennoo"
Reste a voir si Miio supporte le dernier fw du robot, j'ai vu sur github que certains l'ont deja fait sans utiliser miio
justement non il ne l'integre pas encore : https://github.com/aholstenson/miio/issues/40

Re: [Résolu Oui, mais Non] Aspirateur robot Xiaomi, Python et Synology

Publié : 27 juil. 2017, 10:08
par d3smo
Salut à tous, je suis utilisateur de Domoticz et je viens de commander un Xiaomi Robot Vaccum, je devrais le recevoir la semaine prochaine. Je regarde donc ce qui se fait au niveau de l'interfaçage entre l'aspi et Domoticz. De ce que je lis depuis le nouveau firmware du robot le script de commande ne fonctionne plus. On va laisser bosser les devs c'est bien loin de mes compétences pour les aider, mais ma question est toute autre. A l'époque ou il fonctionnait qu'est ce que ce script permettais de faire ? Juste lancer le robot en mode nettoyage, le mettre en pause et faire un retour sur la base ? Ou des chose plus complexes au niveau de son interface comme programmer les passages, recevoir des notifs d'etats etc...