Как говорится в ответе @ lenik, ваш телевизор должен поддерживать CEC. Я установил скомпилированную версию libcec, которая включала утилиту командной строки cec-client
из SourceForge, используя следующие команды:
wget http://sourceforge.net/projects/selfprogramming/files/libCEC.deb/libcec_2.1.0-1_armhf.deb/download -O libcec_2.1.0-1_armhf.deb
sudo dpkg -i libcec_2.1.0-1_armhf.deb
ОБНОВЛЕНИЕ: 2017-02-27
Ссылка выше на SourceForge больше не существует. Согласно этой статье вы можете установить cec-client
с помощью следующей команды:
sudo apt-get install cec-utils
Остальная часть этого ответа должна быть действительной.
Вот ветка на raspberrypi.org, в которой обсуждается использование cec-client
команд для выдачи команд.
В потоке говорится, что следующая команда успешно включила телевизор Samsung:
echo "on 0" | cec-client -s
Следующие команды изменяют источник с ТВ-тюнера на Raspi HDMI:
echo "as" | cec-client -s
или
echo "tx 1f 82 30 00" | cec-client -s
Следующие команды не помогли выключить телевизор:
echo "tx 10 36" | cec-client -s
или
echo "standby 0" | cec-client -s
standby 0
DEBUG: [ 56474] << putting 'TV' (0) in standby mode
TRAFFIC: [ 56476] << 10:36
DEBUG: [ 56477] sending data: len = 1, payload = 10:36
DEBUG: [ 56538] received data: header:00020001 p0:00003610 p1:00000000 p2:00000000 p3:00000000 reason:1
DEBUG: [ 56539] command transmitted
DEBUG: [ 56660] received data: header:00040002 p0:04360001 p1:00000000 p2:00000000 p3:00000000 reason:2
TRAFFIC: [ 56661] >> 01:00:36:04
NOTICE: [ 56661] >> TV (0) -> Recorder 1 (1): feature abort ( 0)
DEBUG: [ 56661] marking opcode 'standby' as unsupported feature for device 'TV'
echo "standby 0" | cec-client -s
отлично работает для моего телевизора Panasonic, хотя процесс останавливается после, и мне пришлосьkill -9
это сделать.cec-client
Вам нужен телевизор с поддержкой протокола CEC (Consumer Electronics Control) по HDMI. Было бы неплохо проконсультироваться с руководством по телевизору или на веб-сайте компании, чтобы узнать подробности о вашем конкретном случае, также быстрый поиск по «TV_model + CEC» может дать вам несколько советов.
в основном, если ваш телевизор сделан всего несколько лет назад, есть хороший шанс, что вы сможете найти, как настроить и включить CEC, но для более старых моделей шансы не так хороши.
Реализация Samsung CEC называется
Anynet+
, вы можете попытаться найти это тоже.источник
Вы можете сделать что-то вроде пульта для телевизора с ИК-светодиодом . На Adafruit есть учебник о том, что вы хотели бы сделать. Вот еще одно сообщение в блоге на ту же тему.
Примечание: вам придется использовать контакты GPIO. Я не уверен, искали ли вы решение, которое использовало бы их или нет.
источник
После установки cec-client согласно приведенному выше ответу HeatfanJohn, я успешно могу включить / выключить мой светодиодный HDTV Vizio E390i-A1. Я написал скрипт для сообщества:
Создать новый файл через:
вставьте в следующее:
Сделайте его исполняемым:
Затем создайте псевдонимы:
добавить следующее:
Сохраните, выйдите, выйдите из системы / войдите в систему (или просто загрузите ваш .bashrc). Теперь вы можете включить или выключить телевизор, используя «tvon» и «tvoff».
Теперь вы можете запланировать ночную работу, чтобы выключить телевизор на случай, если вы заснете:
Добавьте следующее:
источник
Я также написал пару сценариев, чтобы помочь с этим. Я пошел немного дальше, чем CaptainRewind, хотя он хорошо поработал. Это всего лишь сценарий оболочки, написанный для управления моим телевизором, поэтому я не включил ничего, что он не поддерживает (например, регуляторы громкости и каналов; я все еще ищу способ сделать любой из этих вариантов, не покупая много дополнительного аппаратного обеспечения) и включает специфические для установки детали, такие как «tv input raspi», являющийся синонимом «tv input 3», но я оставил их так, чтобы вы могли видеть, как сделать такие настройки для себя.
Вы можете легко использовать его, если вы поместите его в / usr / local / bin / tv, введя такие команды, как "tv on", "tv off" или "tv input 1", или вы можете просто поместить его в свой домашний каталог как tv. Sh и использовать его прямо оттуда.
Я надеюсь, что это помогает некоторым людям.
источник
Возможно, вы захотите повторить попытку с последней версией XBMC (теперь она называется Kodi). Мне повезло больше с моим телевизором Samsung UE46F6500 и OpenELEC (официальной) версией 5.95.3 с Kodi, хотя контроль CEC теряется после установки моего телевизора. в режиме ожидания или снова включить телевизор:
Ожидать:
На:
Изменить источник:
Однако эти функции исключают контроль интерфейса CEC от Kodi, поэтому Kodi теряет контроль CEC после выполнения любой из этих команд, и пульт перестает работать. Вам нужно будет перезапустить Kodi, чтобы он снова заработал:
Kodi (> = 13) имеет встроенные функции CECToggleState, CECActivateSource, CECStandby. Некоторые люди работают над передачей этих команд cec через python, используя эти встроенные функции, или ищут возможность открыть оборудование cec в режиме совместного использования: http://forum.kodi.tv/showthread.php?tid=207524 и https://discourse.osmc.tv/t/control-tv-on-standby-toggle-using-cec-kodi-built-in- функции / 3638/4
источник