Intégration Mammotion dans Home Assistant : pilotez vos robots tondeuses Yuka et Luba

Après avoir testé récemment le Mammotion Yuka Mini sur le blog, je me suis intéressé à son intégration dans Home Assistant. Bonne nouvelle : grâce à un plugin HACS, il est désormais possible de piloter vos robots tondeuses Yuka et Luba directement depuis votre installation domotique. Voyons ensemble comment installer l’intégration et ce que cela permet de faire.

Test Mammotion Yuka Mini : un robot tondeuse compact sans-fil périmétrique
Pré-requis
Avant de vous lancer, assurez-vous d’avoir :
- Une instance Home Assistant fonctionnelle (Docker, Raspberry Pi, NUC, etc.)
- Le gestionnaire de paquets HACS déjà installé. Si besoin, on en parle dans cet article.
- Vos identifiants de l’application Mammotion.
Attention concernant vos identifiants, il est recommandé de créer un second compte qui aura accès à votre robot. Sinon, vous risquez de vous retrouver déconnecté depuis votre application. Il vous suffit d’installer l’app sur un second téléphone temporairement et de partager votre robot.
Installation via HACS
- Ouvrez HACS dans votre menu Home Assistant.
- Cliquez sur Intégrations puis sur les trois points en haut à droite > Dépôts personnalisés.
- Ajoutez l’URL suivante et choisissez la catégorie intégration : https://github.com/mikey0000/Mammotion-HA
- Une fois ajouté, cherchez “Mammotion” dans la liste des intégrations disponibles puis installez-le.
- Redémarrez Home Assistant pour appliquer la configuration.

Configuration et utilisation
Une fois configuré, on retrouve donc notre robot avec toutes les données disponibles. Honnêtement, il y en a beaucoup que ça soit sur les contrôles, mais aussi sur les capteurs disponibles.

On retrouve par exemple :
- Niveau de batterie
- Type de connexion (Wi-Fi ou Bluetooth)
- Cycles de batterie
- Statut de la charge
- Position GPS
- Nombre des satellites
- Zone de travail
Exemple d’automatisations pour robot tondeuse
Comme d’habitude, vous pouvez intégrer votre nouveau robot à vos automatisations favorites. Quelques exemples si vous êtes à court d’idées !
- Arrêter la tonte en cas de pluie : si le capteur météo annonce pluie > 70 %, envoyer l’ordre de retour à la base (même si le robot le gère de lui même)
- Reporter la tonte en cas de canicule : si température extérieure > 30 °C, repousser la tonte au soir.
- Démarrer la tonte quand tes panneaux solaires produisent : profiter du surplus solaire entre 11h et 15h.
- Éteindre les lumières du robot automatiquement quand il rentre à la base.
Exemple d’un dashboard Mammotion
J’ai commencé de mon côté à travailler une ébauche de dashboard pour gérer mon robot tondeuse Mammotion. Je n’ai utilisé que les cartes de base fournie par Home Assistant.

Si cela vous intéresse, je vous joins le code. Il vous suffit de remplacer luba_xxxx par votre robot.
- type: sections
max_columns: 4
title: Jardin
path: jardin
icon: mdi:robot-mower
sections:
- type: grid
cards:
- type: heading
heading: Contrôles
heading_style: title
- type: picture
image: /api/image/serve/e2e39c1b3e42adf233756283d06f5e26/512x512
- features:
- type: lawn-mower-commands
commands:
- start_pause
- dock
type: tile
entity: lawn_mower.luba_xxxx
features_position: inline
vertical: false
show_entity_picture: false
hide_state: false
grid_options:
columns: full
- features:
- type: toggle
type: tile
entity: switch.luba_xxxx_manual_light_on_off
features_position: inline
vertical: false
name: Lumière
icon: mdi:light-flood-down
- type: grid
cards:
- type: heading
heading: Informations
heading_style: title
- type: tile
entity: sensor.luba_xxxx_batterie
features_position: bottom
vertical: false
name: Batterie
- type: tile
entity: sensor.luba_xxxx_cycles_de_batterie
features_position: bottom
vertical: false
name: Cycles de batterie
- type: tile
entity: binary_sensor.luba_xxxx_en_charge
features_position: bottom
vertical: false
name: Statut
- type: tile
entity: sensor.luba_xxxx_connexion
features_position: bottom
vertical: false
name: Connexion
- type: heading
heading: Tonte
heading_style: title
badges:
- type: entity
entity: sensor.luba_xxxx_progression
- type: tile
entity: sensor.luba_xxxx_temps_restant
features_position: bottom
vertical: false
name: Temps restant
grid_options:
columns: 6
rows: 1
- type: tile
entity: number.luba_xxxx_hauteur_des_lames
features_position: bottom
vertical: false
name: Hauteur des lames
- type: grid
cards:
- type: heading
heading: Journal
heading_style: title
- type: logbook
target:
entity_id: []
device_id: 2a3a5e0914be24b570a643140371719c
badges: []
header:
card:
type: markdown
text_only: true
content: '# LUBA mini AWD LiDAR'
J’espère que cet article vous sera utile ! Si vous avez des questions, n’hésitez pas.