Dapatkan Denon AVR untuk secara otomatis menyalakan/mematikan proyektor Optima.
Saya menemukan bahwa ketika saya menyalakan proyektor Denon AVR (x4500) saya, optima (HD142X) yang terhubung dengan tidak akan secara otomatis dinyalakan. Ini harus berhasil. Tetapi protokol HDMI yang terlibat (disebut "CEC") seringkali tidak dapat diandalkan, terutama ketika menggabungkan produk dari berbagai merek (Denon dan Optima dalam kasus ini).
Saya menghubungkan raspberry pi ke salah satu input HDMI Denon AVR. Saya mengkonfigurasi jaringan di Denon AVR dan Raspberry Pi sehingga Raspberry Pi dapat terhubung ke alamat IP Denon AVR.
Menjalankan kode (Main.cc) pada Raspberry Pi berarti PI akan melihat ketika Denon AVR dinyalakan dan kemudian akan menyalakan proyektor Optima (melalui kabel HDMI -nya). Demikian pula, ketika Denon AVR dimatikan, PI akan melihat dan mematikan proyektor Optima.
Anda perlu mengkonfigurasi beberapa pengaturan di Denon AVR.
Pastikan Denon terhubung ke jaringan Anda. Saya melakukan ini dengan menggunakan ITO The Setup Menu-> Network-> Connection dan Mengkonfigurasi Koneksi WiFi. Saya memberi unit alamat IP statis (192.168.1.45) sehingga PI akan memiliki alamat IP yang dapat diprediksi untuk terhubung.
Saya juga mengatur Menu Pengaturan-> Jaringan-> Kontrol Jaringan Menjadi "Selalu Aktif". Ini berarti bahwa PI dapat terhubung ke AVR bahkan ketika dimatikan.
Dalam pengaturan video/HDMI saya telah mengatur:
Saya menggunakan Raspberry Pi Zero W. Saya menghubungkannya ke salah satu input HDMI ruang di bagian belakang AVR. Saya menginstal Raspbian 10 di atasnya. Saya mengkonfigurasi jaringan sehingga dapat terhubung ke IP Denon AVR.
Anda perlu menginstal C ++ Compier
sudo apt install g++
Juga, Make Utility
sudo apt install make
instal git
sudo apt install git
dan juga beberapa perpustakaan yang terkait dengan HDMI/CEC
sudo apt install libraspberrypi-dev libraspberrypi0
sudo apt install cec-utils libcec4
Tambahkan pengaturan berikut ke file /boot/config.txt
hdmi_ignore_cec_init=1
dan reboot.
fix-cec git clone https://github.com/stuart-mclaren/fix-cec
fix-cec Pertama, sebelum menyusun Anda perlu mengedit file main.cc untuk memasukkan alamat IP Denon AVR Anda.
Ubah baris ini:
#define IPADDR "192.168.1.45"
untuk mencocokkan alamat IP Denon AVR Anda. Misalnya jika alamat IP 192.168.0.100 Ubah garis menjadi:
#define IPADDR "192.168.0.100"
fix-cec Untuk mengkompilasi kode, jalankan yang berikut (dari dalam direktori fix-cec ):
make
Ini akan membuat file fix-cec .
fix-cec sudo make install
Ini akan menyalin biner ke /usr/local/bin/fix-cec dan mengkonfigurasi layanan SystemD yang disebut fix-cec untuk menjalankan biner secara otomatis ketika PI boot.
Anda dapat memeriksa layanan dengan benar dimulai saat boot dengan me -reboot pi
sudo reboot
Dan kemudian, setelah PI boot, berjalan:
systemctl status fix-cec
Jika berhasil, output harus ditampilkan:
● 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
Perhatikan pesan "Terhubung": Ini berarti PI yang terhubung ke alamat IP AVR berhasil. Berbagai pesan DP adalah output dari AVR. Pesan DPX adalah debug.
Kode banyak log. Anda perlu memastikan bahwa log, misalnya /var /log diputar untuk menghindari mengisi sistem file.
Atau, hapus berbagai pernyataan printf dari main.cc
Dalam beberapa kasus, misalnya saat menggunakan meja putar atau tuner, Anda mungkin tidak ingin proyektor menyala ketika Anda menyalakan AVR.
Lihat catatan berikut dalam kode cara mengubah perilaku ini:
Note: For non-video sources
Pada dasarnya tambahkan 100 ke sumber yang Anda tidak ingin memberi daya pada proyektor. Misalnya untuk mencegah proyektor menyala saat bermain catatan vinil mengubah garis ini:
phono = 9,
untuk ini
phono = 109,
Ini mengasumsikan bahwa Anda memiliki set berikut pada AVR
RC Source Select = Power On + Source
Dan Anda menyalakan AVR dengan menekan tombol Phono pada remote control AVR.
Kode ini didasarkan pada https://github.com/glywood/cec-fix