[Tuto] Télécommande Logitech Companion + Bridge Hue + Domoticz

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
jec_44
Messages : 16
Inscription : 09 déc. 2015, 11:29

[Tuto] Télécommande Logitech Companion + Bridge Hue + Domoticz

Message par jec_44 »

Bonjour,

Pour ce nouveau tuto j'ai cherché une bonne télécommande moindre coût pour contrôler mes appareils TV/Hifi/Freebox mais cerise sur le gâteau, mes modules domoticz..
Voici la bête :
Image

Vous pouvez la trouver au environ de 130 euros.http://www.amazon.fr/Logitech-Harmony-C ... B014GXQ3S4

Pour la suite j'utilise un bridge logiciel sur raspberry qui simule le bridge Philips Hue :D , une petite adaptation de script et je contrôle les lumières du salon, les volets roulants, les spots ... (jusqu'a 4 appareils)

et double cerise sur le gâteau : tout est contrôlable par Domoticz même le hub Logitech !

Comment faire ?? https://sites.google.com/site/au66bis/l ... ny/hueupnp

Bon courage !
Raspberry PI / Domoticz version stable / Sondes Oregon / Freebox / Harmony Companion / Synology DS215J / Fibaro / Dlink / Di-o / Philips Hue
deennoo
Messages : 4036
Inscription : 25 janv. 2015, 02:00

Re: Télécommande Logitech Companion + Bridge Hue + Domoticz

Message par deennoo »

Merci ! Pour le partage !!
De quoi se faire Plaisir et essayer d'aider...
http://www.domo-attitude.fr
eldoctor62
Messages : 1
Inscription : 12 juil. 2018, 16:57

Re: Télécommande Logitech Companion + Bridge Hue + Domoticz

Message par eldoctor62 »

Hello a tous,

Ces travaux m'interesse beaucoup, j'ai tenté le tuto de A a Z sur un odroid C2

Tout semble etre identique... Sauf home/pi mais j'ai crée un dossier /pi dans le home :)

A la fin j'ai ceci :

Code : Tout sélectionner

root@odroidc2:/pi/hueupnp# python hueUpnp.py
2018-07-12 16:09:16,398 [DEBUG] Adding device: PC WOL - type: script_handler
2018-07-12 16:09:16,399 [DEBUG] Adding device: Wemo Outlet - type: script_handler
2018-07-12 16:09:16,400 [DEBUG] Adding device: Wemo Light - type: script_handler
2018-07-12 16:09:16,400 [INFO ] hueUpnp: Server starting
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "hueUpnp.py", line 173, in run
sockresp.bind((CONFIG.standard['IP'], CONFIG.standard['UPNP_PORT']))
File "/usr/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
error: [Errno 99] Cannot assign requested address

2018-07-12 16:09:16,406 [INFO ] hueUpnp: Starting HTTP server for 192.168.1.200:8080
2018-07-12 16:09:16,407 [INFO ] hueUpnp: Http Socket Error: [Errno 99] Cannot assign requested address
Exception in thread Thread-2:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "hueUpnp.py", line 142, in run
sock.bind((CONFIG.standard['IP'],0))
File "/usr/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
error: [Errno 99] Cannot assign requested address

2018-07-12 16:09:16,429 [INFO ] hueUpnp: Waiting for connections to end before exiting
Traceback (most recent call last):
File "hueUpnp.py", line 703, in <module>
run(hueUpnp_config);
File "hueUpnp.py", line 651, in run
httpd.stop()
File "hueUpnp.py", line 262, in stop
self.server.shutdown()
AttributeError: 'Httpd' object has no attribute 'server'
root@odroidc2:/pi/hueupnp# 
J'ai bien controlé mon fichier config mais je seche... Bizarrement dans ma config :

Code : Tout sélectionner

# Some Global Variables
standard = {
#Start with a '-d' to force debug mode
'DEBUG': True,
#Standard Broadcast IP UPNP
'BCAST_IP': "255.255.255.000",
#Standard UPNP Port
'UPNP_PORT': 1900,
# Seconds between upnp broadcast
'BROADCAST_INTERVAL': 200,
# Callback http webserver IP (this machine)
'IP': "192.168.1.54",
# HTTP-port to serve icons, xml, json (80 is most compatible but requires root)
'HTTP_PORT': 3535,
# shouldn't matter but feel free to adjust
'GATEWAYIP': "192.168.1.1",
# shouldn't matter but feel free to adjust
#'MACADDRESS': "b8:27:eb:22:80:5c",
# Set default ON state for all device to "true" or "false" when first starting
'DEFAULT_ON_STATE': "false",
# Set default BRIGHTNESS state for all device to a value 0-254 when first starting
'DEFAULT_BRI_STATE': 0,
}
from collections import OrderedDict
devices = OrderedDict([
('Salon', ('script_handler', './hue-upnp-helper.sh')),
('Volets', ('script_handler', './hue-upnp-helper.sh')),
('Buffet', ('script_handler', './hue-upnp-helper.sh')),
])
Je pense qu'il y a des erreurs mais je ne comprends pas :/

J'ai mis tout les fichiers dans le dossier /pi/hueupnp

Merci de votre aide :)
olivier10
Messages : 13
Inscription : 08 oct. 2018, 07:26

Re: Télécommande Logitech Companion + Bridge Hue + Domoticz

Message par olivier10 »

Bonjour,

Je remonte le topic, après quelques heures, j'ai réussi à mettre en œuvre le tuto. le raspberry est bien reconnu comme un bridge hue par l'appli logitech, les boutons "domotique" sont configurés sur la telecommande elite.

Malheureusement le matériel "logitech remote" dans domoticz n'existe pas ou plus et "harmony Hub" ne fait pas apparaitre les nouveaux dispositifs domotique.

Bref si quelqu'un peut m'aiguiller pour rendre ces boutons fonctionnels dans domoticz.
Merci

EDIT: Je me répond à moi même, une fois la compréhension des IDX acquise, tout est fonctionnel donc problème résolu
Seraph
Messages : 21
Inscription : 21 mars 2019, 13:29

Re: Télécommande Logitech Companion + Bridge Hue + Domoticz

Message par Seraph »

Bonjour,

J'ai suivi ce super tuto il y a quelques temps maintenant et tout fonctionnait super bien sur mon NAS.
Hélas depuis un redémarrage et une réinstalle de Domoticz, je m'arrive plus a lancer le script hueUpnp.py.
J'utilise pyhton 3.5, ce qui amène pas mal de problème de conversion on dirait.

Voici l'exception qui ressort:

Code : Tout sélectionner

Traceback (most recent call last):
  File "/volume1/@appstore/py3k/usr/local/lib/python3.5/threading.py", line 914, in _bootstrap_inner
    self.run()
  File "hueUpnp.py", line 146, in run
    sock.sendto(UPNP_BROADCAST, (CONFIG.standard['BCAST_IP'], CONFIG.standard['UPNP_PORT']))
TypeError: a bytes-like object is required, not 'str'

Exception in thread Thread-1:
Traceback (most recent call last):
  File "/volume1/@appstore/py3k/usr/local/lib/python3.5/threading.py", line 914, in _bootstrap_inner
    self.run()
  File "hueUpnp.py", line 185, in run
    if M_SEARCH_REQ_MATCH in data:
TypeError: a bytes-like object is required, not 'str'

Quand je tape l'erreur sur internet j'ai l'impression que c'est un problème de conversion bytes en string mais je ne sais pas qui ou quoi convertir. Je ne suis pas super à l'aise en python... Quelqu'un pourrait me filer un coup de main?

Il me semble qu'avant je le lançait en python version 2 quelques chose. Mais quand j'utilise la commande python hueUpnp.py start -d j'ai cette erreur:

Code : Tout sélectionner

Traceback (most recent call last):
  File "hueUpnp.py", line 9, in <module>
    import socket, struct, email.utils, time, socketserver, re, subprocess, sys, logging, logging.handlers, _thread
ImportError: No module named socketserver.
Update 21/04/2020:
J'ai trouvé, passer de Python 2 à Python3.6 pose quelques problèmes de conversion. J'ai donc mis quelques encode() decode() à droite a gauche pour corrigé tous les problèmes et le code marche de nouveau parfaitement.

Merci beaucoup Jec_44, c'est vraiment génial de controller ses volets depuis la télécommande harmony.
En plus le mode debug de ton code est génial. Même un débutant comme moi a réussi à s'en sortir ;-)

Bonne journée
Répondre