Tild Piscine

autant pour moi
je crois que je n’ai pas partager les bon fichiers

non c est bien les bon !
execute le service
puis vas dans le journal pour voir

as tu des erreur dans
Parametre => systeme => log

Le service ne se crée même pas.
Pas d erreur le concernant dans les log

si j ai le temps demain
je vais créer une VM avec un home assistant pour test sur une nouvelle installation
je reviens vers toi des que c est fait !

Merci. C est gentil.

en faite j ai bien

DEV Piscine

tild_custom_info_service:

dans mon configuration.yaml


Voila!

Merci :wink:

Bon courage pour la suite du développement!
Surtout si t arrive a envoyer des commandes.

Il doit y avoir moyen aussi de definir l adresse IP du Tild plutot que de brodcaster tous ca :wink:

En tous cas je suis ce fil

Je reviens un peu sur le fil.
Tu as pu avancer sur le sujet?

A tu reussi a envoyer des commandes?

Personne d autre utilise le Tild?

Moi, j’utilise le Tild, mais je ne sais pas comment vous aider…

Salut,

J’ai eu l’occasion de regarder un peu le code proposé pour un ami qui à un boitier Tild chez lui et je me suis mis dans la tête d’en faire une intégration un peu plus propre :slight_smile:

Le résultat est là :

Il faudra toujours procéder à l’installation manuellement, mais ensuite la configuration se fait via l’interface de HA. J’ai pas repris le concept d’auto-détection de l’adresse de la box à chaque requête (pour plus de stabilité) et HA vous demandera de saisir l’adresse IP de votre boitier lors de la configuration. Pensez donc à lui attribuer une IP fixe ou bien assigné lui une adresse IP dans la configuration DHCP de votre box internet. L’intégration s’occupe de faire la mise à jour régulière de l’état du Tild (plus besoin d’automatisation pour ça) et les entités sont ajoutés au sein d’un appareil qui regroupe les entités créées. Par ailleurs, j’ai un peu anticipé la partie actionneur (filtration, pompe, lumière, …) en faisant en sorte que ce ne soit pas vu dans HA comme de simples entités booléennes, mais directement des lumières / interrupteurs. Simplement, sans savoir comment envoyer l’ordre au Tild de changer l’état, ces interrupteurs affichent simplement l’état courant et ne sont pas encore « actionnables ».

Je précise que j’ai développé tout ça sans avoir de boîtier Tild sous la main et uniquement sur la base de ce que j’ai pu récupérer dans le code de @Ricky_D. Pour mes tests, j’ai codé un script émulant une fausse box Tild (fournis dans le code de l’intégration pour les curieux). Dites-moi ce que ça donne sur un vrai boîtier Tild et je pourrais faire des ajustements au besoin.

Pour aller plus loin, il faudrait continuer les travaux de @Ricky_D pour observer comment l’application envoie des ordres au boîtier Tild : allumer/éteindre la lumière, la filtration, … Sans boîtier Tild sous la main, je vais avoir du mal à le faire :slight_smile: Si l’un d’entre vous se sent de faire de la capture de paquets réseaux (genre avec l’application PCAPdroid dispo sur F-Droid), il faudrait faire des captures pendant que vous faites des actions sur votre box pour qu’on puisse analyser ensuite comment l’application du constructeur interagit avec le boitier Tild. Si ça vous tente, dites-moi et je pourrais vous guider.

1 « J'aime »

Bonjour,

Déjà merci beaucoup de votre travail sur cette intégration.
Vous imaginés bien que dès que j’ai vu ce message j’ai testé :blush:
Wahou,
Voici donc quelque info complémentaire

Avec l’application Android

Le traitement est asservi à la filtration et en fonction de la température de l’eau

La filtration n’est pas accessible au déclenchement si la configuration thermo-régulée est active
le vais essayer de vous faire des tests ce WE
en tout cas merci

Merci!!
Je vais tester rapidement des que j ai un peu de temps ( recu mes panneaux solaire ce jour donc montage ce week end malheureusement)

Première remarque. Le status de filtration ou traitement ne remonte pas .
Ma pompe à tournée de 13h30 a 15h mais pas de changement dans HA.

Code sans traitement
28303C485808262E3844FFFF00010001000000002050FFFFFFFF2050FFFFFFFF0812932A08001C000E00120000000900010000002C42040F2A3E111B00341604251023072B4D00000000000000000000

Code avec traitement ( 10h00 ce matin)
28303C485808262E3844FFFF00010001250000002050FFFFFFFF2050FFFFFFFF0811932A08001C000E00110000000900000000002C41040F2A3D091B00021004251023072B4D00000000000000000000

OK, intéressant : j’ai codé un petit script pour aider à l’analyse de la différence entre les données de plusieurs états.

Raw differences: 32, 33, 67, 85, 97, 107, 115, 116, 117, 122, 123, 125
Keys differences: system_date, water_temperature, water_real_temperature

28303C485808262E3844FFFF00010001000000002050FFFFFFFF2050FFFFFFFF0812932A08001C000E00120000000900010000002C42040F2A3E111B00341604251023072B4D00000000000000000000

  • system_date: 2023-09-25T16:34:00
  • toggles_status_code: 0
  • light_color_code: 08
  • light_intensity_code: A
  • water_temperature: 18
  • water_temperature_offset_code: 0
  • filtration_status_code: 0
  • treatment_status_code: 3
  • light_enabled: False
  • treatment_enabled: False
  • filtration_enabled: False
  • pump_enabled: False
  • water_temperature_offset: 0
  • water_real_temperature: 18
  • light_color: red
  • light_intensity: None

28303C485808262E3844FFFF00010001250000002050FFFFFFFF2050FFFFFFFF0811932A08001C000E00110000000900000000002C41040F2A3D091B00021004251023072B4D00000000000000000000

  • system_date: 2023-09-25T10:02:00
  • toggles_status_code: 0
  • light_color_code: 08
  • light_intensity_code: A
  • water_temperature: 17
  • water_temperature_offset_code: 0
  • filtration_status_code: 0
  • treatment_status_code: 3
  • light_enabled: False
  • treatment_enabled: False
  • filtration_enabled: False
  • pump_enabled: False
  • water_temperature_offset: 0
  • water_real_temperature: 17
  • light_color: red
  • light_intensity: None

Au final, on voit ici que les caractères ayant changé entre deux états ne sont pas ceux identifiés par @Ricky_D initialement. Peut-être faudrait-il comparer des données d’état plus proches dans le temps avec exclusivement un seul changement entre deux (allumer/éteindre la filtration par exemple).

Remarque : Configurez avant de tester un temps de rafraîchissement d’une minute pour ne pas avoir trop à attendre dans Home Assistant que l’état soit mis à jour.

PS : le script de comparaison de données d’état est fourni dans les sources au besoin.

Au besoin, j’ai ajouté un service « CCEI Tild: Rafraîchir les données des capteurs » (ccei_tild.refresh) pour forcer le rafraichissement des données des capteurs. C’est lançable via une automatisation, un bouton ou encore depuis « Outils de développement > Services ». Ça pourrait être utile pour capturer les données d’état après un changement.

D’ailleurs, à ce sujet, pour identifier ce qui change lors de l’activation/désactivation de la filtration par exemple, ça pourrait être bien de regarder l’état filtration éteinte, puis allumée et pour finir à nouveau éteinte. De cette manière, on arrivera peut-être plus facilement à identifier ce qui change.

Bonjour,

Voici quelque élément :

Depuis l’application

Tild v1.60 (02/09/21)
Thermorégulé : on
Traitement : Programme

  • (Asservi Filtration)
    Eclairage : OFF
    Couleur Froid
    Intensité Max
    Mode hors gel 0°C
    Type d’auxiliaire : traitement
    Seuille de température auxiliaire : 15°C
    Ajustement température -3°C
    Forcer lors de l’éclairage : on
    Unité de mesure : °C
    Programme (Activite) : programmé
  • Mode WE :off
  • Plage 1 : On – 6H00 – 20H00
  • Plage 2 : Off
  • Plage 3 : Off
    Eclairage : Eteint
    Filtration : Eteinte
    Traitement Eteinte
    la pompe a fonctionnée : 2H00

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010D471C01181C000E000D0000000900410000002004040F264B4B0900260805261023002D4F00000000000001060000

Bonjour,

C’est à nouveau une bonne base, mais pour avancer, il va falloir faire des tests de bascule d’état avec des relèves de données avant/après (et idéalement une 3ème après désactivation) histoire d’identifier ce qui change.

Si je fais passer les data relevés dans mon script, ça donne :

  • system_date: 2023-09-26T08:26:00
  • toggles_status_code: 0 = pompe et lumière éteinte => OK
  • light_color_code: 01 = cold => OK
  • light_intensity_code: C = 100% => OK
  • water_temperature: 13 => Je vois pas la température dans les infos que tu donnes
  • water_temperature_offset_code: 6 = -3°C => OK
  • filtration_status_code: 8 = activé => Pas bon
  • treatment_status_code: 7 = activé => Pas bon
  • light_enabled: False => OK
  • treatment_enabled: True => Pas bon : 7 = activé or ici c’est désactivé. Peut-être qu’ici l’info récupéré est un réglage et non pas l’état courant.
  • filtration_enabled: True => Pas bon : 8 = activé or ici c’est désactivé. Idem traitement ?
  • pump_enabled: False => OK
  • water_temperature_offset: -3 => OK
  • water_real_temperature: 10 => sans température de référence on peux pas savoir
  • light_color: cold => OK
  • light_intensity: 100 => OK

Il faudrait faire plus de tests et de relevés sur l’état de la filtration et du traitement pour comprendre comment est récupéré leur état courant.

Par ailleurs, je me dis que dans toutes ces données, il est probable qu’on y trouve le numéro de série de l’appareil et qu’il serait intéressant d’identifier où il se trouve, car ça permettrait d’isoler la suite de digit affectée à la remonté de cette info (et donc pas à autre chose ! :slightly_smiling_face:).

Bonjour,

Si j’utilise PCAPDroid impossible de me connecter a mon tild par l application
Chez moi un boitier Just-Salt est asservi sur le Tild

Voici quelque élément :

Depuis l’application

Tild v1.60 (02/09/21)
ID : C03601D03D09
Thermorégulé : on
Traitement : Programme
(Asservi Filtration)
Eclairage : OFF
Couleur Froid
Intensité Max
Mode hors gel 0°C
Type d’auxiliaire : traitement
Seuille de température auxiliaire : 15°C
Ajustement température -3°C
Forcer la pompe lors de l’éclairage : on
Unité de mesure : °C
Programme (Activite) : programmé

  • Mode WE :Off
  • Plage 1 : On – 6H00 – 20H00
  • Plage 2 : Off
  • Plage 3 : Off

Eclairage : Eteint
Filtration : Eteinte
Traitement Eteinte
Température Affichée : 13
Pompe a fonctionnée 2H

Sur le boitier Electrique :

Eclairage (tableau Elec): tild (Manuel / Tild / 0)
Pompe (tableau Elec): tild (Manuel / Tild / 0)
AUX (tableau Elec) : tild (Manuel / Tild / 0)

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010D471C01181C000E000D0000000900410000002004040F264B4B0900331205261023002D4F00000000000001060000

Action
Offset -2
Température Affichée : 14

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010D471C01181C000E000D0000000900410000002004040F264B4B0900331205261023002D4F00000000000001060000

Action
Offeset – 1
Température Affichée (dans application ): 15

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010F471C01181C000E000D0000000900410000002004040F264B4B0900541205261023002D4F00000000000001040000

Action
Offset +1
Température Affichée (dans application ): 17

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF0111471C01181C000E000E0000000900010000002604040F2A52520900021305261023002D4F00000000000001010000

Action
Offset +2
Température Affichée (dans application ): 18

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF0112471C01181C000E000E0000000900010000002604040F2A52520900061305261023002D4F00000000000001020000

Action
Offset +3
Température Affichée (dans application ): 18

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF0113471C01181C000E000E0000000900010000002604040F2A52520900111305261023002D4F00000000000001030000

Action
Offset -3
Température Affichée (dans application ): 13
Forcer la pompe lors de l’éclairage : off

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010D471C01101C000E000E0000000900410000002604040F2A52520900151305261023002D4F00000000000001060000

Action
Forcer la pompe lors de l’éclairage : off
Eclairage : on

185BFFFFFFFF2050FFFFFFFF00010001020000001850FFFFFFFF2050FFFFFFFF010D475C01101C000E000E0000000900410000002604040F2A52520900201305261023002D4F00000000000001060000

Action
Forcer la pompe lors de l’éclairage : on
Eclairage : on

185BFFFFFFFF2050FFFFFFFF00010001330000001850FFFFFFFF2050FFFFFFFF010D475C01181C000E000E0000000900400000002604040F2A52520900221305261023002D4F00000000000001060000

Action
Forcer la pompe lors de l’éclairage : on
Eclairage : off
Eclairage (tableau Elec): Manuel (Manuel / Tild / 0)
Pompe (tableau Elec): tild (Manuel / Tild / 0)
AUX (tableau Elec) : tild (Manuel / Tild / 0)

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010C471C01181C000E000E0000000900410000002604040F2A52520900321305261023002D4F00000000000001060000

Action
Eclairage (tableau Elec): tild (Manuel / Tild / 0)
Pompe (tableau Elec): Manuel (Manuel / Tild / 0)
AUX (tableau Elec) : tild (Manuel / Tild / 0)

185BFFFFFFFF2050FFFFFFFF00010001200000001850FFFFFFFF2050FFFFFFFF010C471C01181C000E000E0000000900440000002604040F2A52520900281305261023002D4F00000000000001060000

Action
Eclairage (tableau Elec): 0 (Manuel / Tild / 0)
Pompe (tableau Elec): tild (Manuel / Tild / 0)
AUX (tableau Elec) : tild (Manuel / Tild / 0)

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010C471C01181C000E000E0000000900410000002604040F2A52520900361305261023002D4F00000000000001060000

Action
Eclairage (tableau Elec): Tild (Manuel / Tild / 0)
Pompe (tableau Elec): 0 (Manuel / Tild / 0)
AUX (tableau Elec) : tild (Manuel / Tild / 0)

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010C471C01181C000E000E0000000900410000002604040F2A52520900401305261023002D4F00000000000001060000

Action
Eclairage (tableau Elec): Tild (Manuel / Tild / 0)
Pompe (tableau Elec): Tild (Manuel / Tild / 0)
AUX (tableau Elec) : tild (Manuel / Tild / 0)

Action
Programme : desactivé

185BFFFFFFFF2050FFFFFFFF00010001000000001850FFFFFFFF2050FFFFFFFF010C061C01181C000E000E0000000900410000002604040F2A52520900451305261023002D4F00000000000001060000

Action
Programme : desactivé
Pompe : On

185BFFFFFFFF2050FFFFFFFF00010001210000001850FFFFFFFF2050FFFFFFFF010C461C01181C000E000E0000000900400000002604040F2A52520900471305261023002D4F00000000000001060000