2013-03-09 4 views
2

내 마스터 플랜은 내 나무 딸기 파이에서 CEC 명령을 보내 TV 및 TV에 연결된 다른 장치를 켜고 끌 수 있습니다. 그런 다음 음성 인식을 추가하여 이러한 명령을 보내 게됩니다. 그것은 다른 날입니다. CEC에서 읽었지만 CEC USB 어댑터없이 명령 줄을 통해 직접 CEC 명령을 보낼 수없는 것처럼 수집 한 것 같습니다. 내 pi에 cec-client 및 libCEC 라이브러리를 설치했지만 cec-client -l을 실행하면 장치가 표시되지 않습니다.HDMI를 통해 명령 줄을 통해 CEC 명령 보내기

제 질문은 어댑터없이 파이에서 명령 줄을 통해 내 TV로 CEC 명령을 보내려면 어떻게합니까? CEC에 대한 기본 요소가 빠졌습니까?

여기 아래 게시물에 추가

UPDATE

내가/TV를 켜고 끄 내 .bashrc에 내 뒀다 좀 더 CEC 명령이 유래의 PI 부분에 질문 링크입니다 그리고 CEC 어댑터로 라즈베리 파이 하드웨어를 인식 입력을 libcec의

https://raspberrypi.stackexchange.com/questions/5345/raspmbc-send-cec-commands-without-cec-adapter

+1

에서 추출 명령하지만 어쩌면 그것이 시작이다 포인트. [libCEC] (https://github.com/Pulse-Eight/libcec) – ManuelSchneid3r

답변

3

최신 버전을 변경합니다.
는 기본적으로 명령 줄을 통해 제어 명령을 전송하려면 :

echo "on 0" | cec-client -s 

장치 0 (즉, 당신의 TV)보다 복잡한 명령

+1

현재 cec-client는 모든 활성 CEC 리스너의 등록을 취소합니다. 이 코디를 실행하면 HDMI 네트워크에 연결이 끊어집니다. –

1

당신이 할 수있는 파이프
체크 아웃 CEC 클라이언트 대화 형 쉘에 전원을 공급합니다

echo "on 0"  | cec-client -s # turn on the television 
echo "standby 0" | cec-client -s # turn it off (standby) 

는 완성도를 들어, 다음은 당신이

을 할 수있는 다른 것들 바이너리 CEC 클라이언트에 명령

목록에 연결된 장치

tv# cec-client -l 
libCEC version: 3.1.0, git revision: libcec-3.1.0+5-6d68d21, compiled on Fri 8 Apr 15:44:58 UTC 2016 by [email protected] on Linux 4.1.19-v7+ (armv7l), features: P8_USB, DRM, P8_detect, randr, RPi 
Found devices: 1 

device:    1 
com port:   RPI 
vendor id:   2708 
product id:   1001 
firmware version: 1 
type:    Raspberry Pi 

확인 가능한 모든 CEC는

tv# echo h | cec-client -s -d 1 
opening a connection to the CEC adapter... 

================================================================================ 
Available commands: 

[tx] {bytes}    transfer bytes over the CEC line. 
[txn] {bytes}    transfer bytes but don't wait for transmission ACK. 
[on] {address}   power on the device with the given logical address. 
[standby] {address}  put the device with the given address in standby mode. 
[la] {logical address} change the logical address of the CEC adapter. 
[p] {device} {port}  change the HDMI port number of the CEC adapter. 
[pa] {physical address} change the physical address of the CEC adapter. 
[as]      make the CEC adapter the active source. 
[is]      mark the CEC adapter as inactive source. 
[osd] {addr} {string}  set OSD message on the specified device. 
[ver] {addr}    get the CEC version of the specified device. 
[ven] {addr}    get the vendor ID of the specified device. 
[lang] {addr}    get the menu language of the specified device. 
[pow] {addr}    get the power status of the specified device. 
[name] {addr}    get the OSD name of the specified device. 
[poll] {addr}    poll the specified device. 
[lad]      lists active devices on the bus 
[ad] {addr}    checks whether the specified device is active. 
[at] {type}    checks whether the specified device type is active. 
[sp] {addr}    makes the specified physical address active. 
[spl] {addr}    makes the specified logical address active. 
[volup]     send a volume up command to the amp if present 
[voldown]     send a volume down command to the amp if present 
[mute]     send a mute/unmute command to the amp if present 
[self]     show the list of addresses controlled by libCEC 
[scan]     scan the CEC bus and display device info 
[mon] {1|0}    enable or disable CEC bus monitoring. 
[log] {1 - 31}   change the log level. see cectypes.h for values. 
[ping]     send a ping command to the CEC adapter. 
[bl]      to let the adapter enter the bootloader, to upgrade 
          the flash rom. 
[r]      reconnect to the CEC adapter. 
[h] or [help]    show this help. 
[q] or [quit]    to quit the CEC test client and switch off all 
          connected CEC devices. 
================================================================================ 

내가 당신을 위해 사용의 경우 잘 모릅니다

https://ownyourbits.com/2017/02/02/control-your-raspberry-pi-with-your-tv-remote/