Denon AVR이 Optima 프로젝터를 자동으로 전원 켜기/끄기 위해 가져 오십시오.
나는 Denon AVR (x4500)을 켜면 연결된 Optima (HD142X) 프로젝터가 자동으로 켜지지 않을 것임을 알았습니다. 이것은 작동 해야합니다 . 그러나 관련된 HDMI 프로토콜 ( "CEC"라고 함)은 특히 다른 브랜드의 제품을 결합 할 때 종종 신뢰할 수 없습니다 (이 경우 Denon 및 Optima).
나는 Raspberry Pi를 Denon AVR의 HDMI 입력 중 하나에 연결했습니다. Raspberry Pi가 Denon AVR의 IP 주소에 연결할 수 있도록 Denon AVR 및 Raspberry Pi에서 네트워킹을 구성했습니다.
Raspberry Pi에서 Code (Main.Cc)를 실행한다는 것은 Denon AVR이 켜지면 PI가 알게 된 다음 OPTIMA 프로젝터 (HDMI 케이블을 통해)를 켤 때 PI가 알 수 있음을 의미합니다. 마찬가지로 Denon AVR이 꺼지면 PI는 Optima 프로젝터를 알아 차리고 끕니다.
Denon AVR에서 일부 설정을 구성해야합니다.
Denon이 네트워크에 연결되어 있는지 확인하십시오. 설정 메뉴-> 네트워크-> 연결 및 Wi-Fi 연결 구성으로이를 수행 하여이 작업을 수행했습니다. PI가 연결할 예측 가능한 IP 주소를 갖도록 정적 IP 주소 (192.168.1.45)를 제공했습니다.
또한 설정 메뉴-> 네트워크-> 네트워크 컨트롤을 "항상 ON"으로 설정했습니다. 이는 PI가 꺼져 있어도 AVR에 연결할 수 있음을 의미합니다.
비디오/HDMI 설정에서 다음을 설정했습니다.
나는 Raspberry Pi Zero W를 사용했습니다. 나는 그것을 AVR 뒷면의 Space HDMI 입력 중 하나에 연결했습니다. 나는 그것에 Raspbian 10을 설치했습니다. 네트워킹이 Denon AVR의 IP에 연결할 수 있도록 구성했습니다.
C ++ 상칭자가 설치되어 있어야합니다
sudo apt install g++
또한, 유용성
sudo apt install make
git을 설치하십시오
sudo apt install git
또한 HDMI/CEC와 관련된 일부 라이브러리
sudo apt install libraspberrypi-dev libraspberrypi0
sudo apt install cec-utils libcec4
다음 설정을 파일 /boot/config.txt 에 추가하십시오
hdmi_ignore_cec_init=1
그리고 재부팅.
fix-cec 를 다운로드하십시오 git clone https://github.com/stuart-mclaren/fix-cec
fix-cec 먼저, 컴파일하기 전에 Denon AVR의 IP 주소를 입력하려면 main.cc 를 편집해야합니다.
이 선을 변경하십시오.
#define IPADDR "192.168.1.45"
Denon AVR의 IP 주소와 일치합니다. 예 : IP 주소가 192.168.0.100 인 경우 다음으로 줄을 변경합니다.
#define IPADDR "192.168.0.100"
fix-cec 컴파일 코드를 컴파일하려면 다음을 실행합니다 ( fix-cec 디렉토리 내부에서) :
make
파일 fix-cec 생성됩니다.
fix-cec 설치 sudo make install
이로 인해 바이너리를 /usr/local/bin/fix-cec 로 복사하고 PI 부츠가있을 때 이진을 자동으로 실행하기 위해 fix-cec 라는 SystemD 서비스를 구성합니다.
PI를 재부팅하여 서비스가 부팅에서 올바르게 시작되는지 확인할 수 있습니다.
sudo reboot
그런 다음 PI가 부팅되면 실행됩니다.
systemctl status fix-cec
작동하는 경우 출력이 표시되어야합니다.
● fix-cec.service - fix-cec service
Loaded: loaded (/etc/systemd/system/fix-cec.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-01-16 15:57:53 GMT; 6min ago
Main PID: 394 (fix-cec)
Tasks: 5 (limit: 421)
CGroup: /system.slice/fix-cec.service
└─394 /usr/local/bin/fix-cec
Jan 16 16:03:03 piston fix-cec[394]: Connected
Jan 16 16:03:03 piston fix-cec[394]: DPX: SKIP
Jan 16 16:03:03 piston fix-cec[394]: DPSI: SI=5
Jan 16 16:03:03 piston fix-cec[394]: DP: PSTRE 50
Jan 16 16:03:03 piston fix-cec[394]: DPX: SKIP
Jan 16 16:03:03 piston fix-cec[394]: DPSI: SI=5
Jan 16 16:03:03 piston fix-cec[394]: DP: PSTONE CTRL OFF
Jan 16 16:03:03 piston fix-cec[394]: DPX: SKIP
Jan 16 16:03:03 piston fix-cec[394]: DPSI: SI=5
Jan 16 16:03:03 piston fix-cec[394]: DP: SSSMG MOV
Jan 16 16:03:03 piston fix-cec[394]: DPX: SKIP
"Connected"메시지에 유의하십시오. 이는 AVR의 IP 주소에 성공적으로 연결된 PI를 의미합니다. 다양한 DP 메시지는 AVR에서 출력됩니다. DPX 메시지는 디버그입니다.
코드가 많이 로그를 작성합니다. 파일 시스템을 채우지 않도록 /var /로그의 로그가 회전해야합니다.
또는 main.cc 에서 다양한 printf 문을 제거하십시오.
경우에 따라 턴테이너 또는 튜너를 사용할 때는 AVR을 켜면 프로젝터가 켜지지 않을 수 있습니다.
이 동작을 변경하는 방법에 대한 코드의 다음 메모를 참조하십시오.
Note: For non-video sources
기본적으로 프로젝터에서 전원을 공급하지 않는 소스에 100 추가하십시오. 예를 들어 Vinyl Records를 재생할 때 프로젝터가 켜지지 않도록이 선이 변경됩니다.
phono = 9,
이것에
phono = 109,
이것은 AVR에 다음 세트가 있다고 가정합니다.
RC Source Select = Power On + Source
그리고 당신은 AVR의 리모컨에서 Phono 버튼을 눌러 AVR을 켜 있습니다.
이 코드는 https://github.com/glywood/cec-fix를 기반으로합니다