Page 1 sur 1

[Tuto] Broadlink <-> Domoticz (sur Synology)

Publié : 06 févr. 2019, 12:44
par Darkneo
Hello à tous,

Suite aux nombreuses galères que j'ai pu rencontrer (comme vraissemblablement pas mal de monde), je me suis dit que j'allais faire un petit tuto pour détailler MON installation du broadlink sur Domoticz. Je parle de mon installation, car depuis le début, j'ai choisi de tout faire porter par mon Synlogy (XPEnology d'ailleurs), ce qui rajoute un level dans le niveau de cassage de noix sur toute cette installation...

Allez on commence par mes version actuelles:
Domoticz Version: 4.9700
DSM version: DSM 6.1.3-15152 + paquet Python3 3.5.1-0105

On commence par les étapes indiquées dans le wiki (https://www.domoticz.com/wiki/Plugins/BroadlinkRM2.html)

Code : Tout sélectionner

sudo pip3 install broadlink
Perso, ca commencait mal...

Code : Tout sélectionner

-sh: pip3: command not found 
Donc perso j'ai réinstaller pip3 :

Code : Tout sélectionner

python3 setup.py install
le hic, c'est que pip3 ne fonctionne toujours pas... je suis obligé de lancer:

Code : Tout sélectionner

/volume1/@appstore/py3k/usr/local/bin/pip3 /usr/bin/pip3 install broadlink


et là ca fonctionne. Comme je suis une grosse feignasse (et que je me dis que si les scripts du plugin font eux aussi du pip3), j'ai créé un lien:

Code : Tout sélectionner

ln -s /volume1/@appstore/py3k/usr/local/bin/pip3 /usr/bin/pip3
et boom pip3 fonctionne!

Donc si vous n'avez encore rien installer (à part python) on suit maintenant la doc du wiki:

Code : Tout sélectionner

sudo pip3 install broadlink
sudo pip3 install pyaes
on récupère les fichier du plugin et on les met dans le répertoire /usr/local/domoticz/var/plugins/BroadlinkRM2/

Le wiki s'arrête la... Mais comme pas mal de personnes, j'ai eu des erreurs au chargement du plugin.py:
rror: (BroadlinkRM2) failed to load 'plugin.py', Python Path used was '/volume1/.@plugins/AppCentral/domoticz/plugins/BroadlinkRM2/:/usr/local/AppCentral/python3.5/lib/python3.5/:/usr/local/AppCentral/python3.5/lib/python3.5/plat-linux:/usr/local/AppCentral/python3.5/lib/python3.5/lib-dynload'.
Et bien la solution qui m'a permis de résoudre ce problème dans mon cas, c'est de copier le dossier broadlink dans le dossier de plugins domoticz!

Code : Tout sélectionner

cd /usr/local/domoticz/var/plugins/BroadlinkRM2
mkdir broadlink
cp -r /volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages/broadlink-0.9-py3.5.egg/broadlink/* /usr/local/domoticz/var/plugins/BroadlinkRM2/broadlink
On créé le nouveau matériel dans Domoticz, type Broadlink RM2 with kodi remote, perso pour mes test je l'ai mis en "Discovery". Et on va faire un tour dans les logs:
2019-02-06 12:01:40.280 (Broadcom) Debug logging mask set to: PYTHON PLUGIN QUEUE IMAGE DEVICE CONNECTION MESSAGE ALL
2019-02-06 12:01:40.280 (Broadcom) 'Key':'BroadlinkRM2'
2019-02-06 12:01:40.280 (Broadcom) 'Mode4':'no'
2019-02-06 12:01:40.280 (Broadcom) 'DomoticzBuildTime':'2018-06-23 16:24:51'
2019-02-06 12:01:40.280 (Broadcom) 'Mode2':'C:/BroadlinkRM2'
2019-02-06 12:01:40.280 (Broadcom) 'Address':'127.0.0.1'
2019-02-06 12:01:40.280 (Broadcom) 'HomeFolder':'/usr/local/domoticz/var/plugins/BroadlinkRM2/'
2019-02-06 12:01:40.280 (Broadcom) 'DomoticzVersion':'4.9700'
2019-02-06 12:01:40.280 (Broadcom) 'Mode3':'DIS'
2019-02-06 12:01:40.280 (Broadcom) 'DomoticzHash':'a3a4590-modified'
2019-02-06 12:01:40.280 (Broadcom) 'Name':'Broadcom'
2019-02-06 12:01:40.280 (Broadcom) 'Author':'zak45'
2019-02-06 12:01:40.280 (Broadcom) 'Port':'0'
2019-02-06 12:01:40.280 (Broadcom) 'Mode1':'000000000000'
2019-02-06 12:01:40.280 (Broadcom) 'HardwareID':'8'
2019-02-06 12:01:40.280 (Broadcom) 'Mode6':'Debug'
2019-02-06 12:01:40.280 (Broadcom) 'Mode5':'9000'
2019-02-06 12:01:40.280 (Broadcom) 'Version':'4.1.0'
2019-02-06 12:01:40.280 (Broadcom) Device count: 2
2019-02-06 12:01:40.280 (Broadcom) Device: 1 - ID: 12, Name: 'Broadcom - Discovery', nValue: 0, sValue: ''
2019-02-06 12:01:40.280 (Broadcom) Device ID: '12'
2019-02-06 12:01:40.280 (Broadcom) Device Name: 'Broadcom - Discovery'
2019-02-06 12:01:40.280 (Broadcom) Device nValue: 0
2019-02-06 12:01:40.280 (Broadcom) Device sValue: ''
2019-02-06 12:01:40.280 (Broadcom) Device LastLevel: 0
2019-02-06 12:01:40.280 (Broadcom) Device: 2 - ID: 13, Name: 'Broadcom - Discovery Info', nValue: 0, sValue: ''
2019-02-06 12:01:40.280 (Broadcom) Device ID: '13'
2019-02-06 12:01:40.280 (Broadcom) Device Name: 'Broadcom - Discovery Info'
2019-02-06 12:01:40.280 (Broadcom) Device nValue: 0
2019-02-06 12:01:40.280 (Broadcom) Device sValue: ''
2019-02-06 12:01:40.280 (Broadcom) Device LastLevel: 0
2019-02-06 12:01:40.280 (Broadcom) Pushing 'PollIntervalDirective' on to queue
2019-02-06 12:01:40.280 (Broadcom) Connecting to: 127.0.0.1:000000000000
2019-02-06 12:01:40.280 (Broadcom) Device Number begin to : 1
2019-02-06 12:01:40.280 (Broadcom) Processing 'PollIntervalDirective' message
2019-02-06 12:01:40.280 (Broadcom) Heartbeat interval set to: 30.
2019-02-06 12:01:40.215 Status: (Broadcom) Started.
2019-02-06 12:01:40.279 Status: (Broadcom) Entering work loop.
2019-02-06 12:01:40.279 Status: (Broadcom) Initialized version 4.1.0, author 'zak45'
2019-02-06 12:01:49.780 (Broadcom) Pushing 'onHeartbeatCallback' on to queue
2019-02-06 12:01:49.791 (Broadcom) Processing 'onHeartbeatCallback' message
2019-02-06 12:01:49.791 (Broadcom) Calling message handler 'onHeartbeat'.
Un petit tour rapide sur la page des interrupteurs, et vous devriez avoir un nouvel inter qui est apparu pour faire le discovery de votre Broadlink!

Il semble que certains aient aussi des erreurs avec pyaes, je vous recommande de suivre la même procédure pour copier le contenu du pyaes dans le répertoire plugin (perso je n'en ai pas eu besoin):

Code : Tout sélectionner

cd /usr/local/domoticz/var/plugins/BroadlinkRM2
mkdir pyaes
cp -r /volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages/pyaes/* /usr/local/domoticz/var/plugins/BroadlinkRM2/pyaes
Source: http://www.domoticz.com/forum/viewtopic ... 00#p205359

En espérant que ca aide ceux qui ont des problèmes de configuration de Broadlink avec Domoticz sur DSM! :mrgreen:

Re: Broadlink <-> Domoticz (sur Synology)

Publié : 05 oct. 2019, 12:14
par pepel
Bonjour,

Impossible pour moi d'installer le plugin broadlink...

J'ai installer python3 et pip3. La commande sudo pip3 install des pyaes à fonctionner mais rien à faire pour sudo pip3 install broadlink. Je me retrouve systématiquement avec une erreur... :( :(

Code : Tout sélectionner

sudo pip3 install broadlink
Collecting broadlink
  Using cached https://files.pythonhosted.org/packages/3f/3f/4d9bdca3c37f7987c9e541edc19db8e93562ba7f967f6de4394a35ba1e1f/broadlink-0.12.0.tar.gz
Collecting cryptography>=2.1.1 (from broadlink)
  Using cached https://files.pythonhosted.org/packages/c2/95/f43d02315f4ec074219c6e3124a87eba1d2d12196c2767fadfdc07a83884/cryptography-2.7.tar.gz
  Installing build dependencies ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/local/bin/python3 /volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-wc5ouz_q/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools>=40.6.0' wheel 'cffi>=1.8,!=1.11.3; python_implementation != '"'"'PyPy'"'"''
       cwd: None
  Complete output (123 lines):
  Collecting setuptools>=40.6.0
    Using cached https://files.pythonhosted.org/packages/b2/86/095d2f7829badc207c893dd4ac767e871f6cd547145df797ea26baea4e2e/setuptools-41.2.0-py2.py3-none-any.whl
  Collecting wheel
    Using cached https://files.pythonhosted.org/packages/00/83/b4a77d044e78ad1a45610eb88f745be2fd2c6d658f9798a15e384b7d57c9/wheel-0.33.6-py2.py3-none-any.whl
  Collecting cffi!=1.11.3,>=1.8
    Using cached https://files.pythonhosted.org/packages/93/1a/ab8c62b5838722f29f3daffcc8d4bd61844aa9b5f437341cc890ceee483b/cffi-1.12.3.tar.gz
  Collecting pycparser (from cffi!=1.11.3,>=1.8)
  Building wheels for collected packages: cffi
    Building wheel for cffi (setup.py): started
    Building wheel for cffi (setup.py): finished with status 'error'
    ERROR: Command errored out with exit status 1:
     command: /usr/local/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-jbmjdng2/cffi/setup.py'"'"'; __file__='"'"'/tmp/pip-install-jbmjdng2/cffi/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-fr_5opf8 --python-tag cp35
         cwd: /tmp/pip-install-jbmjdng2/cffi/
    Complete output (48 lines):
    unable to execute '/usr/local/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi-ccache-gcc': No such file or directory
    unable to execute '/usr/local/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi-ccache-gcc': No such file or directory

        No working compiler found, or bogus compiler options passed to
        the compiler from Python's standard "distutils" module.  See
        the error messages above.  Likely, the problem is not related
        to CFFI but generic to the setup.py of any Python package that
        tries to compile C code.  (Hints: on OS/X 10.8, for errors about
        -mno-fused-madd see http://stackoverflow.com/questions/22313407/
        Otherwise, see https://wiki.python.org/moin/CompLangPython or
        the IRC channel #python on irc.freenode.net.)

        Trying to continue anyway.  If you are trying to install CFFI from
        a build done in a different context, you can ignore this warning.

    running bdist_wheel
    running build
    
etc...

Quelqu'un as-t-il une idée pour résoudre mon problème...

Mon installe:
NAS Synology DS218 DSM 6.2.2
Domoticz Version: 4.9700

Re: Broadlink <-> Domoticz (sur Synology)

Publié : 04 nov. 2019, 19:20
par vil1driver
Up..

Re: Broadlink <-> Domoticz (sur Synology)

Publié : 04 avr. 2020, 15:37
par vwstepha
Salut a tous.
A chaque Maj c'est la galère
Pour la nouvelle 2020.1 voici comment j'ai procédé

Code : Tout sélectionner

sudo -H pip3 install broadlink==0.10
                  # i had to copy the broadlink version 0.10 to the lib folder
sudo cp -r /usr/local/lib/python3.7/dist-packages/broadlink-0.10.dist-info/ /usr/lib/python3.7/
sudo pip3 installe pyaes 

Ensuite telecharger comme préconisé sur le wiki
[i]téléchargez plugin.py [2]
téléchargez plugin_send.py [3]
téléchargez plugin_http.py [4]
téléchargez plugin_http.sh [5]
ces fichiers doivent se trouver dans le dossier plugins / BroadlinkRM2 [/i]
sudo chmod + x BroadlinkRM2
et avec cela vous pouvez configurer vos équipements!
Merci à tout ceux qui ont donné des infos ici et là!

Re: Broadlink <-> Domoticz (sur Synology)

Publié : 21 févr. 2021, 18:40
par c4coer
bonjour les liens des fichiers dans le wiki ne sont plus en ligne, pouvez vous les mettres en partage .
merci

Re: Broadlink <-> Domoticz (sur Synology)

Publié : 21 févr. 2021, 21:13
par Keros
Nous n'avons aucun lien avec le site domoticz.com : il faudrait que tu fasses t'a demande sur https://www.domoticz.com/forum : là il y aurait plus de chance que quelqu'un puisse faire quelque chose.