Utiliser Valetudo RE et le contrôler via MQTT - Xiaomi V1 et Roborock S5 uniquement

C’est un V1 ou un S50 ton robot ?

Un V1 de milieu 2020

Bon j’ai pris contact avec un certain @gdiese sur telegram qui m’a proposé une méthode pour mettre a jouer le robot, je ne sais pas comment il a fait mais ça a marché. C’est tres louche, il m’a suffit de taper 2 commande avec python-miio.

C’est le gars qui s’occupe du site https://dontvacuum.me/.

On veut bien que tu nous donnes des précisions, parce que là, ton message ne va aider personne ! :smiley:

Alors en gros, de ce que j’ai lu c’est un gars qui fait du reverse engineering pour les produit Xiaomi. A partir d’un certain firmware il n’est plus possible de faire des mise à jour OTA. Visiblement il reste une faille mais il ne veut pas publier directement la méthode pour pas que ce soit corrigé. Le principe est assez simple et commence par la même méthode que pour le flash, il faut utiliser la commande Mirobo et récupérer le token. L’installation se fait toutes filé sans avoir à uploader le firmware directement, c’est la où je n’ai pas compris comment ça avait fonctionné … J’ai eu un peu peur sur le coup. Au pire je peux transmettre le script en privé, mais j’ai du le contacter directement car j’ai eu un soucis lors de l’installation et il est resté assez vague sur la méthode donc je ne peux pas trop aider. Dn tout cas cela a fonctionné et gratuitement (je lui ai quand même fait un don via PayPal pour le travail fourni)

1 « J'aime »

Bonsoir a tous apres une journée de bataille j’ai reussi a passer mon S5 sous Valetudo-re en revanche je seche pour la partie mqtt j’ai bien des commandes qui se sont créer a la fois dans le broker et dans l’equipement mais c’est illisible en l’etat .
Vous avez une idée ?





Bonsoir,

relis le post depuis le debut c’est expliquer comment faire. ( en 4)

Gérard

Bonjour,
J’ai le même problème que @dreamkiller,
lors de la configuration toutes les infos sont regroupé dans une commande et pas moyen de les dissocié ou d’ajouter une nouvelle commande info même en JSON.
Lorsque j’avais effectué les manipulations dans une ancienne version de ValetudoRE on avait bien les info comme le tuto en JSON et par la suite on pouvait recrée les commandes individuellement.
Cela est dû aux mise a jour ou une mauvaise version installer pour le S50 ? ou une synchronisation qui ne ce fait pas bien dans MQTT ?
Merci de votre aide.

Salut a tous ! Ce tuto a bientôt deux ans, et j’ai récemment repassé mon Roborock sur le Valetudo original de Hypfer , et je dois dire qu’ils ont fait un gros travail sur l’interface qui est vraiment a des années lumières de ce qui etait proposé au départ, et qui existe encore sur le Fork que je conseillais à l’époque « ValetudoRE »

Par contre j’ai dû pas mal retravailler car les commandes MQTT sont toutes totalement différentes de celles d’origine, le Valetudo Mapper ne fonctionne pas il faut utiliser « ICantBelieveItsNotValetudo » sur lequel il est basé, mais au final meme si ce n’est qu’esthétique je suis content du changement, d’autant qu’une commande MQTT existe pour remettre a zéro les consommables alors que de mémoire je ne l’avais pas trouvée sur ValetudoRE…

Quelques captures d’ecran de la nouvelle interface encore en développement :

Page d’accueil :

Menu latéral :

Réglages généraux

Réglages connectivité, on peut y régler un mot de passe pour l’interface web, et la communication MQTT, et ce qui est intéressant c’est qu’un exemple nous montre a quoi va ressembler la stucture des topics MQTT en direct selon les réglages que l’on y fait, la mienne par exemple dit :

The MQTT Topic structure will look like this:
valetudo/roborock/BatteryStateAttribute/level

Ecran des consommables, avec chaque consommable qui s’illumine sur les schema quand on passe la souris sur les noms, c’est tout con mais je trouve ça bien foutu :

Si vous trouvez ca intéréssant, je ferais certainement un tuto dédié, mais il faudrait déja que je mette celui ci a jour :sweat_smile: D’autant plus qu’aujourd’hui de nombreux robots sont devenus compatibles, et pas seulement des Roborock mais aussi des Dreame, Viomi etc …

5 « J'aime »

Merci @HoM3r17 !
As-tu gardé le même robot aspi depuis 2 ans ou tu as changé de modèle ?

En effet ça a sacrement évolué.
Tu as pu passer du RE a valetudo original facilement ?

Oui j’ai toujours mon vieux S50 depuis 2018, il se porte toujours a merveille :wink:

1 « J'aime »

En effet c’était assez simple, j’ai simplement généré une nouvelle image depuis le site https://builder.dontvacuum.me/

Pour le reste comme d’habitude l’idéal est d’avoir une machine sous Linux pour envoyer les commandes, je trouve que pour le prix c’est toujours pratique d’avoir un raspberry pi sous la main, mais j’imagine que c’est faisable depuis une VM ou le WSL intégré à Windows depuis Windows 10 :wink:

va falloir que je me replonge dans la procédure, c’est la même qu’avant?

Pour build l’image tu as coché ca :
-Build update package (for installation with python-miio/RRCC)
ou
-Build for manual installation (requires SSH to install)

J’utilise python-miio par habitude, mis rien n’empêche d’utiliser l’autre version si tu peux te connecter en SSH a ton robot, ou en USB via un shell ADB pour pousser la mise à jour, par contre dans ce cas je ne connais pas les commandes

Ca y est j’ai pu installer sur mon v1.
Dis moi tu arrives à mettre le pack de voix en fr toi?

Perso ça n’a pas touché à mon pack de voix mais j’imagine qu’il est possible de le changer … Si tu n’arrive pas à le flasher tu peux aussi te connecter au robot en SSH ou si tu préfères une interface graphique en SFTP (avec Winscp par exemple sous Windows) et remplacer manuellement les fichiers de voix, par contre je n’ai plus le répertoire d’origine en tête il faudra que je regarde ça .

EDIT je viens de vérifier les fichiers audio sont dans /mnt/data/rockrobo/sounds

Du coup le plus simple c’est de télécharger les fichiers audio sur ton PC et les décompresser dans un dossier de ton choix, et depuis WinSCP :

Se connecter en protocole SCP sur le port 22 et l’IP du robot avec le nom d’utilisateur root :
Capture d’écran 2021-11-29 024758

Aller dans « Avancé » puis « SSH > Authentification » et cocher Permettre l'utilisation de l'agent de connexion et enfin sélectionner la clé privée associée au robot
Capture d’écran 2021-11-29 024827

On arrive si tout va bien dans le répertoire root d’ou on pourra naviguer dans tous les fichiers du robot

Et en naviguant on retrouve les fichiers audio originaux que l’on peut remplacer

Je viens de trouver ce tuto:
je galérerait a récupérer mon token du robot suite a déplacement de mon roborock sur un nouveau réseau wifi.
Du coup j’ai pris les chose en main, installation d’un serveur mqtt sur un odroid c2, installation de JMQTT , flashage du S5 sur Valetudo RE.
C’est juste génial.
Je regrette de ne pas avoir trouver ce fil avant. Plus de cloud Xiaomi ! Excellent !

2 « J'aime »

Je viens de passer mon Robot V1 sous Valutedo RE, et j’ai ensuite vu le message comme quoi Valutedo était revenue à la hauteur de RE, voir l’avais dépassé
En terme de la simple intégration à jeedom, ça change quelques chose ou pas du tout ?
Y à t’il un quelconque intérêt à tout refaire ?

Car de mon coté, la remonté avec JMQTT est ok, le virtuel aussi (me reste à voir pour les cartes, tournantes il me semble sur ma version)

Comment as tu passé ton V1 sous valutedo RE ? J’ai une version 2020 et je ne trouve pas la méthode, visiblement il faut le démonter pour accéder au root