Fil de discussion du [TUTO] Utiliser Valetudo RE et le contrôler via MQTT

Fais un whereis service ou test un systemctl restart valetudo

Hello @noulo ,

Tu as des erreurs dans ton fichier config.json, c’est pour cela que lorsque tu redémarres ton aspi il te recolle le fichier d’origine.
Il faut faire très attention au positionnement et bien respecter les espaces, la position des « , » « {} » et les « : » .

Voici par exemple mon fichier de config pour un robotrock S50 avec une distrib Valetudo RE :

{
  "spots": [],
  "areas": [],
  "ztimers": [],
  "mqtt": {
    "enabled": true,
    "identifier": "Xiaomi_Bas",
    "topicPrefix": "Aspirateur_Bas",
    "autoconfPrefix": "Jeedom_Bas",
    "broker_url": "mqtt://user:password@adresseIP:port",
    "provideMapData": true,
    "caPath": "",
    "mapSettings": {
      "drawPath": true,
      "drawCharger": true,
      "drawRobot": true,
      "border": 2,
      "scale": 4,
      "gradientBackground": true,
      "crop_x1": 30,
      "crop_y1": 70,
      "crop_x2": 440,
      "crop_y2": 440,
      "colors": {
        "floor": "transparent",
        "obstacle_weak": "rgba(0,0,0,0.1)",
        "obstacle_strong": "hsl(120, 20%, 50%)",
        "path": "#333333"
      }
    },
    "mapDataTopic": "Aspirateur_Bas/Xiaomi_Bas/map_data",
    "minMillisecondsBetweenMapUpdates": 1000,
    "publishMapImage": true,
    "publishMapData": true,
    "qos": 1
  },
  "dummycloud": {
    "spoofedIP": "203.0.113.1",
    "bindIP": "127.0.0.1"
  },
  "webInterface": {
    "localization": "fr",
    "hideMapReload": true,
    "style": ""
  },
  "httpAuth": {
    "enabled": false,
    "username": "valetudo",
    "password": "valetudo"
  },
  "telegramBot": {
    "enabled": false,
    "token": "",
    "password": "",
    "host": "",
    "proxy": "",
    "clients": [],
    "sendConsumables": true,
    "sendConsumablesEvery": false
  },
  "allowSSHKeyUpload": true,
  "map_upload_host": "http://127.0.0.1"
}

Dans le fichier de config ci-dessus : « user:password@adresseIP:port » sont à remplacer à ta convenance

@+

Yes c’est bon ça fonctionne.
Merci les gars, vous venez de sauver mon couple :smile:

Je tiens à préciser que le tuto est vraiment bien fait. Je me suis embrouillé avec mes téléchargements différents de firmware et de clés puis avec des petits détails.
Pour info j’ai utilisé la version RE sorti il y a 15 jours, tous est prêt dedans avec le fichier mda entre autre.

Encore merci :slightly_smiling_face:

Bonjour
J’ai exactement le même problème :frowning: si quelqu’un a la solution

Salut @noulo

Je suis bloqué au même endroit que toi :slight_smile:

-Dans cette commande
mirobo --ip 192.168.8.1 --token 123456a7890 update-firmware /home/roborock/v11_001886.pkg
j’ai du y mettre l’adresse IP de mon PC pour que ça fonctionne.

Tu es connecté sur le wifi du robot ? tu ajoutes à la fin de la commande --ip ip-du-pc ? mais je ne comprend pas puisqu’on est connecté au robot on n’a pas accès à internet :frowning:

Salut
Il faut que tu mettes la commande sous cette forme

mirobo --ip 192.168.8.1 --token xxxxxxxxxxxxxxxxxxxx update-firmware --ip 192.168.8.233 /home/pi/roborock/v11_003468.pkg

C’est pour indiquer le l’emplacement de ton fichier à ton robot.

Merci pour ton retour. J’ai essayé sans succès. C’est quoi cette adresse 192.168.8.233 ? je ne comprend pas vu qu’on est connecté en point d’accès wifi on ne peut accéder à aucune autre adresse que celui du robot …

Non c’est l’adresse IP de ton pc sous linux que tu dois mettre.
L’adresse IP que j’ai mis est un exemple que j’ai trouvé dans ce post.
Oui tu es connecté au hotspot de ton robot mais ton robot lui vient « piocher » le fichier sur ton PC.

ha ok, il faut que j’indique quel IP j’ai pour que le robot puisse voir le fichier de config. Merci je vais chercher comment récupérer cette adresse

EDIT : j’ai bien trouvé mon adresse et en regardant l’historique de mes manipulations, j’avais bien testé en mettant l’adresse IP de mon pc mais cela n’a pas fonctionné. Cela vient peut être du fait que j’utilise un pc windows avec un sous système linux …

Oui possible, j’ai cru lire que ça ne fonctionnait pas de cette manière.

Il y a quand même un truc que je ne comprend pas… Vu que l’on fait la manipulation en étant connecté sur le point d’accès wifi de l’aspirateur comment il peut accéder à notre ordinateur vu qu’il n’est pas connecté à Internet !?

C’est le même principe que sur une box ADSL.
Une box envoie et reçois des infos du PC.

Pas besoin d’internet, il fonctionne en local, d’ailleurs le but de Valetudo est que malgré la connexion a ton réseau ton robot ne communique plus du tout vers internet :wink:

Comme expliqué par @noulo, et précisé au début du tuto

L’idéal est d’être sur une machine avec une carte wifi qui utilise nativement Linux, que ce soit un single board type Raspberry Pi sous Raspbian, sur un PC, ou simplement une version live d’une distro Linux sur une clé USB, et si tu veux persister sur une VM, il faut bien s’assurer que la configuration réseau de ta VM passe en mode Bridge par la carte wifi de ton PC, et qu’elle obtiens bien une IP du serveur DHCP du robot (une IP dans le même sous réseau que celle du robot et du PC)

Bonjour
Merci pour ce retour. « Persister » : je n’ai pas le choix car je n’ai pas me machine linux …

tu n’as pas un pc ?
perso j’ai utilisé un live-usb debian et avec ça j’ai pu faire mes manip

Si mais quand il boot en linux le clavier ne fonctionne pas :frowning:

J’ai trouvé un pc où cela fonctionne par contre il faut que je trouve comment copier des fichiers windows sur linux et activer le wifi

Salut,

Sinon comme ça été dit plus haut, tu peux utiliser l’application debian du windows store si tu as windows 10

Je sais c’est moi qui l’ai indiqué mais cela ne passe pas au moment du transfert du firmware …

As tu une distribution à me conseiller ? En effet j’ai fait quelques tests, et il n’y a pas le wifi :frowning: pourtant c’est une carte intel classique

Utilises une image live sur un periphérique USB, si tu ne le sens pas avec uniquement le terminal tu peux utiliser une interface graphique, par exemple Debian Live avec une interface XFCE

Tu formates un périphérique USB et tu « installes » cette image dessus avec Etcher, et tu redémarres ton PC pour booter dessus.

Selon le bios/uefi et ses réglages soit ça va booter automatiquement sur la clé, si ce n’est pas le cas au moment du démarrage il faudra appuyer sur F10 pour acceder au menu Boot et choisir ton périphérique USB, ou le cas échéant F1, F2 ou Suppr peuvent etre utilisés pour accéder aux réglages du bios, et du devrait y trouver un réglage de l’ordre de démarrage.

Ensuite soit tu transfère les fichiers simplement avec une clé USB de ton OS Windows vers ton OS Linux, soit tu re-télécharges le tout depuis le système linux :slight_smile: