Aller au contenu principal

Composition avancée (packages)

Pour les utilisateurs souhaitant composer une configuration sur-mesure, les packages FrangiPool peuvent être importés directement dans un fichier YAML personnalisé.

Packages disponibles

PackageResponsabilité
packages/base.yamlToujours inclus. WiFi/AP, API chiffrée, OTA, captive portal, bus 1-Wire GPIO23, relais pompe GPIO25, antigel, entités diagnostic.
packages/filtration.yamlPlanificateur autonome : modes Off/Hiver/Courbe/Auto, deux cycles journaliers, mode forcé, actions API.
packages/i2c_ads1115.yamlBus I²C GPIO21/22 + ADS1115 @ 0x48. Requis par redox et ph.
packages/electrolyser.yamlRelais électrolyseur GPIO27, compteur de minutes d'électrolyse.
packages/booster.yamlRelais booster GPIO26, modes Off/Auto/Forcé.
packages/redox.yamlSonde Redox/ORP (ADS1115 A0), calibration (225/475 mV / reset), action offset manuel.
packages/ph.yamlSonde pH (ADS1115 A1), calibration two-points pH 7+pH 4, entités diagnostic.
packages/redox_electrolyser.yamlRégulation Redox de l'électrolyseur par hystérésis, sélecteur mode, consigne Redox.

Exemple de configuration personnalisée

# ma-piscine.yaml
esphome:
project:
name: frangipool.custom
version: "0.5.0"

packages:
base: github://gaetanars/FrangiPool/packages/base.yaml@main
filtration: github://gaetanars/FrangiPool/packages/filtration.yaml@main
i2c_ads1115: github://gaetanars/FrangiPool/packages/i2c_ads1115.yaml@main
electrolyser: github://gaetanars/FrangiPool/packages/electrolyser.yaml@main
redox: github://gaetanars/FrangiPool/packages/redox.yaml@main
redox_electrolyser: github://gaetanars/FrangiPool/packages/redox_electrolyser.yaml@main

Compilez et flashez :

esphome run ma-piscine.yaml

Épingler une version

Pour garantir la reproductibilité, remplacez @main par un tag de release :

packages:
base: github://gaetanars/FrangiPool/packages/base.yaml@0.5.0
filtration: github://gaetanars/FrangiPool/packages/filtration.yaml@0.5.0

Valider localement

# Valider la configuration (Python ESPHome CLI requis)
esphome config ma-piscine.yaml

# Compiler le firmware
esphome compile ma-piscine.yaml
Version ESPHome

Le firmware est développé et testé avec ESPHome ≥ 2024.6.0 (requis pour la plateforme datetime:). La version épinglée en CI est indiquée dans .github/workflows/validate.yml.

Substitutions disponibles

La seule substitution définie dans base.yaml est preset_slug, utilisée en interne pour construire l'URL du manifest OTA. Elle est surchargée par chaque preset — vous n'avez pas à la modifier dans une configuration personnalisée.

Les sondes Dallas n'utilisent plus d'adresse hexadécimale : elles sont détectées par index (0 et 1). L'assignation se gère via l'action swap_dallas_probes (voir Sondes de température).