Domotiser sa pompe à chaleur Atlantic Alfea avec un BSB-Lan
Pour chauffer mon domicile, j’ai une Pompe à Chaleur (PAC) Atlantic Alfea Air-Eau avec deux zones, la première zone est pour le chauffage au sol au rez-de-chaussée et la seconde zone pour des radiateurs à l’étage. En plus du chauffage, ma PAC fournit également l’Eau Chaude Sanitaire (ECS) de mon logement. Installée depuis 9 ans, je suis globalement satisfait de mon installation mais je regrette depuis le début de ne pas pouvoir la contrôler autrement que par les deux thermostats d’ambiance installés sur les murs.
Existe-t-il une solution pour une PAC Alfea ? #
Pendant 9 ans, j’ai longtemps cherché comment faire pour controler ma PAC et ma conclusion était qu’elle n’était pas domotisable jusqu’à il y a peu. Je m’étais renseigné auprès d’Atlantic pour utiliser la solution maison Cozytouch, malheureusement ma PAC est trop vieille d’un an pour pouvoir l’utiliser.
J’ai installé des thermostats Tado° car le service client qui m’avait dit : “Ça peut fonctionner ou pas, on est pas sur…” Petit spoiler : ça ne fonctionnait pas, mais maintenant ça pourrait marcher, je n’ai pas réessayé.
J’avais étudié la possiblité d’acheter un controleur Siemens RVS13 à 400€ qu’il fallait installer dans l’unité, mais j’ai été freiné par le cout de la carte, la possible complexité du montage et le gain potentiel que je pouvais espérer. En théorie, ça devait marcher mais on ne trouve pas la carte sur Amazon, donc le remboursement n’était pas garanti et le système peu répandu sur internet donc en cas de galère ça aurai pu être compliqué de s’en sortir.
Au final, je m’étais fait à l’idée que je ne pourrais jamais contrôler mon système de chauffage, puis j’ai découvert la carte BSB-LAN, grâce au forum Home Assistant Communauté Francophone…
Le BSB-Lan #
La solution à mon problème s’appelle BSB-Lan, c’est un petit module électronique qui fonctionne en se pluggant à un Arduino ou un ESP32 que l’on va brancher directement au controleur principal de la PAC, “en écoutant” les communications faites via le protocole BSB (Boiler System Bus), on va avoir accès à de nombreuses mesure de la PAC et pouvoir controler les nombreux paramètres.
L’obtention et la configuration de ce module est un peu particulier car il n’y a pas de boutique pour acheter ce device. Il faut directement contacter son créateur Frederik, par mail. Une fois la carte reçue, il faut à nouveau échanger par mail pour pouvoir la mettre en service. Je vous recommande chaudement de lire ce thread sur le forum hacf, une fois que vous aurez acheté la carte pour démarrer la configuration.
Voici à quoi ressemble le BSB-Lan avec sa “carte support” un ESP32 de la marque Olimex préparée pour être installée dans la PAC :
L’installation varie selon la pompe à chaleur donc ne prenez pas ce que je dit pour argent comptant mais dans mon cas j’ai une carte principale et une carte soeur pour gérer ma PAC. Il m’a suffit de me brancher un cable sur le connecteur X86 (qui correspond au port de communication avec les thermostats) de ma PAC au bornier sur le BSB-Lan pour que le controleur fonctionne (après avoir fourni une source d’alimentation bien entendu, un chargeur USB suffit).
Sur la photo, le port X86 correspond au connecteur vert clair en bas à gauche de la carte ou 2 fils (rouge et bleu) sont connectés. J’utilise un chargeur de téléphone Apple, mais depuis j’ai installé une prise avec des ports USB dans un boitier.
Une fois installé, l’interface graphique du BSB-Lan est accessible via son ip que vous obtiendrez via votre routeur :
Cette capture montre tous les menus possibles d’une pompe à chaleur Alfea, à gauche le nom du menu et à droite le numéro de l’option dans la PAC. Je vous rassure tout de suite, le nombre de menu peut paraitre intimidant mais il y en a beaucoup qui ne sont pas utiles. En effet, je n’ai que 2 circuits de chauffe et l’ECS sur mon installation donc je n’ai besoin d’accéder qu’à ces menus, les autres n’auront aucune incidence sur mon installation.
L’interface graphique est un peu lente à l’usage chez moi mais maintenant, je peux modifier les différentes température de consigne de mon logement, changer le mode de chauffage, forcer le ballon d’eau chaude à chauffer, modifier les heures de chauffage et monitorer différentes température…
Intégration du BSB-Lan dans Home Assistant #
Bon, cette interface est fonctionnelle mais un peu austère, je voudrais avoir toutes ces infos dans mon instance Home Assistant. Pour faire cela, je vous conseille d’utiliser MQTT pour que BSB-Lan et Home Assistant communiquent entre eux, je ne vais pas expliquer comment installer et configurer MQTT, vous trouverez ça sans aucune difficulté sur internet.
Vous aurez besoin de configurer dans les settings du BSB-Lan les informations de connexion au serveur MQTT et surtout le topic MQTT que vous souhaiterez utiliser, dans mon cas le topic s’appelle BSB
et surtout les propriétés que vous voulez exporter.
Petit conseil : ajouter les propriétés une par une en vérifiant que les valeurs dans le serveur MQTT soient correctes.
Ainsi, je vous partage un tout petit morceau de mon configuration.yaml
pour déclarer une entitée utile de ma PAC :
mqtt:
sensor:
############################################################
## MQTT BSB LAN ##
############################################################
- name: "Mode de chauffe RDC"
state_topic: "BSB/700"
unique_id: "pac/mode_chauffe_rdc"
device:
{
identifiers: ["00000002"],
name: "BSB-LAN",
model: "Olimex ESP32",
manufacturer: "Github",
}
…
Dans cet exemple, pour choisir le mode de chauffage de ma PAC, la propriété est la numero 700. Ainsi dans MQTT une valeur avec la clé BSB/700
sera créée avec l’état à jour de mon mode de chauffage pour ma zone 1.
Cette configuration en yaml pour déclarer les différentes entitées est très répétitive, je vous met un lien vers
le contenu intégral de ma config si besoin, mais prenez garde !
La configuration est fortement liée aux fonctionnalités de votre PAC, par exemple sur la mienne la consommation retourne des valeurs farfelues donc je ne l’utilise pas, donc certaines entitées peuvent fonctionner chez moi mais pas chez vous et inversement, ou alors le numéro de la propriété n’est pas la même c’est aussi une chose que j’ai constaté en parcourant divers sujets dans le forum HACF.
Maintenant que toutes les entitées sont déclarées et disponibles dans Home Assistant il ne reste plus qu’à créer les différents composants que l’on va pouvoir utiliser sur un écran de dashboard.
climate:
- name: "RDC"
payload_on: 1
payload_off: 0
modes:
- auto
- heat
- cool
- "off"
mode_state_topic: "BSB/700"
mode_state_template: >-
{% set values = { '0 - Mode protection':'off', '1 - Automatique':'auto', '2 - Réduit':'cool', '3 - Confort':'heat'} %}
{{ values[value] if value in values.keys() else 'off' }}
mode_command_topic: "BSB"
mode_command_template: >-
{% set values = { 'off':'S700=0', 'auto':'S700=1', 'cool':'S700=2', 'heat':'S700=3'} %}
{{ values[value] if value in values.keys() else '0' }}
current_temperature_topic: "BSB/8740"
min_temp: 17
max_temp: 28
temp_step: 0.5
temperature_state_topic: "BSB/710"
temperature_command_topic: "BSB"
temperature_command_template: "{{'S710='+ (value| string)}}"
- name: "Etage"
payload_on: 1
payload_off: 0
modes:
- auto
- heat
- cool
- "off"
mode_state_topic: "BSB/1000"
mode_state_template: >-
{% set values = { '0 - Mode protection':'off', '1 - Automatique':'auto', '2 - Réduit':'cool', '3 - Confort':'heat'} %}
{{ values[value] if value in values.keys() else 'off' }}
mode_command_topic: "BSB"
mode_command_template: >-
{% set values = { 'off':'S1000=0', 'auto':'S1000=1', 'cool':'S1000=2', 'heat':'S1000=3'} %}
{{ values[value] if value in values.keys() else '0' }}
current_temperature_topic: "BSB/8770"
min_temp: 17
max_temp: 28
temp_step: 0.5
temperature_state_topic: "BSB/1010"
temperature_command_topic: "BSB"
temperature_command_template: "{{'S1010='+ (value| string)}}"
- name: "ECS"
payload_on: 1
payload_off: 0
modes:
- heat
- "off"
mode_state_topic: "BSB/1600"
mode_state_template: >-
{% set values = { '0 - Arret':'off', '1 - Marche':'heat'} %}
{{ values[value] if value in values.keys() else 'off' }}
mode_command_topic: "BSB"
mode_command_template: >-
{% set values = { 'off':'S1600=0', 'heat':'S1600=1', 'heat_cool':'S1600=2'} %}
{{ values[value] if value in values.keys() else '0' }}
current_temperature_topic: "BSB/8830"
min_temp: 37
max_temp: 52
temp_step: 1
temperature_state_topic: "BSB/1610"
temperature_command_topic: "BSB"
temperature_command_template: "{{'S1610='+ (value| string)}}"
ATTENTION : Cette configuration des climate
a une limite importante !
Il n’est possible de changer la température de la zone uniquement que lorsque le chauffage est en mode “Auto”, c’est une limitation du composant actuelle mais personnellement cela ne me dérange pas, je ne change quasi jamais le mode en période de chauffe.
Les entitées et les composants sont prêts, il ne reste plus qu’un peu de customisation des dashboards, pour obtenir un petit écran résumant les données importantes de ma PAC dans Home Assistant :
Et si j’ai besoin d’avoir une vue plus détaillée, j’ai créée une seconde vue qui affiche l’état complet de ma PAC :
Je suis assez content du résultat dans Home Assistant, bien sur vous pouvez ajouter ces composants climate
sur Homekit ou Google Home.
Quelques automations pour bien gérer sa PAC #
Une fois que j’ai bien apprivoisé le BSB-Lan, j’ai pu mettre en place 2 automations pour gagner encore en confort.
Verification automatique de l’heure #
En cas de coupure électrique, ma PAC ne conserve pas l’heure et du coup elle redémarre à 00:00 le 01/01/2007. Ce qui était assez problématique surtout lorque l’on ne se rendait pas compte qu’il y avait eu une coupure. En effet le chauffage est fortement lié à l’heure de la journée, on ne chauffe pas la nuit et on met en marche le chauffe-eau peu avant d’avoir besoin de l’eau chaude. En exposant l’heure de la PAC via MQTT j’ai fait une petite automatisation qui vérifie tous les jours à minuit que la PAC est à l’heure, et ainsi la PAC est toujours à l’heure.
Un petit soucis de la PAC très facilement corrigé grâce au BSB-Lan.
Détection lorsque l’étage n’est pas chauffé #
En 2022, j’ai eu un problème avec ma vanne 3 voies (celle qui gère la régulation entre le chauffage du rez-de-chaussée et de l’étage) qui se grippait régulièrement et restait bloquée sur le RDC. De fait, l’étage n’était pas chauffé et on ne s’en rendait compte qu’au bout de plusieurs jours quand on trouvait qu’il faisait froid dans la journée. Le problème a été presque réglé l’année dernière mais il s’est reproduit une fois. J’ai pu corriger très vite le soucis grâce à une petite automation qui m’informe lorsque la température de l’étage baisse de 1° alors que la pompe de l’étage est en fonctionnement.
Encore un petit soucis de confort réglé grâce au BSB-Lan.
Conclusion #
J’ai installé le BSB-Lan en décembre 2023, du premier contact avec Frederik à l’installation dans la pompe à chaleur il s’est passé 2 semaines, ce qui est assez rapide pour une solution un peu DIY, où il n’y a pas de boutique pour acquérir la carte BSB-Lan.
Est-ce que c’est une solution idéale pour toute le monde ? Clairement non, il faut être un peu bricoleur pour l’installer, ensuite la configuration n’est pas si évidente que cela puisqu’il faut fouiller dans la webapp du BSB-Lan pour découvrir les options disponibles sur la PAC et enfin l’utilisation de MQTT rend le setup avec Home Assistant peut être un peu compliqué pour une personne néophyte. Mais si vous vous sentez à l’aise avec ce que je viens de dire alors ce BSB-Lan est probablement fait pour vous.
L’intérêt du BSB-Lan est bien sûr de pouvoir couper le chauffage et le ballon d’eau chaude lorsque nous sommes absents, par exemple éteindre le chauffage et le chauffe-eau lorsque nous partons en février permet d’économiser 20kWh/jour et en été 4kWh/jour (oui il n’y a que le chauffe-eau qui fonctionne). Alors sur un an ce n’est pas énorme, mais peut être que sur plusieurs années cela peut devenir rentable.
J’ai essayé de comparer ma consommation électrique en combinant février et mars entre 2023 et 2025. La seule comparaison valide est celle entre 2023 et 2024 ou j’ai consommé 123kWh de moins, la comparaison est un peu bancale puisqu’il aurai fallu que les températures extérieures soient les mêmes ce qui impossible évidement.
Au final, mon utilisation de la PAC n’a pas beaucoup changé, c’est très rare de modifier les réglages mais de temps en temps en mi-saison j’ajuste un peu pour gagner en confort. Voila mon retour d’expérience sur ce formidable BSB-Lan, je ne regrette pas les 80€ dépensés pour pouvoir controler ma PAC Atlantic Alfea.