Nouveau thermostat type proportionnel avec gestion des presets / portes et fenêtres / détection de mouvement / gestion de présence et surconsommation

Publication d’une beta6 qui fixe un problème sur le type de Thermostat thermostat_over_climate.

Ca rend totalement fonctionnel le type thermostat_over_climate qui permet d’utiliser un thermostat existant comme un Versatile Thermostat.

Exemple:

  • j’ai une clim réversible pilotée par une entity climate propriétaire (Tuya dans mon cas),
  • je voudrais utiliser les features du Versatile Thermostat sur ce climate propriétaire,
  • pour cela je créé un Versatile Thermostat en cochant la case thermostat_over_climate :
    Capture d’écran 2023-01-31 à 09.42.05
  • sur la page suivante, la config demande la ‹ climate › entity sous-jacente:
    Capture d’écran 2023-01-31 à 09.51.10
  • et vous avez alors une nouvelle entity climate de type VersatileThermostat qui pilote la sous-jacente.

Exemple chez moi:

  • le climate Tuya lié:
    Capture d’écran 2023-01-31 à 09.51.47
  • le thermostat Versatile qui le pilote avec tous les hvac_modes de la clim :
    Capture d’écran 2023-01-31 à 09.52.37

Dites moi si ça vous parait clair et utile. Je mettrais ça dans la doc quand je vais releaser.

@Jean-Marc_Collin
Bonjour,
Ca fait 2 beta, dont la 2.0.0.beta6 ou je reçois ce message:

Logger: custom_components.versatile_thermostat.climate
Source: custom_components/versatile_thermostat/climate.py:1127
Integration: Versatile Thermostat configuration (documentation, issues)
First occurred: 15:39:05 (1 occurrences)
Last logged: 15:39:05

Unrecognized hvac mode: None
hvac_modes:
  - heat
  - 'off'
min_temp: 10
max_temp: 24
preset_modes:
  - none
  - eco
  - comfort
  - boost
current_temperature: 12
temperature: 12.1
hvac_action: idle
preset_mode: comfort
hvac_mode: heat
type: thermostat_over_switch
eco_temp: 11.1
boost_temp: 13
comfort_temp: 12.1
eco_away_temp: 11
boost_away_temp: 12.5
comfort_away_temp: 11.5
power_temp: 16.3
ext_current_temperature: null
current_power: null
current_power_max: null
saved_preset_mode: comfort
saved_target_temp: 12.1
saved_hvac_mode: null
window_state: 'off'
motion_state: null
overpowering_state: null
presence_state: home
security_delay_min: 120
last_temperature_datetime: '2023-01-31T15:40:49.704296'
last_ext_temperature_datetime: '2023-01-31T15:37:45.595860'
security_state: false
minimal_activation_delay_sec: 10
last_update_datetime: '2023-01-31T15:40:49.704417'
underlying_switch: switch.0x54ef44100050f9c3
on_percent: 0.05
on_time_sec: 19
off_time_sec: 340
cycle_min: 6
function: tpi
tpi_coef_int: 0.6
tpi_coef_ext: 0.04
friendly_name: Versatile Thermostat Salon
supported_features: 17

Ca doit être à l’initialisation quand les valeurs ne sont pas encore récupérées. Je vais voir ça: Error at initialisation · Issue #36 · jmcollin78/versatile_thermostat · GitHub

Sinon à part cette erreur, ca continue normalement ?

Pas certain de moi mais ca doit être bon en beta 7.

Oui, ca fonctionne quand même et comme tu dit c’est au reboot le message.
Avec la beta 7, c’est bon plus d’erreur. :+1:

1 « J'aime »

Bonjour @Jean-Marc_Collin,

Depuis plusieurs jours, je teste ton intégration version 2.0.0.beta8 (bravo pour ce super boulot au passage :+1:).
Je l’ai implémentée dans une de mes pièces, avec un switch sonoff MiniR2 (ON/OFF). Aucun problème.

Je possède un sèche-serviette qui est connecté à une sortie de câble Legrand Zigbee Fil Pilote (Legrand 064882 control via MQTT | Zigbee2MQTT). Ne souhaitant pas faire du ON/OFF, car mon radiateur un panneau de contrôle qui permet d’allumer une souflerie, j’ai utilisé l’astuce suivante: Gestion de bout en bout du chauffage - #499 par impuR_Shozz

Voici mon switch virtuel :

- platform: template
  switches:
    pilote_sdb_rdc:
        friendly_name: "Pilote chauffage SDB RDC"
        value_template: "{{ is_state_attr('switch_seche_serviettes_sdb_rdc', 'sensor_state', 'on') }}"
        turn_on:
          service: select.select_option
          data:
            option: comfort
          target:
            entity_id: select.seche_serviettes_sdb_rdc_cable_outlet_mode

        turn_off:
          service: select.select_option
          data:
            option: comfort-2
          target:
            entity_id: select.seche_serviettes_sdb_rdc_cable_outlet_mode

J’ai testé ce switch via « services » et il fonctionne et est donc bien vu comme un switch.

service: switch.turn_off
data: {}
target:
  entity_id:
    - switch.pilote_sdb_rdc

Pourtant, il n’apparaît pas dans la liste déroulante du champ « Radiateur Entity id » du thermostat.
Certe, j’ai une liste de 80 switchs donc un peu galère pour le trouver :slight_smile:

Cela pourrait faire l’objet d’une évol, si c’est faisable : Autoriser la saisie pour faire de l’auto-complétion, voire autoriser une entité non listée)

D’après ce que je comprends, tu filtres sur DOMAINE SWITCH, du coup je ne vois pas ce que je loupe côté setting.
Si tu as une piste ou un contournement (genre pouvoir saisir l’entité de son switch, je suis preneur.

Merci à toi, et encore chapeau bas pour ce super boulot.

1 « J'aime »

Hello @Daangel27 ,

Merci pour les compliments !

Normalement tous les switchs sont visibles donc je ne vois pas bien ce qui ne va pas. Si ca peut aider voici comment je fais pour les trouver :

   for k in ent_reg.entities:
            v: RegistryEntry = ent_reg.entities[k]
            _LOGGER.debug("Looking entity: %s", k)
            if k.startswith(SWITCH_DOMAIN) or k.startswith(INPUT_BOOLEAN_DOMAIN):
                _LOGGER.debug("Switch !")
                switches.append(k)

En gros je parcours toutes les entities et je prends celles qui commence par ‹ switch. ›
Si j’ai bien compris ton switch s’appelle switch.pilote_sdb_rdc donc ca devrait le faire.

La seule explication c’est qu’il ne soit pas dans le Entity Registry de HA mais là ça me dépasse.

Ce que je te propose, c’est de passer en mode debug :

logger:
  default: info
  logs:
    custom_components.versatile_thermostat: debug

et d’aller dans la page d’une création d’une intégration VersatileThermostat et tu devrais voir lister toutes tes entités et voir un message de type:

"Looking entity: switch.pilote_sdb_rdc"
"Switch !"

Copie colle moi ce que tu vois.

Cela pourrait faire l’objet d’une évol, si c’est faisable : Autoriser la saisie pour faire de l’auto-complétion, voire autoriser une entité non listée)

J’adorerais mais j’ai pas trouvé comment faire ça… Si quelqu’un sait d’ailleurs, ca m’intéresse.

Merci pour ton retour ultra rapide ;).

Ci-dessous la log filtrée pour les switchs. Mais switch.pilote_sdb_rdc n’apparait pas.

Résumé

2023-02-03 16:58:22.306 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonos_sonos_one_crossfade
2023-02-03 16:58:22.306 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.306 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonos_sonos_one_status_light
2023-02-03 16:58:22.306 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.306 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonos_sonos_one_touch_controls
2023-02-03 16:58:22.306 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.311 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.nas_laons_home_mode
2023-02-03 16:58:22.311 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.311 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f4f95
2023-02-03 16:58:22.311 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f238a
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010fa768
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e8d90
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010ec59d
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e433f
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f0f8c
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010edf3b
2023-02-03 16:58:22.312 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.317 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_planification_thermostat_type_quotidien_travail
2023-02-03 16:58:22.317 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.317 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_planification_thermostat_type_quotidien_a_la_maison
2023-02-03 16:58:22.317 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.318 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_bureau_auto_eco
2023-02-03 16:58:22.318 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.318 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_bureau_auto_confort
2023-02-03 16:58:22.318 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.318 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_cuisine_auto_eco
2023-02-03 16:58:22.318 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.319 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_cuisine_auto_confort
2023-02-03 16:58:22.319 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.319 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_salon_auto_eco
2023-02-03 16:58:22.319 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.319 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_salon_auto_confort
2023-02-03 16:58:22.319 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.321 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_leelou_auto_eco
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_leelou_auto_confort
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_palier_auto_eco
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_palier_auto_confort
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_parents_auto_eco
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_parents_auto_confort
2023-02-03 16:58:22.322 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.323 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_clemence_auto_eco
2023-02-03 16:58:22.323 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.323 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_clemence_auto_confort
2023-02-03 16:58:22.323 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.324 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.cuisine_do_not_disturb
2023-02-03 16:58:22.324 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.325 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonos_sonos_roam_crossfade
2023-02-03 16:58:22.325 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.325 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonos_sonos_roam_status_light
2023-02-03 16:58:22.325 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.325 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonos_sonos_roam_touch_controls
2023-02-03 16:58:22.325 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.341 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_cuisine
2023-02-03 16:58:22.341 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.341 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_palier
2023-02-03 16:58:22.341 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.341 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_chambre_parents
2023-02-03 16:58:22.342 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.342 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_salon_canape
2023-02-03 16:58:22.342 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.342 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.detecteur_fumee_bureau_alarm
2023-02-03 16:58:22.342 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.347 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_bureau_escalier
2023-02-03 16:58:22.347 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.347 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.alarme_detecteurs_fumee
2023-02-03 16:58:22.347 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f0f8c_led
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e8d90_led
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f238a_led
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.354 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010edf3b_led
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f4f95_led
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010ec59d_led
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010fa768_led
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e433f_led
2023-02-03 16:58:22.355 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.357 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.congelateur
2023-02-03 16:58:22.357 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.358 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.tv_ampli_xbox_kodi_canal
2023-02-03 16:58:22.358 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.359 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010ea59f
2023-02-03 16:58:22.359 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.374 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f238a_pulse
2023-02-03 16:58:22.374 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.374 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010ea59f_pulse
2023-02-03 16:58:22.374 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.374 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010fa768_pulse
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e8d90_pulse
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f4f95_pulse
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010f0f8c_pulse
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010ec59d_pulse
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e433f_pulse
2023-02-03 16:58:22.375 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.376 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010edf3b_pulse
2023-02-03 16:58:22.376 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.376 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.salle_de_bain_rdc_loudness
2023-02-03 16:58:22.376 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.376 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.chambre_clemence_loudness
2023-02-03 16:58:22.376 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e60e0
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e60e0_led
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_10010e60e0_pulse
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_dressing_auto_eco
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.399 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.schedule_consigne_dressing_auto_confort
2023-02-03 16:58:22.400 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.400 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.seche_serviettes_sdb_rdc_device_mode
2023-02-03 16:58:22.400 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.400 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.seche_serviettes_sdb_rdc
2023-02-03 16:58:22.400 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.402 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.detecteur_fumee_palier_alarm
2023-02-03 16:58:22.402 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.403 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.seche_serviettes_sdb_etage_device_mode
2023-02-03 16:58:22.403 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.403 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.seche_serviettes_sdb_etage
2023-02-03 16:58:22.403 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.405 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.salle_de_bain_rdc_shuffle_enabled
2023-02-03 16:58:22.405 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.405 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.salle_de_bain_rdc_volume_normalization_enabled
2023-02-03 16:58:22.405 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.406 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.google_nest_mini_2_shuffle_enabled
2023-02-03 16:58:22.406 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.406 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.google_nest_mini_2_volume_normalization_enabled
2023-02-03 16:58:22.406 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.408 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.detecteur_fumee_ch_parents_alarm
2023-02-03 16:58:22.408 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.409 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.detecteur_fumee_ch_clemence_alarm
2023-02-03 16:58:22.409 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.410 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_materiel_info_bureau
2023-02-03 16:58:22.410 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.411 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.interrupteur_lumieres_exterieures_device_mode
2023-02-03 16:58:22.411 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.412 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.interrupteur_lumieres_exterieures_led_in_dark
2023-02-03 16:58:22.412 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.412 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.interrupteur_lumieres_exterieures_led_if_on
2023-02-03 16:58:22.412 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.413 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_cave
2023-02-03 16:58:22.413 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.414 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_ikea_lumiere_garage
2023-02-03 16:58:22.414 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.415 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.lave_vaisselle
2023-02-03 16:58:22.415 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.417 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.detecteur_mouvement_cour_led_indication
2023-02-03 16:58:22.417 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.418 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.sonoff_garage
2023-02-03 16:58:22.418 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.423 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.prise_materiel_info_cellier
2023-02-03 16:58:22.423 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.426 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.chambre_clemence_shuffle_enabled
2023-02-03 16:58:22.426 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.426 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.chambre_clemence_volume_normalization_enabled
2023-02-03 16:58:22.426 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_5_ghz_1
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_5_ghz_2_1
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_2_4_ghz_2
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_5_ghz_2
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_5_ghz_2_2
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_2_4_ghz_3
2023-02-03 16:58:22.432 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_5_ghz_3
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_5_ghz_2_3
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_openvpn_client_2
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_openvpn_client_3
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_openvpn_client_4
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_openvpn_client_5
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_wireless_5_ghz
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_wireless_5_ghz_2
2023-02-03 16:58:22.433 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.434 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_openvpn_client_1
2023-02-03 16:58:22.434 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.434 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_guest_2_4_ghz_1
2023-02-03 16:58:22.435 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.435 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_parental_control
2023-02-03 16:58:22.435 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !
2023-02-03 16:58:22.435 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Looking entity: switch.rt_ax95q_wireless_2_4_ghz
2023-02-03 16:58:22.435 DEBUG (MainThread) [custom_components.versatile_thermostat.config_flow] Switch !

Je ne sais pas si cela peut être une piste, mais dans le blueprint d’ @Argaunote, mon switch apparaît bien dans la liste.

Détail du blueprint:

    entity_chauffage:
      name: Chauffage
      description: Interrupteur marche / arrêt du chauffage (switch)
      selector:
        entity:
          domain: switch

ben mince alors… Il est fort cet @Argonaute :wink:
Après il utilise les selector fournis par HA et pas dans le code d’implémentation des intégrations.
Si des fois quelqu’un a une idée, je prends. Je vais fouiller un peu l’internet comme on dit

Some switch are not visible in the list of radiators · Issue #40 · jmcollin78/versatile_thermostat · GitHub

Nouvelle release livrée à l’instant avec le contenu suivant (dont l’ano de dernière minute remontée par @Daangel27 ) et l’auto-completion pour choisir les entités.

This second major release is composed of the following enhancements:

  1. Add a thermostat over a climate mode in addition to the thermostat over switch mode #5
  2. Suggest/select entity in a list on the configuration screens #16
  3. Simplify the configuration by adding a checkbox for feature which should be configured #21
  4. Rework: simplify the entity update when config have change #26

And the following bug fixes:

  1. If temperture is stable, the heater goes in security mode even if the heating percent is low #30
  2. Error with Fan Modes on thermostat over climate type #32
  3. Error at initialisation #36
  4. Failure to initialize #39
  5. Some switch are not visible in the list of radiators #40

Enjoy !

P.S : j’ai mis la doc à jour en début de thread

@Jean-Marc_Collin ,

Je savais que les charmeurs de serpents** étaient fous, mais à ce point là…
Je viens de tester la V2.0.0, Mon switch virtuel est bien dans la liste :+1:
Et en plus, il y a maintenant l’Auto-completion sur chaque champ Entité :heart_eyes:

Extrait log Thermostat:

2023-02-03 23:53:59.814 DEBUG (MainThread) [custom_components.versatile_thermostat.climate] VersatileThermostat-TEST_THERMOSTAT_SDB_RDC - Stopping underlying switch switch.pilote_sdb_rdc
2023-02-03 23:53:59.815 DEBUG (MainThread) [custom_components.versatile_thermostat.climate] VersatileThermostat-TEST_THERMOSTAT_SDB_RDC - Calling update_custom_attributes: {'hvac_mode': <HVACMode.HEAT: 'heat'>, 'type': 'thermostat_over_switch', 'eco_temp': 18.5, 'boost_temp': 20.0, 'comfort_temp': 19.5, 'eco_away_temp': None, 'boost_away_temp': None, 'comfort_away_temp': None, 'power_temp': 13.0, 'ext_current_temperature': 7.3, 'current_power': None, 'current_power_max': None, 'saved_preset_mode': 'eco', 'saved_target_temp': 17.0, 'saved_hvac_mode': None, 'window_state': None, 'motion_state': None, 'overpowering_state': None, 'presence_state': None, 'security_delay_min': 60, 'last_temperature_datetime': '2023-02-03T23:50:37.830232', 'last_ext_temperature_datetime': '2023-02-03T23:40:30.458538', 'security_state': False, 'minimal_activation_delay_sec': 40, 'last_update_datetime': '2023-02-03T23:53:59.815157', 'underlying_switch': 'switch.pilote_sdb_rdc', 'on_percent': 0.29, 'on_time_sec': 175, 'off_time_sec': 424, 'cycle_min': 10, 'function': 'tpi', 'tpi_coef_int': 0.6, 'tpi_coef_ext': 0.01}
2023-02-03 23:53:59.822 INFO (MainThread) [homeassistant.helpers.script.pilote_chauffage_sdb_rdc] Pilote chauffage SDB RDC: Running template script
2023-02-03 23:53:59.822 INFO (MainThread) [homeassistant.helpers.script.pilote_chauffage_sdb_rdc] Pilote chauffage SDB RDC: Executing step call service

Merci à toi. :wink:

** Développeurs Python :laughing: :laughing:

1 « J'aime »

Hello ! Au top ta v2 !! Pour le moment ras, tout fonctionne :slight_smile:

1 « J'aime »

Hello !!
Bon j’ai parlé un peu trop vite :smiley:
Ce matin le thermostat du salon ne veut pas repartir :

hvac_modes:
  - heat
  - 'off'
min_temp: 15
max_temp: 25
preset_modes:
  - none
  - eco
  - comfort
  - boost
current_temperature: 19.4
temperature: 21
hvac_action: idle
preset_mode: comfort
hvac_mode: heat
type: thermostat_over_switch
eco_temp: 17.5
boost_temp: 21.5
comfort_temp: 21
eco_away_temp: 17.5
boost_away_temp: 20
comfort_away_temp: 18
power_temp: 17
ext_current_temperature: 3.6
current_power: null
current_power_max: null
saved_preset_mode: comfort
saved_target_temp: 21
saved_hvac_mode: heat
window_state: 'off'
motion_state: null
overpowering_state: null
presence_state: home
security_delay_min: 60
last_temperature_datetime: '2023-02-06T05:26:55.844806'
last_ext_temperature_datetime: '2023-02-06T07:56:56.022005'
security_state: true
minimal_activation_delay_sec: 10
last_update_datetime: '2023-02-06T08:01:39.212380'
underlying_switch: switch.thermostats_l1
on_percent: 1
on_time_sec: 420
off_time_sec: 0
cycle_min: 7
function: tpi
tpi_coef_int: 0.7
tpi_coef_ext: 0.035
friendly_name: Thermostat Salon
supported_features: 17

Si on regarde le graph de cette nuit, la température a été stable. Donc pas de changement de statut. Mais ce matin à la demande de changement de consigne, on voit clairement que la consigne est supérieure à la température. Et pour moi dans cet état-là précisément, le thermostat ne devrait pas être en sécurité, puisqu’il n’a pas fonctionné de la nuit. Par contre, une fois la consigne changé, et que le thermostat démarré, SI au bout de x temps la température n’évolue pas, là il faut couper. Je sais pas si c’est bien cela que tu avais prévu, mais apparemment dans mon cas cela ne fonctionne pas :slight_smile:

Bonjour,
j’ai remarquer que le thermostat allume le chauffage pour quelques secondes (15 a 30sec) et ce relance quelque seconde plus tard.

Qu’est que je pourrais modifier pour éviter ca ?

PS: j’utilise des thermomètres qui actualise toutes les 15-30sec. Peu être ca le soucis ?

Ok je vois. Il est mode sécurité car il a essayé de s’allumer ( on_percent=1) et la dernière date de température est de 5h25 donc > 1 heure et qu’il est 8h si 'j’en crois ce que je vois.

Et en effet c’est peut être pas terrible.

Dans les paramètres avancés tu as la durée min d’activation. Mets le a 1 min par exemple ou plus selon ton cas pour eviter ça.

1 « J'aime »

c’était bien ca, par défaut 10sec augmanter a 60sec et ca roule :slight_smile:

Hello @frankb ,

J’ai fais une correction rapide qui remet à zéro le compteur du délai de sécurité lorsqu’on change de mode (Heat / Cool / Off) ou de preset. Ca devrait en effet bien améliorer les cas de faux positifs.

Merci pour ton retour !


This release contains this fix:

  1. Reset security mode when preset or hvac_mode change #41

This will drastricaly reduce the case where a thermostat goes to security mode after a long stable duration.

Thanks to Profil - frankb - Home Assistant Communauté Francophone !

Enjoy !

Génial ! Je vais tester ça et te fais un retour bien entendu :slightly_smiling_face::slightly_smiling_face: merci !!

Hello,

Je viens de créer un nouveau Thermostat SDB ETAGE, avec une fenêtre de SDB ETAGE. L’attribut Window_State remonte null, et ce quelque soit l’ouverture que je choisis.

Test 1:
J’ai un Thermostat BUREAU existant créé à partir d’une version plus ancienne. J’ai testé en utilisant la fenêtre de SDB ETAGE, j’ai bien l’attribut window_state = Off.

Test 2:
Thermostat SDB ETAGE avec Fenêtre BUREAU.
L’attribut Window_State remonte null

Je serai tenté de dire que le problème ne vient pas de chez moi. Mais dans le doute…

Pour vérifier, est-ce que quelqu’un peut de créer un nouveau thermostat avec une fenêtre et checker si l’attribut window_state est à null ou Off / On ?
Précisez également la version du Thermostat utilisée.

Merci à vous.