π
2009-05-27 01:01
in Linux, Linuxha
I had a minor issue where I have 4 hauppage remote controls and one on the kitchen counter that I sometimes use to control my mythtv when I'm in the kitchen.
The only problem was that sound is actually controlled by the Denon receiver and that the hauppage remote doesn't talk to the denon.
I finally found a fix for this, which somewhat justifies the extra money I spent for an ethernet connected receiver: I wrote an lirc configuration that effectively telnets to the denon to tell it to change volume when the hauppage receives a relevant remote code for that.
lircrc:
# Denon
# Mute
begin
prog = irexec
button = MUTE
repeat = 1
config = /var/local/scr/denonmute
end
begin
prog = irexec
button = Vol+
repeat = 1
config = /var/local/scr/denoncmd MVUP 3
end
begin
prog = irexec
button = Vol-
repeat = 1
config = /var/local/scr/denoncmd MVDOWN 3
end
denonmute:
#!/bin/bash
FILE=/var/run/denonmute
test -f $FILE || touch $FILE
# prevent bounces
[ $(( $(date "+%s") - $(stat -c "%Z" $FILE) )) -lt 2 ] && exit
if grep -q MUON $FILE 2>/dev/null; then
CMD=MUOFF
else
CMD=MUON
fi
echo -ne "$CMD\r" | nc -q0 denon 23
echo $CMD > $FILE
denoncmd:
#!/bin/bash
# $0 cmd [repeat]
for i in `seq 1 ${2-1}`
do
echo -ne "$1\r" | nc -q0 denon 23
sleep 0.2
done
exit
And there you go, I can now send volume requests to my mythtv and they get forwarded to my denon over TCP/IP. Pretty cool :) |