Tuesday, January 25, 2011

Decided to install XBMC Live a few days ago.

So I cleared some space on my hdd (Can't wait until next month when I can get the 2tb SATA hdd!!) and started the install process.

XBMC Live 10.0 comes with a 2.6.32 kernel which uses the old lirc_imon and lirc_dev kernel drivers instead of the imon driver in the more recent kernels (2.6.37 and up?).

This means that the remote doesn't have to be configured using the device input layer and all the keys on the RM200 work, just NOT out of the box. Shocker, I know.

In addition, XBMC doesn't show that pain in the ass problem where trying to watch avis that have been burned to DVDrs doesn't take forever to load the file list. I'll have to take a look at the differences and see if I can find a workaround for my Ubuntu 10.10 install that is running a 2.6.36 kernel.

So I went ahead and dropped the 2.6.36 kernel (last kernel that doesn't use the imon driver, I think) into the XMBC Live distribution. It fixed a few problems that I had after I hosed a few things hacking around the system. ;)



----------------------------------------------------------
Update kernel from deb packages:


http://www.unixmen.com/linux-tutorials/780-upgrade-your-kernel-the-safe-way-in-ubuntu-linuxmint

Go to http://kernel.ubuntu.com/~kernel-ppa/mainline/ and select kernel

switch to download directory:

$ cd ~/development/kernel

Download linux-headers file that ends with all.deb

$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.36-rc7-maverick/linux-headers-2.6.36-020636rc7_2.6.36-020636rc7.201010070908_all.deb

Download the linux-headers for the that ends with i386 or AMD64:

$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.36-rc7-maverick/linux-headers-2.6.36-020636rc7-generic_2.6.36-020636rc7.201010070908_i386.deb

Download the linux-image file for the architecture you want:

$ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.36-rc7-maverick/linux-image-2.6.36-020636rc7-generic_2.6.36-020636rc7.201010070908_i386.deb

Install the linux-headers;
$ sudo dpkg -i linux-headers-2.6.36-020636rc7_2.6.36-020636rc7.201010070908_all.deb

Install the linux-headers i386 or AMD64:
$ sudo dpkg -i linux-headers-2.6.36-020636rc7-generic_2.6.36-020636rc7.201010070908_i386.deb

Install the linux-image:
$ sudo dpkg -i linux-image-2.6.36-020636rc7-generic_2.6.36-020636rc7.201010070908_i386.deb

Reboot.

Check kernel with uname

$ uname -r
------------------------------------------------------------------

Next on deck kernel-wise is to compile from vanilla source...

So then I had to get lirc and lcdproc working for my Antec Multimedia Station Elite w/ the Veris RM200 remote (note: this only works for 2.6.36 kernels and down since higher kernels have the imon driver built in that requires the remote to be setup using the device input layer):

------------------------------------------------------------------


Make sure that kernel has loaded lirc_imon and lirc_dev (2.6.36 and lower):

xbmc@XBMCLive:~$ lsmod | grep lirc
lirc_mceusb 12402 0
lirc_imon 22905 0
lirc_dev 8884 2 lirc_mceusb,lirc_imon

Configure lirc

xbmc@XBMCLive:~$ sudo dpkg-reconfigure lirc

Hit down arrow key until Soundgraph iMon Antec Veris is highlighted, press enter key.
Press enter key again unless you want to set up an IR transmitter (not covered here).

* Stopping remote control daemon(s): LIRC [ OK ]
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service udev reload

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the reload(8) utility, e.g. reload udev
* Loading LIRC modules [ OK ]
* Starting remote control daemon(s) : LIRC [ OK ]

Test remote by starting irw and pressing various keys:

xbmc@XBMCLive:/etc/lirc$ irw
01007f0000000201 00 KEY_DOWN Antec_Veris_RM200
01007f0000000201 01 KEY_DOWN Antec_Veris_RM200
0100007f00000201 00 KEY_RIGHT Antec_Veris_RM200
0200001e00000201 00 KEY_1 Antec_Veris_RM200
0200001f00000201 00 KEY_2 Antec_Veris_RM200
0200002000000201 00 KEY_3 Antec_Veris_RM200
0200002100000201 00 KEY_4 Antec_Veris_RM200
0200002200000201 00 KEY_5 Antec_Veris_RM200
0200002300000201 00 KEY_6 Antec_Veris_RM200
0200002400000201 00 KEY_7 Antec_Veris_RM200
0200002500000201 00 KEY_8 Antec_Veris_RM200
0200002600000201 00 KEY_9 Antec_Veris_RM200
0220002500000201 00 Star Antec_Veris_RM200
0200002700000201 00 KEY_0 Antec_Veris_RM200
0220002000000201 00 Hash Antec_Veris_RM200

Good to go.

---------------------------------------------------

And now lcdproc compiled from source:

---------------------------------------------------
Create directory for lcdproc

$ mkdir lcdproc

Change to lcdproc directory

$ cd lcdproc

Download lcdproc source:

$ wget http://softlayer.dl.sourceforge.net/project/lcdproc/lcdproc/0.5.3/lcdproc-0.5.3.tar.gz

Unpack the source

$ tar -xvf lcdproc-0.5.3.tar.gz

Change into lcdproc-0.5.3 directory

$ cd lcdproc-0.5.3.tar.gz

Configure

$ ./configure --enable-drivers=imon

Make

$ make -j4

And install

$ make install

And install

$ sudo make install

Copy LCDd.conf to /etc/LCDd.conf

$ sudo cp LCDd.conf /etc/LCDd.conf

Cp startup scripts:

$ sudo cp ./scripts/init-LCDd.debian /etc/init.d/LCDd
$ sudo cp ./scripts/init-lcdproc.debian /etc/init.d/lcdproc

Change LCDproc.conf

$ sudo nano LCDd.conf

Change Driver=curses to Driver=imon

Uncomment Hello message if desired.

Start LCDd
$ sudo /etc/init.d/LCDd start

Should see welcome message

Start lcdproc
$ sidp etc/init.d/lcdproc start

Should see information.

Had to change the DriverPath in LCDd.conf to /usr/lib/lcdproc/

------------------------------------------

So I'm good to go until I find something else to break. Which won't be too long because I get to start from near scratch once I get the new drive. Fun. ;)

~T

No comments:

Post a Comment