Intégration Spa Intex sous Mqtt

Merci du coup je vais voir si l’auteur du tuto du lien côté home assistant peut m’aider je l’ai retrouvé côté forum anglais si il a converti dans le nouveau format et regarde ton lien en plus.

Bonjour,
Je regardais pour récupérer les données de mon Broker avec cette méthode comme on me l’a indiqué au dessus:

Et avec l’aide de ce lien aussi:

Mais je ne retrouve pas mon « sensor » en ajoutant une carte.

Je vois bien quand la température change l’information ici:
image

Voici ma configuration Yaml:

image

J’ai du mal faire quelque chose mais quoi ?

Merci d’avance,
Bonne journée,

Tu te mélanges pas avec actuel, actual … avec majuscule, avec espace.
Tu devrais faire simple, un seul format partout et en évitant les espaces, vieux reflexe de développeur.

1 « J'aime »

Bonjour à tous,
J’ai pu avancer sur l’intégration de mon spa, il reste des chose à voir sur le visuel sur certain point et la partie #Template Sensor du code à reprendre que je n’ai pas réussi et voir le code automations.yaml.

Voici où j’en suis pour l’instant:

Bon je n’ai pas réussi à créer des dossiers avec les lien dans configuration.yaml, pour l’instant tout est dans configuration.yaml

Je suis encore loin de ce que le développeur à fait :

1 « J'aime »

Bonsoir, j’utilise depuis une semaine, le contrôle de mon spa par esp et mqtt avec le tuto de @yogui79.

Pour l’instant tout roule, je viens de voir ta carte de surveillance, elle m’interesse, es tu prêt à partager, j’ai un ondilo ico, qu’il faut que j’adapte
.

Salut @Patrick44fr,

Pour les données de surveillance du ondilo ico (je suis équipé du même matériel dans mon spa que toi) j’utilise:[CARTE] - Pool Monitoring Card - Piscine température, pH, ORP et TDS

Modification de la carte:

type: custom:pool-monitor-card
temperature: sensor.spa_ferrandiz_temperature
ph: sensor.spa_ferrandiz_ph
salinity: sensor.spa_ferrandiz_salt
orp: sensor.spa_ferrandiz_oxydo_reduction_potential
temperature_unit: °C
temperature_setpoint: 32
temperature_step: 2
language: fr

Pour les commandes en MQTT, pourrais-tu m’en dire plus sur ton installation et comment tu le gère coté Ha.

Pour l’instant j’étais sur un broker coté Jeedom avec les commandes en doublon (coté jeedom et ha) coté ha les commandes ne se mettent pas à jour j’ai l’impression.
de mon coté je retravaille les fichiers indiqué ici pour commander le spa:

Pour l’instant j’ai coupé le ESP parce qu’il envoi des ordres de commande avec une latence bizarre, peut être un soucis du fait que j’ai jeedom en parallèle et que le broker soit sur Jeedom.

Je pensais faire les commandes suivantes mais je ne sais pas où les mettre, tu ne serais pas toi au cas où ?

1 « J'aime »

Bonjour, tout d’abord merci pour les infos de la carte.
coté esp pour le spa, voici ma config
dans configuration.yaml

 Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

# Text to speech
tts:
  - platform: google_translate

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml

sensor: !include_dir_merge_list custom_sensors/
mqtt:  !include custom_sensors/perso_mqtt.yaml

j’ai créé un dossier custom_sensors dans lequel j’y ai mis la conf mqtt du spa dans le fichier perso_mqtt.yaml

# Contrôle du chauffage du SPA
climate:
- unique_id: intex_pool_hvac
  name: "Réglages Spa Intex"

  # Appareil
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
    
  modes: 
    - "heat"
    - "auto"
    - "off"
    - "dry"
    - "fan_only"
    - "heat_cool"
  current_temperature_topic: "IntexSpa/Actual Temperature"
  temperature_command_topic: "IntexSpa/Cmd Temperature Setpoint"
  temperature_state_topic: "IntexSpa/Temperature Setpoint"

  
  
  payload_on: "1"
  payload_off: "0"
  payload_available: "1"
  payload_not_available: "0"
  
  mode_command_topic: "IntexSpa/CMD HVAC Modeset"
  mode_state_topic: "IntexSpa/CMD HVAC Modeset"
  mode_state_template: >-
    {% set values = { '0':'off','1':'auto', '2':'heat','3':'heat_cool', '4':'dry','5':'fan_only' } %}
    {{ values[value] if value in values.keys() else 'off' }}
  mode_command_template: >-
    {% set values = { 'off':'0', 'auto':'1', 'heat':'2',  'heat_cool':'3',  'dry':'4',  'fan_only':'5' } %}
    {{ values[value] if value in values.keys() else '0' }}

  max_temp: "40"
  min_temp: "10"
  icon: "mdi:thermometer-lines"


# Intex Pool ESP- bouton de redémarrage
button:
- unique_id: intex_pool_restart
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd Reset ESP
  payload_press: "reset"
  name: "Reset ESP Spa Intex"
  entity_category: "config"
  device_class: "restart"


# Intex spa Decrementer Set Bouton Température 
- unique_id: intex_pool_decrease
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd decrease
  payload_press: "1"
  name: "Baisser Temp. Spa"
  icon: "mdi:thermometer-chevron-down"

# Intex spa Incrementer Setbouton température
- unique_id: intex_pool_increase
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa Pool"
  command_topic: IntexSpa/Cmd increase
  payload_press: "1"
  name: "Augmenter Temp. Spa"
  icon: "mdi:thermometer-chevron-up"
  
  
# Intex Spa temps Filtrage Input Select
select:
- unique_id: intex_pool_filter_setup_time_select
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd water filter time
  #state_topic: IntexSpa/Filter setup time
  name: "Choix du temps de filtration"
  icon: "mdi:filter-multiple-outline"
  options:
    - "0"
    - "2"
    - "4"
    - "6"

  
  
# Intex Spa temps désinfection Input Select

- unique_id: intex_pool_santizer_setup_time_select
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd Sanitizer time
  #state_topic: IntexSpa/Sanitizer time
  name: "Choix du temps de désinfection"
  icon: "mdi:water-opacity"
  options:
    - "1"
    - "3"
    - "5"
    - "8"
    
    
# MQTT Spa marche arret
switch:
- unique_id: intex_pool_power_switch
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd Power on off
  state_topic: IntexSpa/Power on
  payload_on: "1"
  payload_off: "0"
  name: "Power Spa Intex"
  icon: "mdi:power"
  
  
- unique_id: intex_pool_filter_switch
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd water filter on off
  state_topic: IntexSpa/filter on
  payload_on: "1"
  payload_off: "0"
  name: "Filtration du Spa"
  icon: "mdi:filter-multiple-outline"
  
- unique_id: intex_pool_sanitizer_switch
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd sanitizer on off
  state_topic: IntexSpa/Sanitizer on
  payload_on: "1"
  payload_off: "0"
  name: "Désinfection du Spa"
  icon: "mdi:water-opacity"
  
   
- unique_id: intex_pool_bubble_switch
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd bubble on off
  state_topic: IntexSpa/Bubble on
  payload_on: "1"
  payload_off: "0"
  name: "Bulles Spa"
  icon: "mdi:chart-bubble"


- unique_id: intex_pool_jet_switch
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd water jet on off
  state_topic: IntexSpa/Water jet on
  payload_on: "1"
  payload_off: "0"
  name: "Jets Spa"
  icon: "mdi:sprinkler-variant" 
  
  
- unique_id: intex_pool_heater_switch
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd heater on off
  state_topic: IntexSpa/heater on
  payload_on: "1"
  payload_off: "0"
  name: "Chauffage Spa"
  icon: "mdi:fire"
  

- unique_id: intex_pool_measuring_C_F
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  command_topic: IntexSpa/Cmd Farenheit Celsius
  state_topic: IntexSpa/filter on
  payload_on: "1"
  payload_off: "0"
  name: "Inversion Farenheit/Celsius"
  icon: "mdi:filter-multiple-outline"
  
    
# MQTT Spa Sensors
sensor:
- unique_id: intex_pool_status
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  name: "Anomalie :"
  state_topic: "IntexSpa/Error Number"
  value_template: >
    {% if value|float == 81 %}
      Echec du signal de transmission
    {% elif value|float == 90 %}
      L’eau ne s’écoule pas
    {% elif value|float == 91 %}
      Niveau bas du sel
    {% elif value|float == 92 %}
      Niveau haut du sel
    {% elif value|float == 94 %}
      Température de l’eau trop basse
    {% elif value|float == 95 %}
      La température de l’eau est de 50°C environ
    {% elif value|float == 96 %}
      Erreur système
    {% elif value|float == 97 %}
      Protection anti-marche à sec
    {% elif value|float == 99 %}
      Le capteur de température d’eau est HS
    {% elif value == "END" %}
      Après 72 heures de fonctionnement continu du chauffage, la pompe a été
      mise en veille prolongée automatiquement. La fonction  chauffage est désactivée.
    {% endif %}
  icon: "mdi:alert-circle-outline"
  
  

  
  
- unique_id: intex_pool_actual_temperature
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  name: "Température de l'eau du Spa"
  state_topic: "IntexSpa/Actual Temperature"
  unit_of_measurement: '°c'
  icon: "mdi:pool-thermometer"
  
  
- unique_id: intex_pool_set_temperature
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  name: "Consigne de Température du Spa"
  state_topic: "IntexSpa/Temperature Setpoint"
  unit_of_measurement: '°c'
  icon: "mdi:thermometer-check"
  
  
- unique_id: intex_pool_heater_status
  device:
    identifiers:
      - "Intex Spa"
    manufacturer: "Intex"
    model: "PureSPA"
    name: "Intex Spa SC20"
  name: "Chauffage du Spa "
  state_topic: "IntexSpa/heater state"
  value_template: >
    {% if value|float == 0 %}
      Arrêt
    {% elif value|float == 1 %}
      Attente
    {% elif value|float == 2 %}
      Marche
    {% endif %}
  icon: "mdi:list-status"


  
# Intex spa Binay sensor
binary_sensor:
  - unique_id: intex_pool_pump_communication
    device:
      identifiers:
        - "Intex Spa"
      manufacturer: "Intex"
      model: "PureSPA"
      name: "Intex Spa SC20"
    name: "Dialogue ESP Spa Intex"
    state_topic: "IntexSpa/Communication with pump"
    payload_on: "1"
    payload_off: "0"
    device_class: connectivity
    icon: "mdi:connection"
    


 

j’espère que cela va t’aider ,ici cela fonctionne.

je ne suis pas spécialiste MQTT mais si tu vois les données transitées sur jeedom, elles devraient etre récupérables sur HA.

2 « J'aime »

Merci @Patrick44fr pour ta réponse très complète je vais regarder ça et j’ai trouvé pourquoi j’avais des soucis, un équipement avait l’option « retain » du coup ça envoyé des ordres MQTT en doublon.

Par contre serais-tu répondre à ça :Mise à jour d'entités depuis un broker MQTT

Par curiosité @Patrick44fr ça donne quoi ton visuel ?

Vue de mon smartphone

Pour la partie carte de l’esp mqtt j’utilise mushroom.
J’ai créé des automatisations pour la filtration, la désinfection et le chauffage.

1 « J'aime »

Si tu parle toujours de l’ESP du spa. chez moi les infos remontent automatiquement c’est vraiment bizarre. Sans doute un problème de paramétrage mqtt mais cela dépasse mes compétences. Je pourrais éventuellement te communiquer mon fichier Ino qui a servi à programmer l’ESP, mais je n’y crois pas.
Si tu trouves la solution pour ma curiosité personnelle tu pourras-tu la poster, bon courage

Oui merci pour voir la différence, après c’est surtout quand je redémarre Ha où je n’ai plus les états des entités.

Il faut peut-être créer une automatisation qui au démarrage de Ha après 2mn par ex(déclencheur )fera une action du reset de l’esp et ça devrait rouler.

Le reset du esp ne fait rien mais je dois avoir un problème de configuration

Pour information le code a été mise à jour:

Merci @Patrick44fr pour le partage de code et notamment perso_mqtt.yaml qui m’a enfin permis de faire apparaitre les paramètres et commandes de mon spa :clap:

Il me reste à mettre en forme les cards, car pour le moment c’est brut…

todolist : également mettre à jour mon config.yaml avec la nouvelle « norme » :crazy_face:

@Patrick44fr je ne comprends pas l’utilité ni l’usage des modes « heat », « auto », « off », etc. dans le climate. Aurais-tu un éclaircissement ? Merci !

bonsoir,
en fait je ne m’en sers pas , ils font partie du fichier que j’ai adapté, je récupère juste la température car les icônes et les noms en anglais ne me plaisait pas sur la carte climate.

Bonjour, vous utilisez quoi pour lire le taux de PH du Spa ?

Salut, moi je suis avec le ICO Spa de marque Ondilo

Bonjour, tu as fait comment pour afficher le temps restant pour la durée de désinfection par exemple ?