[2026-10-22T11:59:19.611Z] [INFO] Starting the Netatmo integration...
[2026-10-22T11:59:20.641Z] [INFO] [gladys-sdk] connected to Gladys (http://172.30.0.1:80)
[2026-10-22T11:59:20.643Z] [INFO] WebSocket connected to Gladys
[2026-10-22T11:59:21.008Z] [INFO] [netatmo-webhooks] Netatmo webhook registered — events will trigger an immediate refresh
[2026-10-22T11:59:21.012Z] [INFO] Netatmo account connected, token refresh and telemetry engines armed
[2026-10-22T11:59:21.220Z] [INFO] [netatmo-telemetry] Netatmo devices not supported: 1
[2026-10-22T11:59:49.564Z] [INFO] onSetValue <- ext:ext-terdious-gladys-netatmo:0000991652:state = -1
[2026-10-22T11:59:49.566Z] [WARN] Command ext:ext-terdious-gladys-netatmo:0000991652:state = -1 failed: Feature ext:ext-terdious-gladys-netatmo:0000991652:state is not writable
[2026-10-22T12:01:13.869Z] [INFO] onSetValue <- ext:ext-terdious-gladys-netatmo:0000991652:state = -1
[2026-10-22T12:01:13.870Z] [WARN] Command ext:ext-terdious-gladys-netatmo:0000991652:state = -1 failed: Feature ext:ext-terdious-gladys-netatmo:0000991652:state is not writable
[2026-10-22T12:07:15.840Z] [WARN] WebSocket disconnected - the SDK will try to reconnect
[2026-10-22T12:07:15.841Z] [WARN] [gladys-sdk] connection to Gladys lost (close code 1006)
[2026-10-22T12:07:15.842Z] [WARN] [gladys-sdk] not connected to Gladys (ws://172.30.0.1:80), retrying in 1000 ms (attempt 1)
[2026-10-22T12:07:15.860Z] [INFO] Received SIGTERM -> graceful shutdown
[2026-10-22T12:07:16.619Z] [INFO] Starting the Netatmo integration...
[2026-10-22T12:07:17.351Z] [INFO] [gladys-sdk] connected to Gladys (http://172.30.0.1:80)
[2026-10-22T12:07:17.351Z] [INFO] WebSocket connected to Gladys
[2026-10-22T12:07:17.800Z] [INFO] [netatmo-webhooks] Netatmo webhook registered — events will trigger an immediate refresh
[2026-10-22T12:07:17.803Z] [INFO] Netatmo account connected, token refresh and telemetry engines armed
[2026-10-22T12:07:17.932Z] [INFO] [netatmo-telemetry] Netatmo devices not supported: 1
[2026-10-22T12:07:36.297Z] [INFO] onSetValue <- ext:ext-terdious-gladys-netatmo:0000991652:state = -1
[2026-10-22T12:07:36.298Z] [WARN] Command ext:ext-terdious-gladys-netatmo:0000991652:state = -1 failed: Feature ext:ext-terdious-gladys-netatmo:0000991652:state is not writable
J’ai demandé à Claude de regarder sur l’intégration Legrand de Gladys qui semble fonctionner, voici sa réponse :
L’intégration traduit la commande Gladys en un champ target_position envoyé à l’API Netatmo (POST setstate), puisque les volets Bubendorff iDiamant passent par la passerelle NBG et le cloud Netatmo.
Action
Valeur Gladys (COVER_STATE)
target_position envoyé à Netatmo
Ouvrir
1
100
Fermer
-1
0
Stop / pause
0
-1
La correspondance est définie dans src/commands.js (constante SHUTTER_TARGETS). Le corps de la requête ressemble à ceci :
Position intermédiaire : si le module la gère, la fonction « position » envoie une valeur entre 0 et 100, arrondie au pas du module (target_position:step). Si ce pas vaut 100, le volet ne fait qu’ouvrir, fermer et stopper, et l’intégration refuse les positions intermédiaires.
Position favorite : l’API Netatmo accepte aussi -2 (aller à la position favorite), mais l’intégration ne la propose pas (c’est indiqué en commentaire dans src/catalog.js).
Priorité du stop : une commande stop (-1) passe devant les autres commandes en attente pour le même volet, pour qu’elle ne soit jamais retardée.
Types concernés : NBR (volet roulant), NBO (volet orientable) et NBS (volet battant). Les droits OAuth nécessaires sont read_bubendorff et write_bubendorff.
Netatmo integration — device diagnostic
Integration version: 2.6.2
Report time: 2026-10-22T12:14:49.770Z
Enabled families: Energy (energy_api), Weather (weather_api), Shutter (shutter_api)
Scopes requested: read_thermostat write_thermostat read_station read_camera write_camera access_camera read_presence write_presence access_presence read_carbonmonoxidedetector read_smokedetector read_doorbell access_doorbell read_camerapro write_camerapro access_camerapro read_homecoach read_bubendorff write_bubendorff read_smarther write_smarther
Scopes granted: unknown until the next token refresh
Scopes missing: none
Account health:
Last load: 2026-10-22T12:14:49.732Z
homes: last success 2026-10-22T12:14:49.732Z, 0 consecutive failure(s)
energy: last success 2026-10-22T12:14:49.732Z, 0 consecutive failure(s)
weather: last success 2026-10-22T12:14:49.732Z, 0 consecutive failure(s)
Degraded: no
Webhook (Gladys Plus): registered at Netatmo, last event received never, 0 since start
Webhook URL held by Netatmo: the integration's URL (https://api.gladysgateway.com/v1/api/external-integration/<redacted>)
Events poll (getevents): not run yet (no camera, doorbell, alarm or door entry discovered with its family on)
Module 0000991652
Type: NBR
Name: Volet roulant Piano
Home: Maison 2026 (698082729e9ab46fbd0313ab)
Bridge: xx:xx:xx:xx:xx:xx
Reachable: yes
Support: supported (Shutter family)
Gladys device: "Volet roulant Piano" ext:ext-terdious-gladys-netatmo:0000991652 (NBR), created in Gladys
Features: state (shutter/state, writable), position (shutter/position, writable), rf_strength (signal/integer)
Fields not used by the integration: battery_level, firmware_revision, last_seen, setup_date, target_position, target_position:step
homesdata: {"id":"0000991652","type":"NBR","name":"Volet roulant Piano","setup_date":1792610320,"room_id":"3615225310","bridge":"xx:xx:xx:xx:xx:xx"}
homestatus: {"id":"0000991652","type":"NBR","current_position":100,"target_position":100,"target_position:step":1,"battery_level":3,"firmware_revision":2,"rf_strength":0,"last_seen":1792668515,"reachable":true,"bridge":"xx:xx:xx:xx:xx:xx"}
Recent webhook events naming it:
none since the integration started
Last events seen by getevents:
none since the integration started
How to report: open an issue at https://github.com/Terdious/gladys-netatmo/issues/new and paste this report. Read it first: tokens, URLs and e-mail addresses are redacted, but module, home and event ids and the names you gave your modules are kept.
Merci @PhilippeMA, c’est exactement ce qu’il fallait
Les logs de la 2.6.2 montrent enfin la vraie erreur : Feature …:state is not writable. L’intégration refusait la commande avant même de l’envoyer à Netatmo. La cause : quand on clique sur Ouvrir ou Fermer, Gladys transmet à l’intégration l’identifiant de l’appareil, mais pas son modèle (NBR). Or l’intégration reconnaissait les volets justement par leur modèle. Sans lui, la commande était rejetée comme « non pilotable ».
Le correctif est dans la v2.6.3 : Release v2.6.3 · Terdious/gladys-netatmo · GitHub. Le même souci touchait aussi la surveillance des caméras, le projecteur de la caméra extérieure, l’éclairage BTicino et les appareils Legrand : tout le monde y gagne.
Votre diagnostic confirme le reste :
le volet est bien joignable ;
target_position:step vaut 1 : votre volet accepte les positions intermédiaires, la commande « Position » (38 %) fonctionnera aussi ;
rf_strength vaut 0 : c’est bien ce que Netatmo renvoie pour la liaison radio de ce volet, l’intégration n’y est pour rien.
Pour l’analyse de votre Claude : la traduction des commandes qu’il décrit (ouvrir → 100, fermer → 0, stop → -1, avec la passerelle iDiamant) est exactement celle de l’intégration. Le blocage était juste avant.
Après la mise à jour, pouvez-vous réessayer Ouvrir, Fermer, Stop et une position ? Vous devriez voir dans les logs une ligne Netatmo accepted target_position … par commande. Si Netatmo refuse, la ligne d’erreur donnera son code.
Et toujours la question : le WiFi de la prise iDiamant vous serait-il utile dans Gladys ?
Salut @mutmut, merci pour le signalement ! Oui, j’ai reçu le même mail
Ce que dit Netatmo
Un nouveau service de webhooks est disponible depuis le 4 novembre 2026.
À partir du 1er mars 2027, Netatmo va réduire les limites d’appels pour les intégrations qui interrogent l’API à intervalle régulier (polling). Les nouvelles limites ne sont pas encore publiées.
Pour l’intégration aujourd’hui : rien ne change, tout continue de fonctionner.
L’intégration interroge Netatmo toutes les 2 minutes. Avec la limite actuelle (500 appels par heure et par compte), on a de la marge.
Les webhooks sont déjà pris en charge via Gladys Plus (bloc « Webhooks Gladys Plus » de l’écran Configuration). D’après Netatmo, l’enregistrement actuel vaut aussi pour le nouveau service, et l’intégration reçoit déjà ses nouveaux événements.
chaque webhook ne relancera plus un rafraîchissement complet du compte. Une détection (mouvement, personne, sonnette…) est déjà publiée depuis le webhook lui-même ;
la météo et le Home Coach seront lus toutes les 10 minutes : les stations Netatmo n’envoient de toute façon leurs mesures qu’environ toutes les 10 minutes ;
la structure de la maison (pièces, noms, plannings) toutes les 30 minutes, et tout de suite quand Netatmo signale un changement.
On divise à peu près par deux le nombre d’appels, sans perdre de réactivité.
Si Netatmo renvoie « trop de requêtes », l’intégration patientera au lieu d’insister, et l’affichera clairement.
Le diagnostic affichera le nombre d’appels par heure, pour comparer avec les nouvelles limites dès qu’elles seront connues.
Ensuite, les webhooks en priorité : le nouveau service envoie directement la température des pièces, les consignes, la position des volets et même les mesures des stations météo. Avec Gladys Plus, l’intégration pourra donc espacer fortement le polling.
Sans Gladys Plus, pas de webhooks possibles (Netatmo doit pouvoir joindre Gladys depuis Internet). L’intégration restera en polling et s’adaptera aux nouvelles limites dès que Netatmo les publiera.
En résumé : rien à faire de votre côté pour l’instant, les adaptations arriveront dans les mises à jour bien avant mars. Et si vous avez Gladys Plus, activer les webhooks est déjà une bonne idée.