diff options
Diffstat (limited to 'abs/core-testing/runit-scripts/runitscripts/services/lircd/run')
-rwxr-xr-x | abs/core-testing/runit-scripts/runitscripts/services/lircd/run | 76 |
1 files changed, 43 insertions, 33 deletions
diff --git a/abs/core-testing/runit-scripts/runitscripts/services/lircd/run b/abs/core-testing/runit-scripts/runitscripts/services/lircd/run index 07ec214..3ff8af3 100755 --- a/abs/core-testing/runit-scripts/runitscripts/services/lircd/run +++ b/abs/core-testing/runit-scripts/runitscripts/services/lircd/run @@ -6,8 +6,6 @@ export TERM=linux . /etc/rc.conf . /etc/rc.d/functions -#since what we do may not be enough -#if your one of those people, this is where you place your stuff LOG=/tmp/lirc.log @@ -16,12 +14,17 @@ then rm -f $LOG fi +#since what we do may not be enough +#if your one of those people, this is where you place your stuff +#This means place your lirc stuff in /etc/runit/lirc.sh. +#Anything in that file will be used and the rest of this file is ignored + if [ -f /etc/runit/lirc.sh ] then #program must not terminate. stat_runit "Starting lirc" - + /etc/runit/lirc.sh else . /etc/systemconfig @@ -55,8 +58,8 @@ else then #/dev/ttyS0 (COM1), port 0x3f8, irq 4 #/dev/ttyS1 (COM2), port 0x2f8, irq 3 - #/dev/ttyS2 (COM3), port 0x3e8, irq 4 - #/dev/ttyS3 (COM4), port 0x2e8, irq 3 + #/dev/ttyS2 (COM3), port 0x3e8, irq 4 + #/dev/ttyS3 (COM4), port 0x2e8, irq 3 case $serial_port in ttyS0) @@ -73,9 +76,9 @@ else ;; esac /usr/bin/setserial /dev/$serial_port uart none - sleep 0.5 + sleep 0.5 /sbin/modprobe lirc_serial $FLAGS - sleep 0.5 + sleep 0.5 fi dvico_detect @@ -83,56 +86,63 @@ else if [ x$HostBlasterType = xCommandIR -o x$ReceiverType = xCommandIR ] then CMD="/usr/sbin/lircd -r -n --driver=commandir" - printhl " Using commandir" + printhl " Using commandir" $CMD >>$LOG 2>>$LOG -#echo $CMD + #echo $CMD elif [ x$HostBlasterType = xiguanaIR-usb -o x$ReceiverType = xiguanaIR-usb ] then - sv start igdaemon + sv start igdaemon CMD="/usr/sbin/lircd -r -n --driver=iguanaIR" - printhl " Using iguanaIR usb" -#echo $CMD + printhl " Using iguanaIR usb" + #echo $CMD $CMD >>$LOG 2>>$LOG + + elif [ x$ReceiverType = "xSiliconDust_HDHR" ] + then + # if using the SiliconDust_HDHR as an I/R Receiver + printhl " Using SiliconDust on port 5000" + CMD="/usr/sbin/lircd -H udp -d 5000 -n" + exec $CMD >>$LOG 2>>$LOG else LASTCMD="" for i in `seq 1 $num_lirc` do CMD="/usr/sbin/lircd -r -d /dev/lirc$i --output=/dev/lircd$i --pidfile=/var/run/lircd$i.pid --listen=876$i" - printhl " Device $i" -#echo $CMD + printhl " Device $i" + #echo $CMD $CMD >>$LOG 2>>$LOG LASTCMD="--connect=localhost:876$i $LASTCMD " done - if [ $RunDvico = "true" ] - then - if [ x$Remotetype = "xdvico" ] + if [ $RunDvico = "true" ] + then + if [ x$Remotetype = "xdvico" ] then LCMD="/usr/sbin/lircd -r -n -d /dev/usb/dvicoIR --driver=dvico --output /dev/lircd" else LCMD="/usr/sbin/lircd -r -n -d /dev/input/irremote --driver=devinput --output /dev/lircd" fi - if [ $num_lirc -lt 0 ] - then - # Only run Dvico - printhl " Device $Remotetype" -#echo $LCMD - exec $LCMD >>$LOG 2>>$LOG - elif [ $num_lirc -gt -1 ] - then + if [ $num_lirc -lt 0 ] + then + # Only run Dvico + printhl " Device $Remotetype" + #echo $LCMD + exec $LCMD >>$LOG 2>>$LOG + elif [ $num_lirc -gt -1 ] + then i=$((i+1)) CMD="$LCMD --output=/dev/lircd$i --pidfile=/var/run/lircd$i.pid --listen=876$i" $CMD >> $LOG LASTCMD="--connect=localhost:876$i $LASTCMD " - printhl " Device Dvico" - /usr/sbin/lircd -r -n -d /dev/lirc0 --output /dev/lircd $LASTCMD >>$LOG 2>>$LOG - fi - else - LCMD="/usr/sbin/lircd -r -n -d /dev/lirc0 --output /dev/lircd $LASTCMD" -#echo $LCMD - exec $LCMD >>$LOG 2>>$LOG - fi + printhl " Device Dvico" + /usr/sbin/lircd -r -n -d /dev/lirc0 --output /dev/lircd $LASTCMD >>$LOG 2>>$LOG + fi + else + LCMD="/usr/sbin/lircd -r -n -d /dev/lirc0 --output /dev/lircd $LASTCMD" + #echo $LCMD + exec $LCMD >>$LOG 2>>$LOG + fi fi fi |