ECU Détecté : ECU-R-Pro ECU ID : 216200063835 Compatibilité Contrôle : ✅ OUI (ECU-R-Pro 2162)
Configuration actuelle :
- IP ECU : 192.168.1.42
- MQTT Broker : 192.168.1.50:1883
- WiFi SSID : ECU
- WiFi Password : 88888888
- Topic Prefix : aps2mqtt
Entité Home Assistant : switch.ecu_216200063835_inverters_control
Commandes MQTT :
# Allumer tous les onduleurs
mosquitto_pub -h 192.168.105.46 -u king -P qtnh70hy \
-t "aps2mqtt/aps/216200063835/inverters_control/set" -m "ON"
# Éteindre tous les onduleurs
mosquitto_pub -h 192.168.105.46 -u king -P qtnh70hy \
-t "aps2mqtt/aps/216200063835/inverters_control/set" -m "OFF"Automatisation Home Assistant :
# Éteindre la nuit
automation:
- alias: "Arrêt onduleurs 21h"
trigger:
- platform: time
at: "21:00:00"
action:
- service: switch.turn_off
target:
entity_id: switch.ecu_216200063835_inverters_controlEntité Home Assistant : button.ecu_216200063835_ecu_reboot
Commande MQTT :
# Redémarrer l'ECU
mosquitto_pub -h 192.168.105.46 -u king -P qtnh70hy \
-t "aps2mqtt/aps/216200063835/ecu_reboot/set" -m "PRESS"Automatisation Home Assistant :
# Reboot si ECU offline > 10 min
automation:
- alias: "Reboot ECU si offline"
trigger:
- platform: state
entity_id: sensor.ecu_216200063835_online
to: 'off'
for: '00:10:00'
action:
- service: button.press
target:
entity_id: button.ecu_216200063835_ecu_reboot| Type | Seuil | Sévérité | Action |
|---|---|---|---|
| Onduleur Offline | > 5 min | Vérifier connexion | |
| Onduleur Offline | > 10 occurrences | 🔴 Critical | Intervention |
| Température Haute | > 65°C | Surveiller | |
| Température Haute | > 70°C | 🔴 Critical | Vérifier ventilation |
| Production Faible | < 70% moyenne | Vérifier panneaux |
Dans docker-compose.yml :
environment:
- ALERT_OFFLINE_THRESHOLD_MINUTES=5
- ALERT_LOW_PRODUCTION_PERCENT=30
- ALERT_HIGH_TEMPERATURE_C=65# Voir les logs d'alertes
docker logs aps2mqtt | grep "Alert\|WARNING\|CRITICAL"
# Résumé des alertes actives
docker logs aps2mqtt | grep "alert_summary"-
aps2mqtt/control.py(145 lignes)- Classe
ECUControlpour commandes HTTP vers ECU - Méthodes :
inverters_on(),inverters_off(),reboot_ecu() - Détection compatibilité ECU automatique
- Classe
-
aps2mqtt/alerts.py(233 lignes)- Classe
AlertManagerpour surveillance intelligente - Détection : offline, température, production faible
- Historique des alertes (1h de rétention)
- Statistiques par type et sévérité
- Classe
-
test_control_alerts.py(171 lignes)- 7 tests automatisés ✅
- Couverture : contrôle ECU, alertes, filtrage
-
CONTROL_FEATURES.md(350+ lignes)- Documentation complète
- Exemples MQTT et Home Assistant
- Automatisations prêtes à l'emploi
- Guide de dépannage
- Ajout callback
command_callbackpour recevoir commandes - Méthode
on_message()pour traiter messages MQTT - Méthode
_subscribe_control_topics()pour souscription - Méthode
_generate_control_entities()pour HA Discovery - Gestion automatique switch + button
- Initialisation
ECUControlau démarrage - Callback
handle_control_command()pour exécution - Gestion erreurs commandes
- Logs détaillés des actions
- Ajout dataclass
ControlCommand - Support des commandes paramétrées
- Ajout
inverters_control(switch) - Ajout
ecu_reboot(button)
cd /app/homeassistant/aps2mqtt
docker build -t aps2mqtt:2.1.0 .services:
aps2mqtt:
image: aps2mqtt:2.1.0 # Changer de aps2mqtt-mat à 2.1.0
restart: always
environment:
- TZ=Europe/Paris
- DEBUG=True
- APS_ECU_IP=192.168.105.161
- APS_ECU_AUTO_RESTART=True
- APS_ECU_WIFI_SSID=ECU
- APS_ECU_WIFI_PASSWD=88888888
- MQTT_BROKER_HOST=192.168.105.46
- MQTT_BROKER_PORT=1883
- MQTT_BROKER_USER=king
- MQTT_BROKER_PASSWD=qtnh70hy
- MQTT_TOPIC_PREFIX=aps2mqtt
# Nouvelles variables (optionnel)
- ALERT_OFFLINE_THRESHOLD_MINUTES=5
- ALERT_LOW_PRODUCTION_PERCENT=30
- ALERT_HIGH_TEMPERATURE_C=65docker compose down
docker compose up -d
docker logs -f aps2mqtt- Aller dans Configuration > Entités
- Rechercher
216200063835 - Vérifier présence de :
switch.ecu_216200063835_inverters_controlbutton.ecu_216200063835_ecu_reboot
# Test switch ON
mosquitto_pub -h 192.168.105.46 -u king -P qtnh70hy \
-t "aps2mqtt/aps/216200063835/inverters_control/set" -m "ON"
# Attendre 5 secondes
# Test switch OFF
mosquitto_pub -h 192.168.105.46 -u king -P qtnh70hy \
-t "aps2mqtt/aps/216200063835/inverters_control/set" -m "OFF"
# Vérifier les logs
docker logs aps2mqtt | tail -20Version : 2.1.0 Commits : 11 (2 nouveaux pour v2.1.0) Fichiers créés : 3 nouveaux modules Fichiers modifiés : 4 modules existants Lignes de code ajoutées : ~1050 lignes Tests : 7/7 ✅ Documentation : 350+ lignes
- Les commandes ECU utilisent HTTP non sécurisé (limitation APSystems)
- L'ECU n'a pas d'authentification sur son interface web
- Protégez votre réseau : ECU sur VLAN isolé recommandé
- Utilisez MQTT sécurisé (TLS) pour le broker
- ✅ Isoler l'ECU sur un VLAN dédié avec firewall
- ✅ Activer TLS sur le broker MQTT
- ✅ Utiliser des mots de passe forts pour MQTT
- ✅ Ne PAS exposer l'ECU sur Internet
- ✅ Surveiller les logs d'accès
# Test manuel direct vers l'ECU
curl -X POST http://ECU_IP/index.php/configuration/set_switch_all_on \
-H "X-Requested-With: XMLHttpRequest"
# Si ça marche, le problème vient de MQTT
# Vérifier les logs
docker logs aps2mqtt | grep "inverters"- Vérifier que l'ECU est bien un 2162 :
echo "216200063835" | cut -c1-4 - Attendre 90 secondes pour le redémarrage complet
- Vérifier les credentials WiFi dans docker-compose.yml
- Pour l'instant, les alertes sont dans les logs uniquement
- Roadmap v2.2 : entités binary_sensor pour les alertes dans HA
- Consulter :
docker logs aps2mqtt | grep "Alert"
- CONTROL_FEATURES.md - Guide complet contrôle & alertes
- ENTITIES.md - Liste des 57+ entités
- INSTALL.md - Guide d'installation
- CHANGELOG-2026.md - Historique des versions
- Entités binary_sensor pour alertes dans HA
- Limitation de puissance par panneau
- Support voltage L2/L3 (triphasé)
- Webhook pour notifications externes
- Dashboard Grafana intégré
Créé le : 11 janvier 2026 Version : 2.1.0 Tests : 7/7 passés ✅ Compatible : ECU-R-Pro (2162), ECU-C (215) Votre ECU : 216200063835 ✅