KLF 200 ne cesse de redémarrer pour n'importe quelle action!

klf200.pdf (21,6 Ko)

Vous avez redémarré la Smart et le klf ?

je viens de redémarrer et j’

Capture d’écran 2021-11-23 à 19.31.56 ai ce message :

Pour les logs, comme ceci ?

[2021-11-23 19:29:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:29:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter"}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter"}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter"}]}
[2021-11-23 19:29:03][DEBUG] : Update VeluxCinema at %
[2021-11-23 19:29:03][DEBUG] : Update VoletChambreFenetre at %
[2021-11-23 19:29:03][DEBUG] : Update VoletChambreBaie at %
======== Running on http://0.0.0.0:9123 ========
(Press CTRL+C to quit)
[2021-11-23 19:29:49][INFO] : Arrêt du service klf200
Task was destroyed but it is pending!
task: <Task pending coro=<Heartbeat.loop() running at /usr/local/lib/python3.7/dist-packages/pyvlx/heartbeat.py:42> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7f9d8b1408>()]>>
[2021-11-23 19:31:43][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:31:44][DEBUG] : Result 
[2021-11-23 19:31:44][ERROR] : Erreur sur la fonction cron du plugin : Echec de la requête http : http://127.0.0.1:8083/node?node_id=7&instance_id=1&cc_id=37&index=0&type=setvalue&value=0&apikey=hLZNE3UvLTeavWF9Mr94f64Yu79hfD3e Curl error : Failed to connect to 127.0.0.1 port 8083: Connection refused
[2021-11-23 19:31:45][INFO] : Arrêt du service klf200
[2021-11-23 19:31:45][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py 192.168.1.69 wZsgA6RTjY
[2021-11-23 19:32:05][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:32:05][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter"}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter"}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter"}]}
[2021-11-23 19:32:05][DEBUG] : Update VeluxCinema at %
[2021-11-23 19:32:05][DEBUG] : Update VoletChambreFenetre at %
[2021-11-23 19:32:05][DEBUG] : Update VoletChambreBaie at %
[2021-11-23 19:33:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:33:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter"}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter"}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter"}]}
[2021-11-23 19:33:03][DEBUG] : Update VeluxCinema at %
[2021-11-23 19:33:03][DEBUG] : Update VoletChambreFenetre at %
[2021-11-23 19:33:03][DEBUG] : Update VoletChambreBaie at %

Peut mieux faire.
Il faut mettre le texte dans un Texte préformaté en cliquant sur
image
et en y collant le texte du log.

a
[2021-11-23 19:29:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:29:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter"}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter"}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter"}]}
[2021-11-23 19:29:03][DEBUG] : Update VeluxCinema at %
[2021-11-23 19:29:03][DEBUG] : Update VoletChambreFenetre at %
[2021-11-23 19:29:03][DEBUG] : Update VoletChambreBaie at %
======== Running on http://0.0.0.0:9123 ========
(Press CTRL+C to quit)
[2021-11-23 19:29:49][INFO] : Arrêt du service klf200
Task was destroyed but it is pending!
task: <Task pending coro=<Heartbeat.loop() running at /usr/local/lib/python3.7/dist-packages/pyvlx/heartbeat.py:42> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7f9d8b1408>()]>>
[2021-11-23 19:31:43][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:31:44][DEBUG] : Result 
[2021-11-23 19:31:44][ERROR] : Erreur sur la fonction cron du plugin : Echec de la requête http : http://127.0.0.1:8083/node?node_id=7&instance_id=1&cc_id=37&index=0&type=setvalue&value=0&apikey=hLZNE3UvLTeavWF9Mr94f64Yu79hfD3e Curl error : Failed to connect to 127.0.0.1 port 8083: Connection refused
[2021-11-23 19:31:45][INFO] : Arrêt du service klf200
[2021-11-23 19:31:45][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py 192.168.1.69 wZsgA6RTjY
[2021-11-23 19:32:05][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:32:05][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter"}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter"}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter"}]}
[2021-11-23 19:32:05][DEBUG] : Update VeluxCinema at %
[2021-11-23 19:32:05][DEBUG] : Update VoletChambreFenetre at %
[2021-11-23 19:32:05][DEBUG] : Update VoletChambreBaie at %
[2021-11-23 19:33:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 19:33:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter"}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter"}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter"}]}
[2021-11-23 19:33:03][DEBUG] : Update VeluxCinema at %
[2021-11-23 19:33:03][DEBUG] : Update VoletChambreFenetre at %
[2021-11-23 19:33:03][DEBUG] : Update VoletChambreBaie at %

Bizarre votre log.
Pour la même requête à chaque minute (http://localhost:9123/devices), la réponse sur le mien contient un champ position qui permet de mettre à jour la ligne suivante avec le %age de fermeture.

[2021-11-23 23:30:09][DEBUG] : Send http://localhost:9123/devices
[2021-11-23 23:30:09][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VoletSDE", "type": "RollerShutter", "position": 75}]}
[2021-11-23 23:30:09][DEBUG] : Update VoletSDE at 75%

Avez-vous redémarré le KLF ?

Je suppose que vous avez redémarré la Smart vers 19h29 et que les erreurs dans les logs correspondent aux erreurs que vous avez eues à l’écran.
Du coup je ne vois pas d’erreur dans le log concernant le redémarrage du KLF.

Fournissez de nouveaux logs dès que vous aurez un redémarrage du KLF.

Nettoyez aussi le fil au dessus, vous avez fourni 3 fois le même log. Ça ne fait que brouiller l’écoute.

Bonjour
Même souci de mon côté
Juste hier 203 plantages.
Dire que l’interface KLF200 est buggée me parait limite comme simple réponse. Ce que l’on voit ici c’est le plantage du plug-in qui n’est pas géré.
Même s’il le système distant devait avoir des bugs (nous sommes sur un équipement vendu depuis des années et mis en oeuvre par des pro sur des gros chantiers, donc j’ai un doute que Velux laisserait un équipement de sécurité en l’état), le système appelant doit gérer les erreurs et pas se contenter de redémarrer.
Par exemple, l’utilisateur envoie une commande, un problème se produit, le plug-in devrait traiter l’erreur et renvoyer la commande pour s’assurer qu’elle est bien exécutée au final. Actuellement la commande est perdue, l’utilisateur voit une erreur système et doit gérer en renvoyant la commande. Imaginez ma grand mère ou mon fils de 10 ans derrière l’écran?

Quand l’on recherche, l’on trouve des utilisateurs disant « ça marche pour moi » mais quand on regarde les explications, il y a des aménagements, des contournements. « Je fais scénario pour redémarrer la passerelle avec une prise connecté », « je vérifie les erreurs dans le log puis relance la commande » … Avez-vous de votre côté, un témoignage d’utilisateur qui a installé la passerelle KlF200 et le plug-in dont l’installation fonctionne sans aucun contournement de problème ? Si cela existe, nous pourrions comparer nos config et peut être trouver ensemble.

[2021-11-24 06:31:14][DEBUG] : Result
[2021-11-24 06:31:54][INFO] : Arrêt du service klf200
[2021-11-24 06:31:56][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py 192.168.1.100 6DG5rXhCtx
[2021-11-24 06:31:56][ERROR] : KLF200 has been restarted after found not responding
[2021-11-24 06:32:04][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 06:32:05][DEBUG] : Result
Traceback (most recent call last):
File "/var/www/html/plugins/klf200/resources/klf200d.py", line 269, in <module>
LOOP.run_until_complete(init_pyvlx_connection(LOOP))
File "/usr/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
return future.result()
File "/var/www/html/plugins/klf200/resources/klf200d.py", line 22, in init_pyvlx_connection
await pyvlx.load_nodes()
File "/usr/local/lib/python3.7/dist-packages/pyvlx/pyvlx.py", line 76, in load_nodes
await self.nodes.load(node_id)
File "/usr/local/lib/python3.7/dist-packages/pyvlx/nodes.py", line 69, in load
await self._load_all_nodes()
File "/usr/local/lib/python3.7/dist-packages/pyvlx/nodes.py", line 85, in _load_all_nodes
await get_all_nodes_information.do_api_call()
File "/usr/local/lib/python3.7/dist-packages/pyvlx/api/api_event.py", line 21, in do_api_call
await self.send_frame()
File "/usr/local/lib/python3.7/dist-packages/pyvlx/api/api_event.py", line 33, in send_frame
await self.pyvlx.send_frame(self.request_frame())
File "/usr/local/lib/python3.7/dist-packages/pyvlx/pyvlx.py", line 66, in send_frame
await self.connect()
File "/usr/local/lib/python3.7/dist-packages/pyvlx/pyvlx.py", line 46, in connect
await self.klf200.get_protocol_version()
File "/usr/local/lib/python3.7/dist-packages/pyvlx/klf200gateway.py", line 70, in get_protocol_version
raise PyVLXException("Unable to retrieve protocol version")
pyvlx.exception.PyVLXException: <PyVLXException description="Unable to retrieve protocol version" />
[2021-11-24 06:32:45][INFO] : Arrêt du service klf200
[2021-11-24 06:32:45][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py 192.168.1.100 6DG5rXhCtx
[2021-11-24 06:32:45][ERROR] : KLF200 has been restarted after found not responding
[2021-11-24 06:33:05][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 06:33:06][DEBUG] : Result
1 « J'aime »

Si je demande d’ouvrir n’importe quelle volet roulant en utilisant la commande de l’application, ce dernier s’ouvre, mais l’application (grâce à la prise commandée ON/OFF) fait redémarrer le KLF200, du coup ce dernier ne sais plus que je viens de demander l’ouverture d’un volet et reste sur l’état du début : volet fermé alors qu’en réalité il est maintenant ouvert.
C’est systématique, à chaque action sur les commande de l’application KLF, elle me fait redémarrer la boitier KLF200 !!!

Bonjour,

C’est la prise commandée qui coupe le KLF lorsque vous envoyez une commande au KLF ?

Oui exactement !

Voici les réglages de l’app :

Et si vous supprimez la config pour éteindre et allumer, ca fonctionne sans problème?

Bonjour,

Il faudrait peut être essayer de faire fonctionner le klf avec un script python basique en utilisant la lib externe utilisée par le plugin https://github.com/Julius2342/pyvlx

"""Just a demo of the new PyVLX module."""
import asyncio
from pyvlx import PyVLX, Position


async def main(loop):
    """Demonstrate functionality of PyVLX."""
    pyvlx = PyVLX('pyvlx.yaml', loop=loop)
    # Alternative:
    # pyvlx = PyVLX(host="192.168.2.127", password="velux123", loop=loop)

    # Runing scenes:
    await pyvlx.load_scenes()
    await pyvlx.scenes["All Windows Closed"].run()

    # Changing position of windows:
    await pyvlx.load_nodes()
    await pyvlx.nodes['Bath'].open()
    await pyvlx.nodes['Bath'].close()
    await pyvlx.nodes['Bath'].set_position(Position(position_percent=45))

    # Read limits of windows
    # limit = await pyvlx.nodes['Bath'].get_limitation()
    # limit.min_value
    # limit.max_value
    
    # Changing of on-off switches:
    # await pyvlx.nodes['CoffeeMaker'].set_on()
    # await pyvlx.nodes['CoffeeMaker'].set_off()

    # You can easily rename nodes:
    # await pyvlx.nodes["Window 10"].rename("Window 11")
        
    await pyvlx.disconnect()

if __name__ == '__main__':
    # pylint: disable=invalid-name
    LOOP = asyncio.get_event_loop()
    LOOP.run_until_complete(main(LOOP))
    # LOOP.run_forever()
    LOOP.close()

Afin de voir déjà si elle fonctionne correctement.

Si c’est le cas on pourra alors regarder au niveau du plugin.

1 « J'aime »

Oui, mais pour moi c’est de l’hébreu !

Après avoir désactivé la partie redémarrage avec le prise ON/OFF et la gestion automatique du Démon :

Voici ce que m’affiche JEEDOM après avoir lancer la fermeture d’1 Velux :

Capture d’écran 2021-11-24 à 09.50.39

Voici le rapport :

[2021-11-24 09:49:25][DEBUG] : Action /set/0/100
[2021-11-24 09:49:26][DEBUG] : Send http://localhost:9123/set/0/100
[2021-11-24 09:49:51][DEBUG] : Result 
[2021-11-24 09:50:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 09:50:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter", "position": 0}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter", "position": 0}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter", "position": 0}]}
[2021-11-24 09:50:03][DEBUG] : Update VeluxCinema at 0%
[2021-11-24 09:50:03][DEBUG] : Update VoletChambreFenetre at 0%
[2021-11-24 09:50:03][DEBUG] : Update VoletChambreBaie at 0%
[2021-11-24 09:50:31][INFO] : Arrêt du service klf200
======== Running on http://0.0.0.0:9123 ========
(Press CTRL+C to quit)
Task was destroyed but it is pending!
task: <Task pending coro=<Heartbeat.loop() running at /usr/local/lib/python3.7/dist-packages/pyvlx/heartbeat.py:42> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7f984ae408>()]>>
[2021-11-24 09:50:32][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py 192.168.1.69 wZsgA6RTjY
[2021-11-24 09:50:32][ERROR] : KLF200 has been restarted after found not responding
[2021-11-24 09:51:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 09:51:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter", "position": 100}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter", "position": 0}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter", "position": 0}]}
[2021-11-24 09:51:03][DEBUG] : Update VeluxCinema at 100%
[2021-11-24 09:51:03][DEBUG] : Update VoletChambreFenetre at 0%
[2021-11-24 09:51:03][DEBUG] : Update VoletChambreBaie at 0%
[2021-11-24 09:52:03][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 09:52:03][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter", "position": 100}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter", "position": 0}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter", "position": 0}]}
[2021-11-24 09:52:03][DEBUG] : Update VeluxCinema at 100%
[2021-11-24 09:52:03][DEBUG] : Update VoletChambreFenetre at 0%
[2021-11-24 09:52:03][DEBUG] : Update VoletChambreBaie at 0%
[2021-11-24 09:53:02][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 09:53:02][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter", "position": 100}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter", "position": 0}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter", "position": 0}]}
[2021-11-24 09:53:02][DEBUG] : Update VeluxCinema at 100%
[2021-11-24 09:53:02][DEBUG] : Update VoletChambreFenetre at 0%
[2021-11-24 09:53:02][DEBUG] : Update VoletChambreBaie at 0%
[2021-11-24 09:54:02][DEBUG] : Send http://localhost:9123/devices
[2021-11-24 09:54:02][DEBUG] : Result {"result": "ok", "devices": [{"id": 0, "name": "VeluxCinema", "type": "RollerShutter", "position": 100}, {"id": 1, "name": "VoletChambreFenetre", "type": "RollerShutter", "position": 0}, {"id": 2, "name": "VoletChambreBaie", "type": "RollerShutter", "position": 0}]}
[2021-11-24 09:54:02][DEBUG] : Update VeluxCinema at 100%
[2021-11-24 09:54:02][DEBUG] : Update VoletChambreFenetre at 0%
[2021-11-24 09:54:02][DEBUG] : Update VoletChambreBaie at 0%

Et le rapport du redémarrage :

********************************************************
*             Installation des dépendances             *
********************************************************
Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Get:3 http://ftp.uk.debian.org/debian buster InRelease [122 kB]
Get:4 http://ftp.uk.debian.org/debian buster-updates InRelease [51.9 kB]
Hit:5 http://www.deb-multimedia.org buster InRelease
Hit:6 https://oph.mdrjr.net/meveric all InRelease
Hit:7 https://oph.mdrjr.net/meveric buster InRelease
Err:2 https://repo.jeedom.com/odroid stable InRelease
  502  Bad Gateway [IP: 51.178.69.128 443]
Reading package lists...
E: Repository 'http://ftp.uk.debian.org/debian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'
Installation des dépendances apt
Reading package lists...
Building dependency tree...
Reading state information...
python3-pip is already the newest version (18.1-5).
python3-setuptools is already the newest version (40.8.0-1).
python3-dev is already the newest version (3.7.3-1).
0 upgraded, 0 newly installed, 0 to remove and 154 not upgraded.
Installation du module pyvlx pour python
Requirement already up-to-date: pyvlx in /usr/local/lib/python3.7/dist-packages (0.2.19)
Requirement already satisfied, skipping upgrade: PyYAML in /usr/local/lib/python3.7/dist-packages (from pyvlx) (5.4.1)
Installation du module aiohttp pour python
Requirement already up-to-date: aiohttp in /usr/local/lib/python3.7/dist-packages (3.8.1)
Requirement already satisfied, skipping upgrade: attrs>=17.3.0 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (20.3.0)
Requirement already satisfied, skipping upgrade: charset-normalizer<3.0,>=2.0 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (2.0.7)
Requirement already satisfied, skipping upgrade: multidict<7.0,>=4.5 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (5.1.0)
Requirement already satisfied, skipping upgrade: async_timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (4.0.1)
Requirement already satisfied, skipping upgrade: yarl<2.0,>=1.0 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (1.6.3)
Requirement already satisfied, skipping upgrade: frozenlist>=1.1.1 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (1.2.0)
Requirement already satisfied, skipping upgrade: aiosignal>=1.1.2 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (1.2.0)
Requirement already satisfied, skipping upgrade: asynctest==0.13.0 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (0.13.0)
Requirement already satisfied, skipping upgrade: typing_extensions>=3.7.4 in /usr/local/lib/python3.7/dist-packages (from aiohttp) (3.7.4.3)
Requirement already satisfied, skipping upgrade: idna>=2.0 in /usr/local/lib/python3.7/dist-packages (from yarl<2.0,>=1.0->aiohttp) (3.1)
Installation du module bottle pour python
Requirement already up-to-date: bottle in /usr/local/lib/python3.7/dist-packages (0.12.19)
********************************************************
*             Installation terminée                    *
********************************************************

Pour autant, je peux continuer à passer des commandes, elles fonctionnent malgré ce message qui apparait systématiquement après une action !
Capture d’écran 2021-11-24 à 10.06.27

La BOX KLF reste bien allumé et fonctionnelle, par contre l’APP klf200 n’est pas contente mais continue a passer des actions !

Réactivez la gestion automatique, cela sert à relancer le démon s’il s’arrête.
Par contre avez-vous relancé le démon après avoir changé la config? si pas alors faite le pour voir si vous avez toujours l’alerte.

Je viens de le ré-activer + relancer la config + TEST = toujours le message d’erreur !

Bonjour,

j’ai exactement la même erreur depuis vendredi dernier.
j’ai tout resinstallé sur la passerelle KLF200 (reset usine)
j’ai installé le plugin sur une nouvelle machine
et rien n’y a changé

j’ai même commandé une nouvelle box KLF que je viens juste de mettre en place et l’erreur est tojour présente (elle n’est donc pas en lien avec le matériel physique)

En regardant les Log, il semble qu’il n’y ai pas de réponse aux actions demandées.
au bout d’un moment la tache est tuée et le KLF200 redémarré
Si je passe plusieurs commandes en rafales comme (ouvrir le volet 1 et le fermer avant qu’il ne soit tout ouvert) → la KLF200 répète les actions au moins 3 fois (le volet bouge dans tous les sens)

→ Il y a peu, ce genre de commande passait alégrement