You are not logged in.

#1 2004-12-16 00:17:25

kleptophobiac
Member
From: Sunnyvale, CA
Registered: 2004-04-25
Posts: 488

[new - automation] lirc

LIRC

http://www.lirc.org

Currently in [incoming]

I have optimized this package to the atiusb module, figuring that it would be a common device. I also own this device so I can be sure it will work. Somebody needing different modules only needs to specify a different --with-drivers <driver> line in the PKGBUILD. LIRC can be built as a library, lacking all drivers, or include a driver. Including a driver would make it easier for some people, but not harder for others.... so I did that. smile

PKGBUILD

# lirc - Linux infrared remote control, with atiusb drivers
# Package by kleptophobiac@gmail.com

pkgname=lirc
pkgver=0.7.0
pkgrel=3
pkgdesc="lirc - Linux infrared remote control, with atiusb drivers"
url="www.lirc.org"
license="GNU"
depends=()
makedepends=()
conflicts=(lirc-pctv)
replaces=()
backup=()
source=(http://unc.dl.sourceforge.net/sourceforge/lirc/$pkgname-$pkgver.tar.bz2)
md5sums=('4fbcc8b0d69ca5ecbdda40576964573f')

build() {
        cd $startdir/src/$pkgname-$pkgver
        ./configure --prefix=/usr --enable-sandboxed --with-moduledir="$startdir/pkg/lib/modules/$(uname -r)/misc" --with-driver=atiusb
        make || return 1
        make prefix=$startdir/pkg/usr install
        install -D -m 0755 $startdir/lircd $startdir/pkg/etc/rc.d/lircd
        install -D -m 0755 $startdir/lircmd $startdir/pkg/etc/rc.d/lircmd
        install -D -m 0644 $startdir/lircd.conf $startdir/pkg/etc/lircd.conf
}

lirc.install

post_install() {
        mknod /dev/lircd p
        mknod /dev/lircm p
        mkfifo /dev/lircd
        mkfifo /dev/lircm
}

post_remove() {
        rm -rf /dev/lirc*
}

op=$1
shift
$op $*

lircd.conf

# model of remote: Niveus by X10

begin remote

  name  /root/mythbackup/etc/lircd.conf
  bits           40
  eps            30
  aeps          100

  one             0     0
  zero            0     0
  gap          203999
  toggle_bit      0


      begin codes
          power                    0x00000020EE11F00F
          lmbutton                 0x000000144D780000
          rmbutton                 0x00000014517C0000
          handbutton               0x00000014507B0000
          volup                    0x00000020EE81600F
          voldown                  0x00000020EE01E00F
          chanup                   0x00000020EE61400F
          chandown                 0x00000020EEE1C00F
          mute                     0x00000020EEC1A00F
          1                        0x00000020EEA1820D
          2                        0x00000020EE61420D
          3                        0x00000020EEE1C20D
          4                        0x00000020EE41220D
          5                        0x00000020EEC1A20D
          6                        0x00000020EE81620D
          7                        0x00000020EE01E20D
          8                        0x00000020EE31120D
          9                        0x00000020EEB1920D
          0                        0x00000020EE21020D
          ent                      0x00000020EE71520D
          ab                       0x00000020EED1BA05
          a                        0x00000020EE513A05
          b                        0x00000020EEF1D807
          c                        0x00000020EEF1D609
          d                        0x00000020EEF1D906
          menu                     0x00000020EED1B609
          exit                     0x00000020EEE1C906
          ok                       0x00000020EE71520D
          rewind                   0x00000020EE513807
          fforward                 0x00000020EED1B807
          play                     0x00000020EED1B00F
          pause                    0x00000020EE91720D
          stop                     0x00000020EE91700F
          record                   0x00000020EE11FF00
          up                       0x00000020EEF1D50A
          down                     0x00000020EEF1D30C
          left                     0x00000020EEF1D20D
          right                    0x00000020EEF1D10E
      end codes

end remote

lircd

#!/bin/bash

. /etc/rc.conf
. /etc/rc.d/functions

PID=`pidof -o %PPID /usr/sbin/lircd`
case "$1" in
  start)
    stat_busy "Starting lircd Daemon"
    [ -z "$PID" ] && /usr/sbin/lircd -d /dev/lirc0
    if [ $? -gt 0 ]; then
      stat_fail
    else
      add_daemon lircd
      stat_done
    fi
    ;;
  stop)
    stat_busy "Stopping lircd Daemon"
    [ ! -z "$PID" ]  && kill $PID &> /dev/null
    if [ $? -gt 0 ]; then
      stat_fail
    else
      rm_daemon lircd
      stat_done
    fi
    ;;
  restart)
    $0 stop
    sleep 1
    $0 start
    ;;
  *)
    echo "usage: $0 {start|stop|restart}"
esac
exit 0

lircmd

#!/bin/bash

. /etc/rc.conf
. /etc/rc.d/functions

PID=`pidof -o %PPID /usr/sbin/lircmd`
case "$1" in
  start)
    stat_busy "Starting lircmd Daemon"
    [ -z "$PID" ] && /usr/sbin/lircmd
    if [ $? -gt 0 ]; then
      stat_fail
    else
      add_daemon lircmd
      stat_done
    fi
    ;;
  stop)
    stat_busy "Stopping lircmd Daemon"
    [ ! -z "$PID" ]  && kill $PID &> /dev/null
    if [ $? -gt 0 ]; then
      stat_fail
    else
      rm_daemon lircmd
      stat_done
    fi
    ;;
  restart)
    $0 stop
    sleep 1
    $0 start
    ;;
  *)
    echo "usage: $0 {start|stop|restart}"
esac
exit 0

Offline

Board footer

Powered by FluxBB