Gérer ses radiateurs électriques avec Home Assistant + TIKO

Hello tout le monde,
@noiwid merci pour l’intégration, j’ai installé ta solution pour intégré Tiko sur Home Assistant, par contre je n’arrive pas a comprendre pourquoi la data des capteurs de températures et humidités ne remonte pas, peux-tu m’aider sur ce point la ? Merci d’avance

Hello,
Peux tu me montrer à quoi ressemble ce que renvoie l’URL de ton endpoint avec un navigateur (https://www.mondomaine.com/tiko.php?hash=XXXXXX) ?

Chez moi le retour, ca ressemble à ça :

{
boost: false,
frost: false,
absence: false,
disableHeating: true,
bureau_1_cur: 22.7,
bureau_1_tar: 0,
bureau_1_dry: 75,
bureau_1_on: false,
entree_cur: 22.8,
entree_tar: 0,
entree_dry: 71,
entree_on: false,
bureau_2_cur: 23.3,
bureau_2_tar: 0,
bureau_2_dry: 68,
bureau_2_on: false
}

chaque pièce renvoie :
_cur → la temperature actuelle
_tar → la température cible
_dry → l’humidité

ces infos remontent normalement dans ton H.A groupés, via l’API par le sensor tiko_settings, comme l’illustre ce screenshot :

ensuite ces attributs de tiko_settings sont interprétées par H.A en tant que sensor à part entière via ces sensors :

-     platform: template
      sensors:
        bureau_1_humidity:
          friendly_name: Bureau 1 humidité
          value_template: "{{ state_attr('sensor.tiko_settings','bureau_1_dry')}}"
          unit_of_measurement: '%'
          device_class: humidity

Hello,
Alors pour le json envoyé par (tiko.php?hash=XXXXXX) c’est :

{
  "boost": false,
  "frost": true,
  "absence": false,
  "disableHeating": false,
  "entree_cur": 26.4,
  "entree_tar": 7,
  "entree_dry": 65,
  "entree_on": false,
  "ch_enfant_cur": 26.2,
  "ch_enfant_tar": 7,
  "ch_enfant_dry": 68,
  "ch_enfant_on": false,
  "salon_cur": 26.4,
  "salon_tar": 7,
  "salon_dry": 68,
  "salon_on": false,
  "ch_parentale_cur": 27,
  "ch_parentale_tar": 7,
  "ch_parentale_dry": 67,
  "ch_parentale_on": false
}

D’apèrs ce que je vois la data est bien la, par contre dans mon tiko_settings j’ai rien :

le json est le bon le problème semble venir de H.A qui a mal monté les entités,.

as tu des erreurs liées a Tiko dans les logs d’home assistant ? :hushed:

Oui, j’ai pas mal :

Hello j’ai l’impression sous ce que tu as masqué en rouge que l’URL de ton endpoint est paramétrée avec &install=true dedans ?

cette URL d’installation n’est utilisée que via un navigateur pour faciliter l’installation au démarrage, après H.A se repose sur la même base d’url avec le token mais sans ce paramètre…

C’est bon j’ai trouvé, fallais que je met un nom de domaine en place, car j’avais pas avant, c’était une IP static. Donc j’ai bien la data qui remonte maintenant sur HA, par contre j’ai encore quelque erreurs :


d’ailleur je comprend pas pourquoi il essaye de faire encore des appeles sur mon ancien container Docker que j’ai supprimer et j’ai tout remplace sur HA pour qu’il utilisé ta solution php. T’as une idée ?
Merci d’avance

aucune idée pour docker,

peux tu me montrer le contenu des sensors:
tiko_settings et tiko_consumption ? l’info semble pas bien remonter.

J’ai trouvé pour les appelles de l’ancien service docker, les erreurs que j’ai c’est ca :

Le voici :

Hello,
la partie avec la consommation semble vide, tous les sensors sont à 0…

voici à quoi ressemble le sensor Tiko_consumption dans mon fichier yaml:

      - sensor:
        name: Tiko_consumption
        json_attributes:
          - today_total_wh
          - yesterday_total_same_time_wh
          - yesterday_total_same_time_wh
          - last_month_total_wh
          - this_month_total_wh
          - last_month_total_same_day_wh
        command: "curl -s 'https://mondomaine.com/tiko.php?hash=XXXX&consumption=true'"
        unit_of_measurement: W
        scan_interval: 3600
        value_template: 1

quand j’ouvre l’url avec un navigateur, voici le retour que j’ai :

{
today_total_wh: 45,
yesterday_total_same_time_wh: 45,
last_month_total_wh: 158930,
this_month_total_wh: 12541,
last_month_total_same_day_wh: 117489
}

ton URL est elle bien structurée pareil ? (sans le install=true… et avec le paramètre &consumption=true) ?

si oui, que renvoie l’URL quand tu l’ouvres avec un navigateur?

EDIT : en réalité si tu as installé le package avant d’avoir mis ton nom de domaine en place, il y a pas mal de références au nom de domaine dans le fichier YAML, l’idéal est de regénérer un .YAML tout propre :
a) changer l’URL du endpoint dans le fichier tiko.env qui doit être dans le même dossier que tiko.php
b) rappeller l’URL du script sur ton domaine, avec &install=true à la fin
c) récupérer le contenu du YAML et le remettre à la place de ton package…

J’ai tout pareil que toi sur le HA, les URLs sont bonnes.

La solution Tiko a été installer chez moi la semaine dernier donc 0 datas de consomation voici ce que le lien m’envois :

{
  "today_total_wh": 0,
  "yesterday_total_same_time_wh": 0,
  "last_month_total_wh": 0,
  "this_month_total_wh": 0,
  "last_month_total_same_day_wh": 0
}

j’imagine alors que sur l’App Tiko les compteurs sont également tous à 0?

je vais faire un fix pour éviter les divisions par 0 dans l’hypothèse ou les données sont vides…

Oui c’est bien ça, tout est a 0, merci d’avance pour le fix :slight_smile:

le fix est pas évident à tester, est-ce que si tu remplaces les 2 sensors suivant avec ce code, les erreurs disparaissent?

    - platform: template
      sensors:
        tiko_consumption_vs_lastmonth:
          friendly_name: Écart conso. vs mois dernier
          value_template: >-
            {% set last_month_value = state_attr('sensor.tiko_consumption', 'last_month_total_same_day_wh') %}
            {{ (((state_attr('sensor.tiko_consumption', 'this_month_total_wh') - last_month_value) / last_month_value) * 100)|round(0) if last_month_value != 0 else 0 }}
          unit_of_measurement: '%'
    - platform: template
      sensors:
        tiko_consumption_vs_yesterday:
          friendly_name: Écart conso. vs hier
          value_template: >-
            {% set yesterday_value = state_attr('sensor.tiko_consumption', 'yesterday_total_same_time_wh') %}
            {{ (((state_attr('sensor.tiko_consumption', 'today_total_wh') - yesterday_value) / yesterday_value) * 100)|round(0) if yesterday_value != 0 else 0 }}
          unit_of_measurement: '%'

Je viens de remplacer ca l’aire de marche, j’ai plus que ca comme message :


1 « J'aime »

Hello,
ce qui est sur la première image découle de mon Package, et est difficilement fixable, c le réponse de tiko (+ ton serveur web) cumulés peuvent prendre un peu trop de temps…

le second screenshot ne semble pas lié au Package tiko en revanche, le vérité est ailleurs :sweat_smile:

Tien j’ai les deux la qui vient de pop:

Hello,
je me demande d’ou vient ce none en début de ligne…
peux tu me confirmer que ton sensor radiateurs_boost ressemble bien à ca ?

-       switch:
        name: Radiateurs boost
        command_on: "curl -g 'https://mondomaine.com/tiko.php?hash=XXXXX&mode=boost'"
        command_off: "curl -g 'https://mondomaine.com/tiko.php?hash=XXXXX&mode=0'"
        command_state: "curl -g 'https://mondomaine.com/tiko.php?hash=XXXXX'"
        value_template: '{{value_json["boost"]}}'
        icon: '{% if (value_json.boost) %} mdi:sun-thermometer {% else %} mdi:lightning-bolt-outline {% endif %}'

Oui, c’est bien ca que j’ai et les urls m’envois ca :

{
  "mode": "boost",
  "status": true
}
{
  "mode": false,
  "status": true
}
{
  "boost": false,
  "frost": false,
  "absence": false,
  "disableHeating": true,
  "entree_cur": 25.9,
  "entree_tar": 0,
  "entree_dry": 68,
  "entree_on": false,
  "ch_enfant_cur": 26.7,
  "ch_enfant_tar": 0,
  "ch_enfant_dry": 69,
  "ch_enfant_on": false,
  "salon_cur": 25.5,
  "salon_tar": 0,
  "salon_dry": 72,
  "salon_on": false,
  "ch_parentale_cur": 26.5,
  "ch_parentale_tar": 0,
  "ch_parentale_dry": 69,
  "ch_parentale_on": false
}