Kodi Community Forum

Full Version: ubuntu 11.04 and imon pad + lcd --> lirc???
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hallo all,

this is my first linux-htpc, it works since one year under windows 7. But now its time to get away from windows. Laugh Parallel to windows I made up a fresh ubuntu 11.04 (minimal) installation, compiled vdr 1.7.18-2 from etobis repository, vnsi from pipelka-git and xbmc with pvr from opdenkamp-git.

used kernel: 2.6.38-10

I didn't install "lirc", but the pad and the lcd worked out of the box, I think the modules are build into the kernel. But where can I config the pad, only some buttons function is working correct.

Should the config from the this post work? Do I have to install "lirc" from apt or not?

What do I have to install? Or where do I have to configure the buttons not functioning properly?

Greetings
Hey guys,

I got it and it works great, the most of the needed settings I use are from the above posted link.

But I want to give you my complete and active config.

1. You need the package "lirc" and its dependencies:

Code:
sudo apt-get install lirc

2. Then you have to configure lirc:

Code:
sudo dpkg-reconfigure lirc

2.1 choose: "Linux input layer (/dev/input/eventX)"
2.2 on ir transmitter choose: "None"
2.3 on custom event interface choose: "/dev/input/by-id/usb-15c2_ffdc-event-if00"

3. "signal-check"

Now you can check if your htpc receives signals from the remote, type "irw" in your terminal and press some buttons on your remote.

--> the result should be something like this:

Code:
000000008001006c 00 KEY_DOWN devinput
0000000080010067 00 KEY_UP devinput
0000000080010193 00 KEY_CHANNELDOWN devinput
0000000080010205 00 KEY_NUMERIC_5 devinput

--> maybe you have to do step 4 before the signals are recognized by "irw"

4. stop lirc and edit your hardware.conf

Code:
sudo /etc/init.d/lirc stop
sudo nano etc/lirc/hardware.conf

Code:
# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="Linux input layer (/dev/input/eventX)"
REMOTE_MODULES="lirc_dev"
REMOTE_DRIVER="devinput"
#REMOTE_DEVICE="/dev/lirc0"
REMOTE_DEVICE="/dev/input/by-id/usb-15c2_ffdc-event-if00"
REMOTE_SOCKET=""
REMOTE_LIRCD_CONF="/usr/share/lirc/remotes/devinput/lircd.conf.devinput"
REMOTE_LIRCD_ARGS=""

#Chosen IR Transmitter
TRANSMITTER="None"
TRANSMITTER_MODULES=""
TRANSMITTER_DRIVER=""
TRANSMITTER_DEVICE=""
TRANSMITTER_SOCKET=""
TRANSMITTER_LIRCD_CONF=""
TRANSMITTER_LIRCD_ARGS=""

#Enable lircd
START_LIRCD="true"

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD="false"

#Try to load appropriate kernel modules
LOAD_MODULES="true"

# Default configuration files for your hardware if any
LIRCMD_CONF=""

#Forcing noninteractive reconfiguration
#If lirc is to be reconfigured by an external application
#that doesn't have a debconf frontend available, the noninteractive
#frontend can be invoked and set to parse REMOTE and TRANSMITTER
#It will then populate all other variables without any user input
#If you would like to configure lirc via standard methods, be sure
#to leave this set to "false"
FORCE_NONINTERACTIVE_RECONFIGURATION="false"
START_LIRCMD=""

5. edit your lircd.conf

Code:
sudo nano /etc/lirc/lircd.conf

Code:
#This configuration has been automatically generated via
#the Ubuntu LIRC package maintainer scripts.
#
#It includes the default configuration for the remote and/or
#transmitter that you have selected during package installation.
#
#Feel free to add any custom remotes to the configuration
#via additional include directives or below the existing
#Ubuntu include directives from your selected remote and/or
#transmitter.

#Configuration for the Linux input layer (/dev/input/eventX) remote:
include "/usr/share/lirc/remotes/devinput/lircd.conf.devinput"

--> proof the availibility of the lircd.conf.devinput on your system!

6. edit the Lircmap.xml

Code:
sudo nano /home/xbmc/.xbmc/userdata/Lircmap.xml

Code:
<lircmap>
        <remote device="devinput">
                <!--KEY_EXIT-->
                <power>KEY_POWER</power>
                <record>KEY_RECORD</record>
                <play>KEY_PLAY</play>
                <!--KEY-EJECTCD-->
                <reverse>KEY_REWIND</reverse>
                <pause>KEY_PAUSE</pause>
                <forward>KEY_FASTFORWARD</forward>
                <skipminus>KEY_PREVIOUS</skipminus>
                <stop>KEY_STOP</stop>
                <skipplus>KEY_NEXT</skipplus>
                <back>KEY_BACKSPACE</back>
                <!--CHOOSE_KBD_MOUSE-->
                <select>KEY_SPACE</select>
                <!--KEY_COMPOSE-->
                <!--BTN_RIGHT-->
                <select>KEY_ENTER</select>
                <!--BTN_LEFT-->
                <menu>KEY_CONTEXT_MENU</menu>
                <down>KEY_DOWN</down>
                <left>KEY_LEFT</left>
                <up>KEY_UP</up>
                <right>KEY_RIGHT</right>
                <clear>KEY_ESC</clear>
                <!--KEY_DASHBOARD-->
                <display>KEY_MEDIA</display>
                <!--KEY_EJECTCLOSECD=obc2-->
                <!--KEY_CYCLEWINDOWS-->
                <mute>KEY_MUTE</mute>
                <volumeplus>KEY_VOLUMEUP</volumeplus>
                <volumeminus>KEY_VOLUMEDOWN</volumeminus>
                <channelplus>KEY_CHANNELUP</channelplus>
                <channelminus>KEY_CHANNELDOWN</channelminus>
                <!--KEY_TIME=obc1-->
                <one>KEY_NUMERIC_1</one>
                <two>KEY_NUMERIC_2</two>
                <three>KEY_NUMERIC_3</three>
                <four>KEY_NUMERIC_4</four>
                <five>KEY_NUMERIC_5</five>
                <six>KEY_NUMERIC_6</six>
                <seven>KEY_NUMERIC_7</seven>
                <eight>KEY_NUMERIC_8</eight>
                <nine>KEY_NUMERIC_9</nine>
                <star>KEY_NUMERIC_STAR</star>
                <zero>KEY_NUMERIC_0</zero>
                <hash>KEY_NUMERIC_POUND</hash>
                <myvideo>KEY_VIDEO</myvideo>
                <mymusic>KEY_AUDIO</mymusic>
                <!--My_Photo_without_function-->
                <myTV>KEY_TV</myTV>
                <!--KEY_BOOKMARKS-->
                <mypictures>KEY_CAMERA</mypictures>
                <select>KEY_ZOOM</select>
                <title>KEY_SCREEN</title>
                <!--KEY_DVD=obc3-->
                <menu>KEY_MENU</menu>
                <subtitle>KEY_SUBTITLE</subtitle>
                <language>KEY_LANGUAGE</language>
                <obc1>KEY_TIME</obc1>
                <obc2>KEY_EJECTCLOSECD</obc2>
                <obc3>KEY_DVD</obc3>
        </remote>
</lircmap>

--> set the user-permissions:

Code:
sudo chown xbmc:xbmc /home/xbmc/.xbmc/userdata/Lircmap.xml

7. edit your global remote.xml

Code:
sudo nano /usr/share/xbmc/system/keymaps/remote.xml

You only have to put the "universalremote"-section to your remote.xml!

Code:
<global>
    <remote>
      <play>Play</play>
      <pause>Pause</pause>
      <stop>Stop</stop>
    ..
    ..
    </remote>
      <universalremote>
    <obc1>XBMC.ActivateWindow(Weather)</obc1>
        <obc2>EjectTray()</obc2>
    <obc3>PlayDVD</obc3>
      </universalremote>    
</global>

--> start lirc

Code:
sudo /etc/init.d/lirc start

Now everything should work, maybe you have to reboot or stop and start xbmc with the following commands:

Code:
service xbmc stop
service xbmc start

8. If your remote is to sensitive, build the following config:

Code:
sudo nano /home/xbmc/.xbmc/userdata/advancedsettings.xml

Code:
#/home/xbmc/.xbmc/userdata/advancedsettings.xml
<advancedsettings>
    <remotedelay>5</remotedelay>
    <remoterepeat>650</remoterepeat>
</advancedsettings>

--> set the user-permissions:

Code:
sudo chown xbmc:xbmc /home/xbmc/.xbmc/userdata/advancedsettings.xml

Many thanks to lyka, toddwv and krautmaster helped me to get the solution with their "comments" in the above posted link.

Greetings

Hoppel