Skip to content

Releases: Knetus56/solax_local_x1_micro

1.4.5

Choose a tag to compare

@Knetus56 Knetus56 released this 02 Sep 10:45
83fd41b

prod_auj/prod_total survivent maintenant aussi à un redémarrage de Home Assistant survenant pendant une coupure API. Auparavant, cette persistance ne vivait qu'en mémoire côté coordinator : un redémarrage HA pendant une coupure faisait retomber ces deux capteurs à "Inconnu" jusqu'au retour de l'onduleur.

Ces deux capteurs utilisent désormais RestoreSensor pour restaurer la dernière valeur connue au démarrage tant qu'aucune lecture fraîche n'est arrivée, avec le même reset à minuit que prod_auj applique déjà en fonctionnement normal.

Fixes #16.

Autres changements : fond des icônes rendu transparent.

Full changelog: 1.4.4...1.4.5

Update Dutch (nl) translations

Choose a tag to compare

@Knetus56 Knetus56 released this 01 Sep 16:25
56a25ba

Update Dutch (nl) translations (looks better in my opinion)
Make HACS link work, no Page not found error anymore

1.4.3

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 15:09

Repo renamed to solax_local_x1_micro, README installation section updated (official HACS store path + fallback custom repo), internal URL updates after rename.

1.4.2

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 14:59

Rename display name: SolaX Local → SolaX Local X1 Micro

1.4.1

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 14:29
5c9e294

Ajoute des logs debug dans parse_data() (solax_protocol.py) : payload base64 brut reçu et bytes décodés en hexadécimal, pour faciliter le diagnostic des trames renvoyées par l'onduleur.

1.4.0

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 11:31
682359d

Depuis la v1.3.6

Reprend plusieurs idées de la PR #1 (fork webpatrick/solax_local, fermée sans merge car ouverte sur une version du code depuis largement refactorée) :

  • i18n : ajout de la traduction néerlandaise (translations/nl.json)
  • device_class : connectivity sur le capteur online, frequency sur inverter_freq (icônes natives Home Assistant)
  • solax_protocol.py : parsing des trames plus tolérant — accepte des paquets de réponse dès 80 octets (au lieu de 112) et ne vérifie plus le type de paquet, seul le numéro de série identifie la réponse comme provenant de l'onduleur. mode/prod_auj/prod_total restent à None (jamais un faux 0) quand leur registre est absent d'un paquet raccourci, pour ne pas casser la persistance des compteurs cumulatifs

Voir le CHANGELOG dans le README pour le détail complet.

1.3.6

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 10:49
14518fe

Depuis la v1.3.5

Refactor interne uniquement, aucun changement de comportement pour l'utilisateur :

  • coordinator.py : la logique de persistance des dernières valeurs connues (prod_auj/prod_total, avec le cas particulier du reset à minuit pour prod_auj) est extraite dans une méthode dédiée _apply_persistence(). _async_update_data est maintenant plus courte et plus lisible.

Voir le CHANGELOG dans le README pour le détail complet.

1.3.5

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 10:42
1bd28a2

Depuis la v1.3.1

Fiabilité des données hors ligne

  • mode ne reflète plus que le dernier poll réussi : passe à "Inconnu" sur toute erreur de requête au lieu d'un état inventé (Offline/Unknown)
  • prod_auj/prod_total gardent leur dernière valeur connue en cas d'erreur réseau au lieu de retomber à 0 (évite de fausser les statistiques long terme)
  • prod_auj repasse automatiquement à 0 au changement de jour calendaire, même sans nouvelle donnée réelle

Pause nocturne

  • Plus de requête réseau inutile la nuit : basé sur sun.sun, marge d'1h autour du lever/coucher réel, se désactive proprement si sun.sun est absent

Qualité / conformité

  • Capteur mode en type énuméré (sensor.enum), avec seulement 3 valeurs possibles (wait_mode/check_mode/normal_mode), traduites FR/EN
  • Ajout d'une CI GitHub Actions (hassfest + validation Python/JSON) — a détecté et corrigé deux non-conformités au schéma officiel HA (ordre des clés du manifest, casse des clés de traduction d'état)

Note technique : le changement de casse des valeurs de mode (WaitModewait_mode, etc.) est un changement de valeur d'état brute pour se conformer au schéma HA. Sans impact sur les libellés affichés (toujours "Attente"/"Vérification"/"Normal").

Voir le CHANGELOG dans le README pour le détail complet (v1.3.2, v1.3.3, v1.3.4, v1.3.5).

v1.3.1: fix entity translation schema, MPPT1/MPPT2 naming (#3)

Choose a tag to compare

@Knetus56 Knetus56 released this 28 Aug 09:17
9c20895
- Le bloc "entity" des fichiers de traduction (strings.json,
  translations/en.json, translations/fr.json) utilisait des chaînes
  brutes ("clé": "Libellé") au lieu du schéma imbriqué requis par HA
  ("clé": {"name": "Libellé"}). Résultat : translation_key ne se
  résolvait jamais, HA retombait sur le nom générique basé sur le
  device_class (ex: "Puissance" au lieu de "Puissance MPPT1"),
  rendant les capteurs MPPT1/MPPT2 indiscernables entre eux.
- Renommage "MPPT 1"/"MPPT Power 1" -> "MPPT1"/"MPPT1 Power" (numéro
  accolé, cohérent dans les 3 langues/fichiers).
- manifest.json: 1.3.0 -> 1.3.1
- README: changelog à jour

1.2.3

Choose a tag to compare

@Knetus56 Knetus56 released this 22 Jul 11:44
Fix: Rename ico.png to icon.png and add to root for Home Assistant co…