Besoin d'aide : carte domotique existante + Home Assistant

Bonjour à toutes et à tous :slight_smile:

Je suis tout nouveau dans l’aventure Home Assistant mais pas dans la domotique.

Je possède un système domotique depuis plusieurs années, système qui repose sur les cartes « domocan » (pour ceux qui connaissent).

Ces cartes agissent un peu comme l’IPX800, il y’a une carte de type « IN » pour les interrupteurs (contact sec) et une carte de type « GRADATEUR » pour contrôler mes points lumineux.

L’ensemble de ces cartes parlent via un bus CAN et moi je contrôle ce bus avec un convertisseur CAN <-> Trame IP.

Voici mon problème (ou plutôt interrogation) :
J’aimerais utiliser HA pour associer mes interrupteurs (carte « IN ») à mes lumières (carte "GRADATEUR). En gros, avec HA, quand je détecte qu’un interrupteur est impulsé, j’agis sur une action (service) pour allumer une lumière.

J’ai crée une passerelle pour récupérer les trames IP et les intégrer à un flux MQTT (pour HA), exemple quand j’appuies sur un interrupteur je publies en MQTT : /sensor/switch/0208/on (ou off ou pulse ; 0208 = l’id de mon interr.)

Je ne sais pas si je m’y prends bien, mais j’aimerais créer une entité par interrupteur pour pouvoir créer une automatisation, mais je ne sais pas comment m’y prendre (dans les grandes lignes).

Quelqu’un peut t’il me dire si je m’y prends bien ? et si oui, comment je pourrais faire pour « déclarer » ces interrupteurs physiques dans HA ?

Merci à vous :slight_smile:
Benoit D.

Salut,

C’est facile… et c’est déjà prévu :

tu devras probablement adapter un peu à partir de la configuration complète

Merci pour ta réponse.

Effectivement j’avais vu cette solution, mais sauf erreur de ma part, ca ne gère que l’impulsion.

En fait, sur mon système actuel, quand je reste appuyé sur l’interrupteur (physique) ca dimm la lumière, en gros j’ai 2 possibilités :

  • impulsion => toggle de la lumière
  • reste appuyé => dimm de la lumière

Sous HA, un switch n’a que les fonctions on/off
Pour avoir l’intensité, c’est une entité light qu’il faut

La gradation sera possible via un curseur

Salut,

J’ai des lumières MQTT pour lesquelles j’avais fait le driver sur un ESP en MQTT.
Ca donne ça le config :slight_smile:

Mais si tu as beaucoup de lumières, je te conseillerais de regarder le lien MQTT Discovery, comme ça tu peux gérer ça côté MQTT et pas à la main dans le yaml.

light:
  - platform: mqtt
    name: "Ruban Led bureau Bureau"
    state_topic: "bureau/leds/bureau/state"
    command_topic: "bureau/leds/bureau/action"
    brightness_state_topic: "bureau/leds/bureau/brightness/status"
    brightness_command_topic: "bureau/leds/bureau/brightness/set"
    rgb_state_topic: "bureau/leds/bureau/rgb/status"
    rgb_command_topic: "bureau/leds/bureau/rgb/set"
    effect_command_topic: "bureau/leds/bureau/effect/set"
    effect_state_topic: "bureau/leds/bureau/effect/status"
    effect_list:
      - Solid
      - Rainbow
      - Wave
      - Breath
    brightness_scale: 255
1 « J'aime »

La gradation sera possible via un curseur

Du coup, hors gestion via HA (et donc tablette / PC / smartphone), je ne pourrais pas faire varier mes lumières ?

C’est possible, mais ça va dépendre de comment tu fais le lien entre tes lumières et ton MQTT
Tu as dit que tu avais fait ça pour le on/off déjà:

Pour la gradation c’est ce que j’ai fait via les topics dédiés:

    brightness_state_topic: "bureau/leds/bureau/brightness/status"
    brightness_command_topic: "bureau/leds/bureau/brightness/set"
    brightness_scale: 255

Cette config veut dire que ma gradation va de 0 à 255.
Et que les 2 topics vont permettre le retour d’état (state topic) et de donner une nouvelle valeur si on veut changer (command_topic)
Charge à ta passerelle de conversion de passer les bonnes infos.

Je l’ai fait avec arduino d’une façon très basique et ça marche super bien.
Quand je dis basique c’est si une valeur arrive sur le topic, je change la valeur des lumières et je renvoie le nouveau status.
Les changements sont instantanés dans les 2 sens.

Ok je vois le principe.

Si j’ai bien compris, j’ai juste à créer des lights (en MQTT par exemple) et je peux directement créer des automatisations avec pour déclencheur un topic + message MQTT, je n’ai même pas besoin de créer mes interrupteurs finalement.

Je pensais qu’il fallait créer les entités comme interrupteurs + les entités pour les lumières… je découvre je découvre :wink:

En tout cas merci à vous !

Salut,

oui une entité switch c’est vraiment pour les choses qui sont on/off, genre une VMC ou une lumière basique.
Si tu as une lumière qui peut faire plus que ça, variateur, couleur, température, effets,… tu utilise une entité light, elle comprendra toutes les options que tu lui assigne et HA te donnera tous les contrôles nécessaires.

Dans mon exemple que j’ai donné, tu dois configurer manuellement dans le fichier configuration.yaml ta lumière et lister tous les topics et il faut le de l’autre côté ce soit aligné bref moi j’ai 2 lumières c’est pas trop compliqué.

Si tu en a beaucoup ou que tu va en ajouter d’autres, j’avais donné le lien vers l doc MQTT Discovery. C’est l’étape d’après qui te permet de ne rien configurer dans HA et le yaml, mais de tout fournir directement depuis la source, donc automatiquement faire savoir à HA quelles sont les fonctionnalités et les topics de tes lumières et autres élément existants dans ta domotique existante… ça peut éviter pas mal d’heures de double configuration.

Oui donc je pensais que mes interr pouvaient devenir des interr « connectés » via une entité dans HA.

Mais du coup je me pose une question, si demain j’ai des interr physique zigbee ou autre protocole, ils seront vu sous quel forme dans HA ?

Je pense qu’une fois que j’aurais compris la logique tout ira mieux

Tes interrupteurs peuvent devenir « connectés » dans HA s’ils passent par ta passerelle MQTT pour transmettre les ordres et les états.
Si tu as du Zigbee pareil… c’est un interrupteur qui sera créé sous la forme d’une entité switch.

Exemples avec Zigbee:

  • Un interrupteur connecté ou une prise connectée remontent en tant qu’entité « Switch » qui peut faire une on/off
  • Une ampoule ou lampe connectée remontent en tant qu’entité « Light » qui peut faire on/off et tout le reste que l’ampoule sait faire.
  • Une télécommande remonte en tant qu’entité « Sensor » dont la valeur est le bouton pressé qui permet d’être ensuite interprété pour lancer l’action de ton choix.
  • Un thermomètre ou autre capteur sera aussi un ou plusieurs « Sensor » dont la/les valeurs représentent ce qui est mesuré.
  • Un détecteur de mouvement sera en général un « Binary_Sensor » avec la valeur: mouvement / pas mouvement

Bref c’était un petit tour d’horizon :slight_smile: