Allumer et éteindre la télévision par JARVIS via raspberry et cable HDMI

Author: 
trarizakaria

Le HDMI CEC est un protocole qui permet le contrôle d'un périphérique à l'aide de la télécommande d'un autre, et vice versa. Par exemple vous pouvez contrôler un récepteur numérique si ce dernier est compatible CEC via la télécommande de de la tv.  Si vous avez la chance d'avoir un téléviseur compatible CEC le cas de la plupart des tv moderne on aura la possibilité d'éteindre et d'allumer ce dernier par une Raspberry Pi via un câble HDMI. Cette fonctionnalité est transparente pour l'utilisateur mais certains constructeurs permettent d'activer ou désactiver cette fonction dans les réglages. L’appellation de la technologie CEC est différente selon le constructeur :

  • Samsung – Anynet+
  • Sony – BRAVIA Link or BRAVIA Sync
  • Sharp – Aquos Link
  • Hitachi – HDMI-CEC
  • AOC – E-link
  • Pioneer – Kuro Link
  • Toshiba – Regza Link or CE-Link
  • Onkyo – RIHD (Remote Interactive over HDMI)
  • LG – SimpLink
  • Panasonic – VIERA Link or HDAVI Control or EZ-Sync
  • Philips – EasyLink
  • Mitsubishi – NetCommand for HDMI
  • Runco International – RuncoLink

Prérequis :

  1. Raspberry pi (celle de jarvis ou une autre qu’on commandera par ssh)
  2. Un téléviseur compatible CEC.
  3. Un câble hdmi.
  4. Installer cec utils.

 

Connecter la raspberry avec le téléviseur par câble HDMI

Installer cec-utils par : 

sudo apt-get install cec-utils

Une fois l’installation terminée vous pouvez :

Allumer la tv :  

 echo on 0 | cec-client -s -d 1

Eteindre la tv :   

echo standby 0 | cec-client -s -d 1

Voir le si la tv est allumée ou éteinte :  

 echo pow 0 | cec-client -s -d 1

Basculer la tv vers la source active :   

echo 'as'|cec-client –s

 

Vous n’avez qu’à définir les commandes pour Jarvis :

 

*ETEIND*LA*TELE*==echo standby 0 | cec-client -s -d 1 && say "la tele est eteinte"

*ALLUME*LA*TELE*==echo on 0 | cec-client -s -d 1 && "la tele est alumée"

 

NB : n'oubliez pas de fouiller dans les réglages de la télevision pour activer le CEC selon l'appelation constructeur "simplink" pour LG par exemple. 

pour SAMSUNG dans menu==>systéme==>anynet+==> activé  et arrêt automatique = oui (si la tv s'allume mais ne s'éteind pas )

update  

 ̶s̶i̶ ̶v̶o̶u̶s̶ ̶u̶t̶i̶l̶i̶s̶e̶z̶ ̶d̶é̶j̶à̶ ̶l̶e̶ ̶C̶E̶C̶ ̶p̶o̶u̶r̶ ̶c̶o̶n̶t̶r̶ô̶l̶e̶r̶ ̶K̶O̶D̶I̶ ̶s̶u̶r̶ ̶ ̶r̶a̶s̶p̶b̶e̶r̶r̶y̶ ̶ ̶P̶I̶,̶ ̶l̶e̶ ̶c̶o̶n̶t̶r̶ô̶l̶e̶ ̶d̶e̶ ̶K̶O̶D̶I̶ ̶c̶e̶s̶s̶e̶r̶a̶ ̶d̶e̶ ̶f̶o̶n̶c̶t̶i̶o̶n̶n̶e̶r̶ ̶c̶a̶r̶ ̶l̶’̶a̶d̶a̶p̶t̶a̶t̶e̶u̶r̶ ̶C̶E̶C̶ ̶n̶e̶ ̶p̶o̶u̶r̶ ̶ê̶t̶r̶e̶ ̶u̶t̶i̶l̶i̶s̶é̶e̶ ̶q̶u̶e̶ ̶p̶a̶r̶ ̶u̶n̶ ̶s̶e̶u̶l̶ ̶p̶r̶o̶g̶r̶a̶m̶m̶e̶.̶

vous pouvez éteindre et allumer la télé sans installer et utiliser CEC-UTILS, et ce via les commandes built-in de kodi version 17 (si ça tourne sur le même raspberry ) 

*ETEIND*LA*TELE*==kodi-send --action="CECStandby" && say "la tele est eteinte"

*ALLUME*LA*TELE*==kodi-send --action="CECActivateSource" && "la tele est alumée"

Comments

alex's picture
Submitted by alex Mon, 2017-02-20 17:21
Super article, merci pour le partage! J'ai hâte d'essayer chez moi sur mon téléviseur LG.
Crali's picture
Submitted by Crali (not verified) Thu, 2017-02-23 10:26
Parfait ! Fonctionne très bien sur mon téléviseur Panasonic. Merci beaucoup :)
LaurentSt's picture
Submitted by LaurentSt Wed, 2018-03-21 09:10
Téléviseur Samsung fonctionne très bien. HDMI4 ARC