Pilotage Chaudière Frisquet ECO Radio System Visio (Suite)

Bonjour à tous,

Je me permet de relancer la machine sur ce sujet qui a déjà fait de grand pas pour les possesseurs de chaudière gaz Frisquet équipé du system Eco Radio System Visio.

Le Topic ayant était archivé par l’équipe du forum car trop de message, j’ouvre ici la suite ici afin de continuer d’échanger et de faire avancer le projet.

Résumé du premier topic et liens utiles :

Objectif :

  • Rendre possible de simuler une sonde extérieur pour la chaudière (avec une mesure de température provenant de HA.
  • Se faire passer pour un satellite (thermostat) frisquet et donner les consignes/température ambiante à la chaudière via HA
  • Se faire passer pour un frisquet connect (si chaudière compatible) pour piloter le chauffage (tout en gardant le(s) satellite Frisquet en fonction).

Matériels :

Le choix se tourne vers un Heltec LoRa 32 v3 trouvable assez facilement sur divers site marchant.

Liens :

Repros GitHub de @Burn (dont un wiki avec le détails des trames décodées)

Repros GitHub de @0xd33d33

Repros GitHub de @Spanky (très brouillon)

Guide de maintenance chaudière (avec des infos utiles)

:tada: Remercîment @mgre , @Burn , @Gib , @FabAng , @0xd33d33, @dgeppert et tout ceux que j’oublie qui on contribué à tout ça !

N’hésitez pas à me dire si il y a des choses à rajouter dans ce premier poste ! Merci

2 « J'aime »

Merci @Spanky pour l’initiative. Je t’avoue avoir été aussi désemparé en voyant le thread précédent être fermé alors qu’il y avait une belle dynamique. Possesseur d’une chaudière Frisquet Eco Radio Visio de 2012, je crois avoir une configuration similaire à la tienne (Chaudière avec satellite mais sans connect). Ce n’est que cet été que je me suis décidé à acheter un Lora 32 v3 pour passer à la pratique. J’ai reparcouru l’historique et testé les repositories de Burn (main et dev), FabAng et le tien. A date, le main de Burn est celui qui compile et fonctionne le mieux chez moi. La branche de dev adopte des spécifiques Connect qui ne correspondent pas à ma configuration.
Sur cette première expérience concluante, je souhaite voir quels moyens pourraient être trouvés pour se substituer au satellite pour changer les consignes, par exemple.
En ce sens, je crois que @aymeric_pournain suivait une piste prometteuse.

Au plaisir de contribuer dans la limite de mon temps et mes moyens.

1 « J'aime »

Hello,

j’ai ressayé chacun des codes proposés dans le précédent thread pour voir les directions prises par chacun. J’ai pu constater que des parts importantes de code sont pensées pour un système Connect. J’ai donc remanié le code pour ne supporter que la sonde extérieure et le satellite Z1 en plus de la chaudière avec module Visio pré2015.

Dans l’idéal j’aimerais fusionner le fonctionnel de burn adapté à Frisquet Connect avec le mien pour proposer une solution clé en main indépendamment de la version de Visio. Mais si déjà j’arrive à piloter ma chaudière ce sera bien :sweat_smile:

Avec le code actuel, j’ai les fonctions suivantes :

  • Automatisme pour envoyer la température de MétéoFrance à l’ESP - opérationnel

  • Automatisme pour enregistrer l’historique des payloads dans un fichier - opérationnel mais activé uniquement pour besoins ponctuels.

  • publication MQTT des capteurs

    • température extérieure - opérationnel
    • température de consigne du satellite Z1 - opérationnel
    • température ambiante du satellite Z1 - opérationnel
    • dernier payload reçu sur le réseau radio - opérationnel
  • Publication MQTT des switchs

    • association sonde extérieure - opérationnel
    • réinitialisation de la mémoire nvs - pas testé
    • mode satellite Z1 - opérationnel vers l’ESP mais en réception

Je considère que la chaudière est la référence pour toutes les informations. La mise à jour des capteurs est donc déclenchée à réception d’un payload radio issu de la chaudière.

J’ai un bug sur le selecteur mode satelliteZ1 dans Home Assistant qui refuse de se mettre à jour à réception d’un payload MQTT. Quelqu’un aurait-il une idée ?

Actuellement, je commence à tester le pilotage de la chaudière en substituant l’ESP au satellite en me basant sur les travaux de @aymeric_pournain

@Spanky je n’ai pas pu compiler ton code qui semblait contenir une variabilisation du code du satellite dans des paquets pré-définis. As-tu été au bout de tes expérimentations ? Je suis curieux d’en apprendre le résultat :slight_smile: .

Salut haribo !

Alors de mon côté j’ai tourné tous l’hiver dernière avec mon code. Jusque j’ai parfois des manque de réactivité après quelques jours, malgré l’envois d’une trame “satellite” toutes les 10min, au bout d’un moment la chaudière ne répond plus à chaque fois (mais les infos de temp’ sur la chaudière correspondent bien…).

Donc de temps en temps je redémarré l’ESP pour que ça repasse par l’étape de synchro.
Mais en tout cas, j’ai pas eu de souci à me substitué au satellite qui est resté sans pile dans un tiroir toute la saisons de chauffe.

Il faut que je m’y replonge, je suis pas certain que le code que j’ai mis sur git soit la dernière version que j’ai.
(Edit : effectivement j’ai “SatZ1_id” dans les trames ce qui fait référence à un variable inclus dans le fichier config.h mais que je n’ai pas mis à jour sur git. tu peux simplement remplacer ça par l’ID de ton satellite ou ajouter la variable dans ton fichier de config).
Mais j’ai codé ça comme un cochon et je pense que c’est loin d’être optimisé et clé en mains c’est certain.
Dès que j’ai du temps à la maison je rouvre VS code :wink:

1 « J'aime »

Bonjour tout le monde ! Content de voir que le projet n’est pas à l’abandon. Je n’ai pas chômé de mon côté.

J’ai repris tout le code de 0 en reprenant les infos d’un peu tout le monde, et j’ai tenté un système quasi clé en main.

Il me manque encore une trame pour réussir à faire ce que je veux, et on pourrait avoir un système vraiment pas mal ! Je vais mettre en ordre et partager mon code si ça intéresse des gens !

Voici un aperçu des fonctions actuelles:

  • Association Frisquet Connect

  • Association Sonde extérieure

  • Récupération Température extérieure (automatique si DS18B20 connecté au Heltec)

  • Définir température extérieure via MQTT (si pas de DS18B20)

  • Température de consigne actuelle Z1

  • Température ambiante Z1

  • Mode actuel (Z1, Z2)

  • Définir le mode (Z1, Z2)

  • Définir les température consigne pour chacun des modes (Z1 et Z2)

  • Mode Boost (ajoute + 2 à la température de consigne et force confort)

  • Réception payload

  • Reset mémoire NVS

  • Mode portail qui permet de configurer le WiFi et les infos MQTT .

Je pense aujourd’hui avoir pas mal décodé la plupart des trames à ma disposition, dont le satellite (je vois qu’il y a besoin là-dessus), donc n’hésitez pas à me demander je pourrais peut-être vous demander.

Si il y a des détenteurs du Frisquet Connect, je suis preneur ! J’aimerai en finir avec ce code :stuck_out_tongue:

Bonne journée !

1 « J'aime »

Hello les gens,
c’est chouette de lire vos progrès. @Freedom tu dis avoir une connect. Dans ce que j’ai lu, j’ai l’impression que la gestion pilotée par l’ESP devrait être différente avec ou sans Connect.
Avec Connect, on a des données supplémentaires dans des trames de 63 octets.
Sans Connect, il faut se contenter des trames à 49 octets pour la lecture des données de la chaudière, et celles à 23 octets pour la gestion des trames satellite (en lecture ou usurpation).
Je m’appuie beaucoup sur le wiki de @Burn pour interpréter les trames. Mais cette documentation aussi claire et fournie soit-elle ne me paraît pas à jour :smirking_face:

Pour ma part, je n’ai pas de Connect, et j’essaie donc de me faire passer pour le satellite, sans succès pour le moment. La fraicheur arrivant, j’essaie de presser le pas.

J’ai perdu un peu de temps car mon association de sonde extérieure était en fait incomplète : j’avais pu récupérer le network id et l’id de sonde mais la chaudière ne l’avait pas enregistrée (oups)… Résultat je ne voyais pas une partie des trames attendues. Bref, c’est rentré dans l’ordre après une suppression de sonde puis réassociation dans le menu radio de la chaudière. Maintenant la température extérieure s’affiche bien sur la chaudière et le satellite (sans Connect).

@Spanky comme toi mon code est plutôt moche. Je cherche à l’assainir et lui faire ressembler à du code objet en m’inspirant d’autres codes. Mais la tâche est ardue car de nombreuses sources sont conçues avec gestion du connect, et en « work in progress » qui plus est.

J’ai découvert la semaine dernière sur Github un nouvel acteur qui a fait une première publication de code orienté objet, ressemblant à ce que je voudrais faire. Il y a également pas mal de bonnes idées dans le fonctionnel (gestion d’entité climat dans HA, gestion des 3 zones, publication d’énergie dans HA…). Mais là encore ce n’est pas encore opérationnel : GitHub - hpoussin/ESPsquet: Frisquet boiler integration to HomeAssistant using MQTT and ESP32 Heltec LoRa V3

J’aimerais également pouvoir mettre à jour et monitorer l’ESP en Wifi pour ne pas avoir besoin de le conserver branché au PC, mais le code OTA ne fonctionne pas chez moi. Peut-être un problème de firewall du PC. Avez-vous rencontré le problème ?

Merci pour cette informations concernant le GitHub, il y a peut-être une informations que je recherche (la récupération du mode et du planning en cours).

Je réécris le code complet pour être sûr d’avoir un truc propre à partager.

Je n’ai pas de Connect, c’est bien le soucis, je n’ai pas de moyen d’analyser les trames de mon côté. Je joue uniquement avec mon Heltec V3. Pour le satellite, on peut l’usurper sans soucis, mais ça me parait pas possible d’utiliser le satellite en plus du Heltec pour la température ambiante (n’hésitez pas à me corriger si je me trompe). Ou alors il faudrait capter le moment ou le satellite envoi l’information, et écrire par dessus directement en envoyant la même trame mais avec une température ambiante différente.

Pour le système OTA, j’ai réussi à le mettre en place sur mon système depuis le début. Je vous partage ça dans la semaine si j’y arrive.

1 « J'aime »