当我启动Raspberry时,我的电视被CEC唤醒了。

是否有一种方法可以使用shell发送唤醒信号,例如,每天早上7点我都可以使用cronjob来启动电视?

评论

我没有任何CEC设备,所以我无法自己进行测试,但是libcec的cec-client似乎可以实现您所需要的。

#1 楼

我正在使用Raspbian的“ wheezy”。

设置

sudo apt-get update;
sudo apt-get install gcc autoconf libtool pkg-config libselinux1-dev liblockdev1-dev gawk g++ c++ libgudev-1.0-dev libudev-dev;

mkdir -p $HOME/distr/libcec; 
wget -P $HOME/distr/libcec https://github.com/Pulse-Eight/libcec/archive/master.zip;
unzip $HOME/distr/libcec/master.zip -d $HOME/distr/libcec/;
cd $HOME/distr/libcec/libcec-master;
./bootstrap;
./configure --with-rpi-include-path=/opt/vc/include --with-rpi-lib-path=/opt/vc/lib --enable-rpi;
make;
sudo make install;
sudo apt-get install cec-utils;


用法

使用echo 'standby 0' | cec-client -s关闭电视和echo 'on 0' | cec-client -s打开。

如果第一个不起作用,则可能还必须用/usr/local/bin/cec-client代替cec-client(或重新配置PATH)。

#2 楼

命令:

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


有问题,因为它可以打开电视,但ALSO会将Raspberry Pi设置为活动源。似乎将源更改为电视内部调谐器的唯一方法是为我的飞利浦电视使用JointSPACE框架。我未能成功尝试几种不同的CEC命令组合来激活内部调谐器。可以使用CEC在HDMI源之间切换,但是我还没有发现如何切换到内部调谐器...

#3 楼

我有类似的东西,命令echo 'on 0'|cec-client -s -d 1只打开电视,我很好奇是否有一个命令可以打开电视并将输入切换到pi。我也很好奇是否有可能在启动时运行它?

ANSWERED :(我回答了上面的问题,添加到etc / rc.local中以便在启动时运行。)仍然很好奇为什么单个命令不起作用。有任何想法吗?

echo 'on 0'|cec-client -s <- Turn on TV
echo 'as'|cec-client -s <- Initiate input Pi is active on


但是同时运行这两个命令只会让我有力量。没什么大不了的,因为我只是在启动时同时运行这两个,但是很好奇为什么合并后的一个不起作用。