Chapitre 1 : Mise en route
J'ai récemment décidé de créer un contrôleur de chauffage intelligent pour mes radiateurs Terma MOA Blue en utilisant Python, Docker et Bluetooth basse énergie (BLE).
Il n'existe actuellement aucun moyen natif de communiquer entre Home Assistant (HA) et mes radiateurs.
J'avais besoin d'un contrôle précis des chauffages de mon propriété en location saisonnière pour :
Cet article est le premier chapitre d'une série dans laquelle je vais vous guider tout au long du processus, de la configuration du Raspberry Pi et de Docker à l'écriture de scripts Python pour un contrôle Bluetooth direct.
Le Terma MOA Blue est un élément chauffant compatible Bluetooth conçu pour les radiateurs électriques et les sèche-serviettes.
Principales fonctionnalités :
Bien que ces radiateurs fonctionnent parfaitement avec l'application mobile du fabricant, je souhaitais plus de flexibilité en les intégrant directement dans une configuration Python/Docker personnalisée.
Je tiens à remercier chaleureusement la communauté Home Assistant pour avoir jeté les bases et partagé des informations sur la connexion à ces radiateurs à l'aide de BLE.
Leurs discussions ont permis de clarifier la manière dont les caractéristiques Bluetooth sont structurées et ont inspiré de nombreuses techniques mises en œuvre dans ce projet.
Nous couvrirons :
J'ai décidé d'utiliser un Raspberry Pi comme contrôleur central pour ce projet. Voici comment je l'ai configuré :
sudo apt update sudo apt install -y docker.io sudo usermod -aG docker $USER
docker --version docker run hello-world
Cela vérifie que Docker est installé et fonctionne correctement.
Pour simplifier les mises à jour du code, j'ai mis en place des clés SSH et Git pour un accès à distance depuis mon PC.
ssh-keygen -t ed25519 -C "your_email@example.com"
git clone git@github.com:<username>/<repo>.git
Vous pouvez consulter le code source complet dans mon dépôt GitHub :
? GitHub - ha-hudsonread-heater-control
N'hésitez pas à le partager, à suggérer des améliorations ou à signaler tout problème !
Le radiateur Terma MOA Blue communique via Bluetooth Low Energy (BLE), j'ai donc utilisé la Bibliothèque Bleak en Python pour gérer la connexion.
Principales fonctionnalités mises en œuvre jusqu'à présent :
À l'heure actuelle, le contrôleur peut :
Restez à l'écoute du Chapitre 2, où je vais plonger dans le Code Python, expliquer comment fonctionnent l'encodage et le décodage BLE et partager des informations sur le débogage des connexions Bluetooth.
Nous aborderons également les commandes manuelles d'appairage et de connexion à l'aide de bluetoothctl pour toute personne intéressée par un examen plus approfondi du débogage BLE.
N'oubliez pas de ⭐️ le dépôt GitHub et faites-moi savoir dans les commentaires quelles fonctionnalités vous aimeriez voir ajoutées ensuite !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!