Tags : Roborock Saros 10
Cet article n’est pas une collaboration commercial, juste un achat personnel et je partage cela
0. Introduction
La domotique ne se limite pas à la gestion de la lumière, du chauffage ou des prises connectées : elle s’invite aussi dans l’entretien de la maison. Les aspirateurs robots intelligents sont devenus des alliés incontournables pour maintenir un intérieur propre sans effort.
Parmi les modèles les plus récents, le Roborock Saros 10 se démarque par ses fonctionnalités avancées, sa puissance d’aspiration et sa compatibilité avec les écosystèmes connectés. Bonne nouvelle pour les passionnés de domotique : il peut être intégré facilement dans Home Assistant, offrant un contrôle centralisé et la possibilité d’automatiser son utilisation selon vos besoins.
Dans cet article, nous allons :
- Découvrir les caractéristiques principales du Roborock S10
- Installer et configurer l’add-on Roborock pour Home Assistant
- Voir comment piloter et automatiser l’aspirateur depuis une interface unique
1. Description produit
Le Roborock S10 est un aspirateur robot haut de gamme conçu pour assurer un nettoyage complet et intelligent de votre maison. Voici quelques points forts :
✅ Aspiration puissante et efficace sur sols durs et tapis
✅ Station de vidange automatique, pour un entretien simplifié
✅ Fonction serpillère intelligente, avec gestion de l’eau et lavage optimisé
✅ Cartographie avancée LiDAR, permettant de reconnaître et mémoriser plusieurs pièces
✅ Détection d’obstacles améliorée, évitant câbles, meubles et objets divers
✅ Compatibilité avec l’application Roborock, Alexa, Google Home et bien sûr Home Assistant
Grâce à ses capteurs et à son intelligence embarquée, le S10 peut nettoyer de façon ciblée une pièce, une zone définie, ou réaliser un cycle complet de nettoyage automatiquement.
La page du constructeur: https://fr.roborock.com/pages/roborock-saros-10
2. Intégration dans Home Assistant avec l’add-on Roborock
L’un des avantages majeurs de cet aspirateur est sa compatibilité avec Home Assistant grâce à l’add-on Roborock. Cela permet de centraliser son pilotage, mais aussi de l’intégrer à des automatisations avancées (nettoyage programmé selon la météo, déclenchement après un départ de la maison, etc.).
2.1 Pré-requis
- Un serveur Home Assistant fonctionnel
- L’accès à l’add-on Roborock via HACS (Home Assistant Community Store)
- Les identifiants de connexion liés à votre compte Roborock
2.2 Installation de l’add-on Roborock
- Ouvrez Home Assistant
- Rendez-vous sur https://www.home-assistant.io/integrations/roborock
- Cliquer sur Add integration on my HA
- Redémarrez Home Assistant pour valider l’installation
2.3 Configuration de l’aspirateur
- Allez dans Paramètres > Appareils & Services > Ajouter une intégration
- Sélectionnez Roborock
- Connectez-vous avec vos identifiants Roborock
- Home Assistant détecte automatiquement votre S10 et l’ajoute à vos entités
Petit plus, si vous avez comme moi la gestion d’un autre aspirateurs par partage de configuration, vous pouvez aussi le gérer depuis HA
Mes aspirateurs ont tous un petit nom, Wall-E, Eve, M-O….
2.4 Fonctionnalités accessibles depuis Home Assistant
Une fois intégré, vous pouvez :
- Démarrer, mettre en pause ou arrêter un nettoyage
- Envoyer l’aspirateur à sa station
- Lancer un nettoyage par pièce ou par zone
- Consulter l’état actuel (en cours, en charge, batterie restante)
- Programmer des automatisations (ex. lancer un nettoyage quand vous quittez la maison, ou après un cycle de cuisine)
3. Automatisation de l’aspirateur Roborock avec Home Assistant
Pour aller plus loin dans l’intégration du Roborock Saros S10 dans Home Assistant, j’ai mis en place une automatisation qui permet de déclencher le robot selon le jour de la semaine, l’heure et la présence à la maison.
Voici le code YAML utilisé :
alias: Aspirateur_Wall-E-Jours_Heures
description: Démarrer l'aspirateur selon le jour et la présence
triggers:
- at: "16:45:00"
id: Lundi_Mardi
trigger: time
- at: "15:00:00"
id: Mercredi_Jeudi_Vendredi
trigger: time
- at: "10:00:00"
id: Samedi_Dimanche
trigger: time
conditions:
- condition: or
conditions:
- condition: and
conditions:
- condition: template
value_template: "{{ now().weekday() in [0,1] }}"
- condition: trigger
id: Lundi_Mardi
- condition: and
conditions:
- condition: template
value_template: "{{ now().weekday() in [2,3,4] }}"
- condition: trigger
id: Mercredi_Jeudi_Vendredi
- condition: and
conditions:
- condition: template
value_template: "{{ now().weekday() in [5,6] }}"
- condition: trigger
id: Samedi_Dimanche
- condition: or
conditions:
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
- condition: state
entity_id: device_tracker.xiaomi
state: home
actions:
- choose:
- conditions:
- condition: trigger
id: Lundi_Mardi
sequence:
- data: {}
target:
entity_id: vacuum.saros_10
action: vacuum.start
- delay:
minutes: 5
- choose:
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: cleaning
sequence:
- target:
entity_id: input_number.wall_e
action: input_number.increment
data: {}
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: docked
sequence:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
sequence:
- data:
message: >-
Wall-E n'a pas démarré correctement !
(Détection: xiaomi14t)
action: notify.mobile_app_xiaomi14t
- conditions:
- condition: state
entity_id: device_tracker.xiaomi
state: home
sequence:
- data:
message: >-
Wall-E n'a pas démarré correctement !
(Détection: xiaomi)
action: notify.mobile_app_xiaomi
- conditions:
- condition: trigger
id: Mercredi_Jeudi_Vendredi
sequence:
- data: {}
target:
entity_id: vacuum.saros_10
action: vacuum.start
- delay:
minutes: 5
- choose:
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: cleaning
sequence:
- target:
entity_id: input_number.wall_e
action: input_number.increment
data: {}
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: docked
sequence:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
sequence:
- data:
message: >-
Wall-E n'a pas démarré correctement !
(Détection: xiaomi14t)
action: notify.mobile_app_xiaomi14t
- conditions:
- condition: state
entity_id: device_tracker.xiaomi
state: home
sequence:
- data:
message: >-
Wall-E n'a pas démarré correctement !
(Détection: xiaomi)
action: notify.mobile_app_xiaomi
- conditions:
- condition: trigger
id: Samedi_Dimanche
sequence:
- data: {}
target:
entity_id: vacuum.saros_10
action: vacuum.start
- delay:
minutes: 5
- choose:
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: cleaning
sequence:
- target:
entity_id: input_number.wall_e
action: input_number.increment
data: {}
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: docked
sequence:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
sequence:
- data:
message: >-
Wall-E n'a pas démarré correctement !
(Détection: xiaomi14t)
action: notify.mobile_app_xiaomi14t
- conditions:
- condition: state
entity_id: device_tracker.xiaomi
state: home
sequence:
- data:
message: >-
Wall-E n'a pas démarré correctement !
(Détection: xiaomi)
action: notify.mobile_app_xiaomi
mode: single
3.1 Explication du fonctionnement
- Déclenchement selon les jours et horaires
- L’automatisation se lance à des heures différentes selon les jours :
- Lundi et Mardi → 16h45
- Mercredi, Jeudi, Vendredi → 15h00
- Samedi et Dimanche → 10h00
- L’automatisation se lance à des heures différentes selon les jours :
- Condition de présence
Avant de démarrer, Home Assistant vérifie si au moins une personne est à la maison (via la détection des smartphonesxiaomi14t
etxiaomi
).
👉 Objectif : éviter que l’aspirateur ne se mette en route quand il n’y a personne pour surveiller son bon fonctionnement. - Action principale : démarrage du robot
Si les conditions sont remplies, le robot (vacuum.saros_10
) démarre automatiquement à l’heure prévue. - Vérification du démarrage
Après 5 minutes, l’automatisation vérifie si le robot est bien en mode nettoyage :- ✅ S’il est en train de nettoyer → un compteur (
input_number.wall_e
) s’incrémente pour suivre le nombre de cycles effectués. - ❌ S’il est resté docké (n’a pas démarré), une notification est envoyée sur le smartphone de la personne présente pour signaler le problème.
- ✅ S’il est en train de nettoyer → un compteur (
- Notifications intelligentes
La notification précise quel téléphone a détecté la présence (ex. Détection: xiaomi14t), afin de s’adresser directement à la bonne personne.
3.2 Le but de cette automatisation
Cette automatisation rend l’aspirateur :
- Autonome → il se lance automatiquement selon un planning défini.
- Adapté au rythme de vie → horaires différents selon les jours.
- Fiable → vérification que le démarrage a bien eu lieu.
- Interactif → notification envoyée en cas de problème, uniquement à la personne présente.
- Suivi pratique → compteur du nombre de cycles de nettoyage effectués.
En résumé, cela permet de confier totalement la gestion du nettoyage à Home Assistant, tout en gardant un retour d’information fiable.
4. Optimisation intelligente : proposer le nettoyage du rez-de-chaussée le soir
Après avoir automatisé les passages réguliers de l’aspirateur selon un planning défini, on peut aller encore plus loin avec une automatisation plus flexible et contextuelle.
Le but ici est simple :
👉 Proposer automatiquement un nettoyage du rez-de-chaussée après 21h30 si quelqu’un est présent et que le robot n’a pas encore tourné de la journée.
Voici le YAML correspondant :
alias: Aspirateur_Wall-E-RDC-Automatique-Couché
description: >-
Propose de passer l’aspirateur si présence après 21h30, au moins un des deux
est à la maison, et Wall-E n'a pas encore tourné.
triggers:
- entity_id:
- binary_sensor.cm_chambre_parents_occupancy
from: "off"
to: "on"
id: Présent
trigger: state
conditions:
- condition: time
after: "21:30:00"
before: "03:00:00"
- condition: template
value_template: "{{ states('input_number.wall_e') | int == 0 }}"
- condition: or
conditions:
- condition: state
entity_id: device_tracker.xiaomi
state: home
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
actions:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.xiaomi
state: home
sequence:
- data:
message: Bonsoir, est-ce qu'on passe l’aspirateur au rez-de-chaussée ?
data:
actions:
- action: YES_CLEAN
title: Oui
- action: NO_CLEAN
title: Non
action: notify.mobile_app_xiaomi
- conditions:
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
sequence:
- data:
message: Bonsoir, est-ce qu'on passe l’aspirateur au rez-de-chaussée ?
data:
actions:
- action: YES_CLEAN
title: Oui
- action: NO_CLEAN
title: Non
action: notify.mobile_app_xiaomi14t
- wait_for_trigger:
- event_type: mobile_app_notification_action
event_data:
action: YES_CLEAN
trigger: event
- target:
entity_id: vacuum.saros_10
data: {}
action: vacuum.start
- delay: "00:05:00"
- choose:
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: cleaning
sequence:
- target:
entity_id: input_number.wall_e
data:
value: 1
action: input_number.set_value
- conditions:
- condition: state
entity_id: vacuum.saros_10
state: docked
sequence:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.xiaomi
state: home
sequence:
- data:
message: Wall-E n'a pas démarré correctement !
action: notify.mobile_app_xiaomi
- conditions:
- condition: state
entity_id: device_tracker.xiaomi14t
state: home
sequence:
- data:
message: Wall-E n'a pas démarré correctement !
action: notify.mobile_app_xiaomi14t
mode: single
4.1 Explication du fonctionnement
- Déclencheur : détection de présence dans la chambre
- L’automatisation se lance lorsqu’un capteur de présence (
binary_sensor.cm_chambre_parents_occupancy
) détecte une personne dans la chambre parentale. - Cela permet de déclencher la logique au moment du coucher.
- L’automatisation se lance lorsqu’un capteur de présence (
- Conditions avant d’agir
- ⏰ L’heure doit être après 21h30 et avant 3h du matin.
- 🧹 Le robot ne doit pas avoir déjà nettoyé (
input_number.wall_e == 0
). - 🏠 Au moins une personne doit être à la maison (via
device_tracker.xiaomi
ouxiaomi14t
).
- Action : proposition de nettoyage par notification
- Home Assistant envoie une notification interactive au smartphone de la personne présente :
« Bonsoir, est-ce qu’on passe l’aspirateur au rez-de-chaussée ? ». - Deux boutons sont proposés : Oui ou Non.
- Home Assistant envoie une notification interactive au smartphone de la personne présente :
- Exécution selon la réponse
- Si la personne appuie sur Oui, Home Assistant démarre le robot (
vacuum.saros_10
). - Après 5 minutes, une vérification est faite :
- ✅ S’il est en mode nettoyage, l’automatisation enregistre le passage en mettant à jour
input_number.wall_e
à 1. - ❌ S’il est resté docké, une notification est envoyée pour signaler que le démarrage n’a pas fonctionné.
- ✅ S’il est en mode nettoyage, l’automatisation enregistre le passage en mettant à jour
- Si la personne appuie sur Oui, Home Assistant démarre le robot (
4.2 Le but de cette automatisation
Cet automatisme apporte une nouvelle dimension à l’usage du Roborock :
- Proactif → Home Assistant propose le nettoyage au bon moment (soirée, coucher).
- Interactif → l’utilisateur garde la main grâce à une notification avec choix.
- Contextuel → uniquement si personne n’a lancé le robot dans la journée.
- Fiable → vérification et notification en cas d’échec.
En résumé, cette logique transforme l’aspirateur en assistant intelligent, qui suggère son aide quand cela a du sens, plutôt que de tourner aveuglément sur un simple planning.
5. Récupérer les ID des pièces du Roborock
Pour pouvoir créer un dashboard où l’on choisit quelle pièce nettoyer, Home Assistant a besoin de connaître la façon dont le Roborock identifie chaque zone de la maison. Ces identifiants sont appelés Room IDs.
5.1 Comment les récupérer
Dans Home Assistant :
- Dans le menu latéral, allez dans Outils de développement.
- Sélectionnez l’onglet Actions.
- Dans Récupérer les cartes, choisissez l’entité de votre aspirateur (ex.
vacuum.saros_10
). - Cliquez sur Exécuter l’action.
- Les informations apparaissent dans la section Réponse : vous obtenez alors la carte et la liste des pièces avec leurs identifiants uniques.
👉 Exemple de retour obtenu :
vacuum.saros_10:
maps:
- flag: 0
name: "Rez de chaussée"
rooms:
"1": Salle de bain
"2": Salon
"3": Cuisine
"4": Salle à manger
"6": Couloir
5.2 Création du dashboard
L’objectif est simple : avoir sur son dashboard un ensemble de boutons pour choisir si l’on veut lancer l’aspirateur dans toute la maison ou seulement dans une pièce donnée.
5.2.1 Pré-requis
Avant de mettre en place ce dashboard, il faut :
- Avoir intégré le Roborock Saros 10 dans Home Assistant.
- Connaître les Room IDs de vos pièces (exemple :
1 = Salle de bain
,2 = Salon
, etc.). - Installer la carte Mushroom dans Home Assistant (via HACS). Elle permet d’avoir des boutons modernes et personnalisables.
👉 Si vous ne l’avez pas encore, cherchez Mushroom Cards dans HACS et installez-les, puis redémarrez Home Assistant.
5.2.2 Exemple de Dashboard par pièce
Voici un exemple de configuration YAML pour Lovelace.
Il permet :
- De lancer un nettoyage complet.
- De lancer le nettoyage d’une pièce spécifique (Salle à manger, Salon, Cuisine, Salle de bain, etc.).
- De vérifier l’état de l’aspirateur (en cours de nettoyage ou non).
- De le renvoyer au dock.
type: vertical-stack
cards:
- type: horizontal-stack
cards:
- type: custom:mushroom-template-card
primary: Lancer Aspirateur
icon: mdi:robot-vacuum
tap_action:
action: perform-action
perform_action: vacuum.start
data: {}
target:
entity_id: vacuum.saros_10
entity: vacuum.saros_10
- type: custom:mushroom-template-card
primary: Salle à manger
icon: mdi:table-chair
tap_action:
action: perform-action
target:
entity_id: vacuum.saros_10
data:
command: app_segment_clean
params: 4
perform_action: vacuum.send_command
entity: vacuum.saros_10
- type: custom:mushroom-template-card
primary: Salon
icon: mdi:sofa
tap_action:
action: perform-action
target:
entity_id: vacuum.saros_10
data:
command: app_segment_clean
params: 5
perform_action: vacuum.send_command
entity: vacuum.saros_10
- type: horizontal-stack
cards:
- type: custom:mushroom-template-card
primary: Couloir
icon: mdi:rug
tap_action:
action: perform-action
target:
entity_id: vacuum.saros_10
data:
command: app_segment_clean
params: 6
perform_action: vacuum.send_command
entity: vacuum.saros_10
- type: custom:mushroom-template-card
primary: Cuisine
icon: mdi:silverware
tap_action:
action: perform-action
target:
entity_id: vacuum.saros_10
data:
command: app_segment_clean
params: 3
perform_action: vacuum.send_command
entity: vacuum.saros_10
- type: custom:mushroom-template-card
primary: Salle de bain
icon: mdi:bathtub-outline
tap_action:
action: perform-action
target:
entity_id: vacuum.saros_10
data:
command: app_segment_clean
params: 1
perform_action: vacuum.send_command
entity: vacuum.saros_10
- type: horizontal-stack
cards:
- type: custom:mushroom-template-card
primary: État Aspirateur
icon: mdi:robot-vacuum
secondary: ""
entity: binary_sensor.saros_10_nettoyage
icon_color: |
{% if is_state('binary_sensor.saros_10_nettoyage', 'on') %}
green
{% else %}
red
{% endif %}
tap_action:
action: perform-action
perform_action: vacuum.start
target:
entity_id: vacuum.saros_10
- type: custom:mushroom-template-card
primary: Retour au Dock
icon: mdi:home-export-outline
tap_action:
action: perform-action
perform_action: vacuum.return_to_base
data: {}
target:
entity_id: vacuum.saros_10
entity: vacuum.saros_10
icon_color: ""
Avec ce dashboard :
- En haut, vous avez un bouton pour lancer l’aspirateur dans toute la maison.
- Chaque pièce a son propre bouton pour déclencher un nettoyage ciblé.
- En bas, un bouton affiche l’état du robot (nettoie ou non) et un autre permet de l’envoyer au dock.
Cela rend l’utilisation du Roborock simple et visuelle, directement depuis l’interface Home Assistant, sans devoir passer par l’application mobile officielle.
6. Conclusion
L’intégration du Roborock Saros 10 dans Home Assistant transforme le pilotage de votre aspirateur en une expérience fluide et intelligente. Grâce aux automatisations basées sur l’heure, la présence et l’état de l’aspirateur, le nettoyage devient autonome et efficace. Le dashboard par pièce permet un contrôle précis de chaque zone, rendant l’usage encore plus pratique et intuitif.
6.1 Les +
✔️ Automatisation avancée selon jour, heure et présence
✔️ Contrôle précis par pièce grâce au dashboard Lovelace
✔️ Suivi de l’état de l’aspirateur en temps réel
✔️ Commandes simples et centralisées via cartes Mushroom
✔️ Gain de temps et maison toujours propre
6.2 Les –
❌ Configuration initiale un peu technique pour récupérer les IDs de pièces
❌ Dashboard un peu dense si beaucoup de pièces à afficher
❌ Dépendance à Home Assistant et aux notifications mobiles pour certaines automatisations
6.3 Améliorations possibles
💡 Ajouter des scénarios avancés comme la programmation selon la météo ou la présence de visiteurs
💡 Intégrer des alertes pour batterie faible ou nettoyage incomplet directement sur le dashboard
💡 Prévoir des scénarios spécifiques sans lavage, ou avec aspiration plus forte pour certaines pièces ou types de saleté (fonctionnalité à explorer et tester)
En combinant automatisations, dashboard par pièce et contrôle via Home Assistant, le Roborock Saros S10 devient un véritable assistant domestique, rendant votre maison plus propre, organisée et connectée.
Have fun !
La suite aux prochaines épisodes !
Jonathan