Lirc doesn't support Home-brew serial-port driver Igor Cesko's variation

Bug #138247 reported by Bruma on 2007-09-08
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-ubuntu-modules-2.6.22 (Ubuntu)
Undecided
Mario Limonciello
lirc (Ubuntu)
Undecided
Mario Limonciello

Bug Description

Binary package hint: lirc

The current snapshot of lirc doesn't support Home-brew serial-port driver Igor Cesko's variation. During lirc installation user can only select "Home-brew serial-port driver", which does not work with Igor Cesko's variation.

Why we should have support for this dongle? Because is very, very cheap and very easy to build, see link http://www.cesko.host.sk/girderplugin.htm. I've been using this kind of dongles for years.

Proposed solution:
New configuration based on "Home-brew serial-port" should be added, the only difference between normal "Home-brew serial-port" and Igor Cesko's variation is in config file lirc-modules-source.conf. It should contain this options:
LIRC_SERIAL_CFLAGS=" -DLIRC_SERIAL_SOFTCARRIER -DLIRC_SERIAL_IGOR"

Please see also https://help.ubuntu.com/community/Install_Lirc_Feisty how to build Home-brew serial-port driver Igor Cesko's variation on Feisty.

Mario Limonciello (superm1) wrote :

Well in Gutsy the modules are precompiled, so would shipping with this option enabled break normal serial port setups? If so, perhaps just two sets of modules can be compiled. One with and one without Igor's variation.

Changed in lirc:
status: New → Incomplete
Tom G (tagra123) wrote :
Download full text (8.5 KiB)

I have a post in the ubuntu forum relating to this.

I was able to get it to work in feisty to drive a homemade ir blaster.

Here's what I did:

HOW TO MYTHTV LIRC SERIAL IRBLASTER

Making lirc work in any version of Ubuntu seems more difficult than necessary.

This has been adapted from another how to located here:

http://losdos.dyndns.org:8080/public...ting_LIRC_Make

The above post and version did not work on feisty --

Heres how to create ledxmit on Feisty:

Here it is.

Before starting make sure some necessary utilities are installed:

Code:

sudo apt-get install build-essential
sudo apt-get install linux-headers-`uname -r`
sudo apt-get install setserial

INSTALLING

Get LIRC version 0.8.2 from the LIRC download page
Code:

cd ~
 mkdir myth-ledxmit ; cd myth-ledxmit
 wget http://internap.dl.sourceforge.net/sourceforge/lirc/lirc-0.8.2.tar.bz2
 bzip2 -d *bz2 ; tar xf *tar

Create this shell script that will create a new version of lirc called ledxmit that is independent of the regular lirc.

gedit ~/myth-ledxmit/myth-ledxmit82-feisty.sh

cut and paste the following into the file
Code:

#!/bin/bash
#
# myth-ledxmit.sh
#
# by jds-myth !at! losdos.dyndns.org
# portions by rwraithr !at! iwamble.net
#
# for details on how and why to use this script, see
# http://losdos.dyndns.org:8080/public/mythtv-info/MythTV_DISH_IR_LED_TX_via_Modified_LIRC.html
#
set -e
#
#
if [ ! $# -eq 1 ]
then
  echo "usage: $0 lirc-directory"
  exit 1
fi

if [ ! -d $1 ]
then
  echo "error: directory '$1' not found."
  exit 1
fi

rm -rf myth-ledxmit.WIP
echo "$0: Copying lirc source directory..."
cp -r $1 myth-ledxmit.WIP

cd myth-ledxmit.WIP
if [ $? -ne 0 ]
then
  echo "error: unable to cd to 'myth-ledxmit.WIP'."
  exit 1
fi

echo "$0: Moving lirc directories"
mv ./drivers/lirc_atiusb ./drivers/ledxmit_atiusb
mv ./drivers/lirc_mceusb ./drivers/ledxmit_mceusb
mv ./drivers/lirc_bt829 ./drivers/ledxmit_bt829
mv ./drivers/lirc_dev ./drivers/ledxmit_dev
mv ./drivers/lirc_gpio ./drivers/ledxmit_gpio
mv ./drivers/lirc_i2c ./drivers/ledxmit_i2c
mv ./drivers/lirc_it87 ./drivers/ledxmit_it87
mv ./drivers/lirc_parallel ./drivers/ledxmit_parallel
mv ./drivers/lirc_serial ./drivers/ledxmit_serial
mv ./drivers/lirc_sir ./drivers/ledxmit_sir
mv ./drivers/lirc_sasem ./drivers/ledxmit_sasem
mv ./drivers/lirc_igorplugusb ./drivers/ledxmit_igorplugusb

# lirc 0.7.2 adders
mv ./drivers/lirc_imon ./drivers/ledxmit_imon
mv ./drivers/lirc_streamzap ./drivers/ledxmit_streamzap
mv ./drivers/lirc_cmdir ./drivers/ledxmit_cmdir
mv ./drivers/lirc_mceusb2 ./drivers/ledxmit_mceusb2

# lirc 0.8.2 adders
mv ./drivers/lirc_ttusbir ./drivers/ledxmit_ttusbir

echo "$0: Moving lirc files"
find . -name '*lirc*' -print > lircfiles.txt
for i in `cat lircfiles.txt`
  do
    if [ -f $i ] ; then
    NewFileName=`echo $i | sed 's/lirc/ledxmit/'`
    mv $i $NewFileName
  fi
done

echo "$0: Renaming lirc vars in files"
find . | xargs grep -l lirc > lircvars.txt
for i in `cat lircvars.txt`
  do
if [ -f $i ] ; then
    cat $i | sed 's/lirc/ledxmit/g' > $i.newfile
    mv $i.newfile $i
  fi
done

echo "$0: Renaming LIRC vars in files"
find . | xargs grep -l LIRC > LIRCvars.t...

Read more...

Bruma (matjaz.brumec) wrote :

Well this is one way to get it working, better way (Ubuntu way) is described here https://help.ubuntu.com/community/Install_Lirc_Feisty, but both howto-s requires compiling lirc_serial modul, which is not what you want for regular users.

The best way would be precompiled and packed module in lirc package...

Mario Limonciello (superm1) wrote :

Bruma,

So you think that another kernel module perhaps called lirc_serial_igor would suffice? Just the same lirc module compiled with the igor setup? I can probably get a patch together like that.

Bruma (matjaz.brumec) wrote :

Yes, I think this would be good solution or my be only solution, so that we don't brake normal serial module. But I'm not sure what affect would this name change have on module functionality.
If you make a patch I can test it.

Changed in lirc:
assignee: nobody → superm1
status: Incomplete → In Progress
Changed in linux-ubuntu-modules-2.6.22:
assignee: nobody → superm1
status: New → In Progress
Mario Limonciello (superm1) wrote :

This and a few other LIRC bugs are fixed in the debdiff that i'm attaching. The change for the lirc_serial_igor has also been submitted to linux-ubuntu-modules.

Subscribing ubuntu-main-sponsors for upload.

Mario Limonciello (superm1) wrote :

updated debdiff

Mario Limonciello (superm1) wrote :

updated debdiff

Tim Gardner (timg-tpi) on 2007-09-18
Changed in linux-ubuntu-modules-2.6.22:
status: In Progress → Fix Committed
Mario Limonciello (superm1) wrote :

lirc (0.8.2-0ubuntu6) gutsy; urgency=low

  * Add 20_serial_igor.dpatch for additional serial kernel module
    that is built with Igor Cesko support. (LP: #138247)
  * debian/patches/21_atiusb.dpatch:
    - for support of first generation ATI RF remote. (LP: #139238)
    - snapstream firefly support. (LP: #140060)
  * debian/lirc.postinst, debian/lirc.postrm, debian/lirc.templates:
    - Blacklist lirc_atiusb.ko when necessary (LP: #139961)
  * debian/rules, debian/lirc.preinst:
    - Update the service to start after alsa-utils (LP: #123557)

 -- Mario Limonciello <email address hidden> Mon, 17 Sep 2007 01:56:54 -0500

Changed in lirc:
status: In Progress → Fix Released
Bruma (matjaz.brumec) wrote :

I tried new patch:
apt-get source -d lirc
tar xzvf lirc_0.8.2.orig.tar.gz
cd lirc-0.8.2/
zcat ../lirc_0.8.2-0ubuntu5.diff.gz | patch -p1
cat ../lirc-ubuntu5-ubuntu6.debdiff | patch -p1
dpkg-buildpackage -rfakeroot -uc -us -sa -d

and then install it with
DEBIAN_FRONTEND=gnome sudo dpkg -i lirc_0.8.2-0ubuntu6_i386.deb

New configuration is now in the list and creates proper configuration hardware.conf. But now I'm missing lirc_serial_igor module. I notice that lirc_serial modul is part of linux-ubuntu-modules-2.6.22-11-generic.

Mario, what do you think, should package linux-ubuntu-modules-2.6.22-11-generic also be fixed?

Bruma wrote:
> I tried new patch:
> apt-get source -d lirc
> tar xzvf lirc_0.8.2.orig.tar.gz
> cd lirc-0.8.2/
> zcat ../lirc_0.8.2-0ubuntu5.diff.gz | patch -p1
> cat ../lirc-ubuntu5-ubuntu6.debdiff | patch -p1
> dpkg-buildpackage -rfakeroot -uc -us -sa -d
>
> and then install it with
> DEBIAN_FRONTEND=gnome sudo dpkg -i lirc_0.8.2-0ubuntu6_i386.deb
>
> New configuration is now in the list and creates proper configuration
> hardware.conf. But now I'm missing lirc_serial_igor module. I notice
> that lirc_serial modul is part of linux-ubuntu-
> modules-2.6.22-11-generic.
>
> Mario, what do you think, should package linux-ubuntu-
> modules-2.6.22-11-generic also be fixed?
>
This has been applied to linux-ubuntu-modules as well. The next release
that the kernel team has will reflect it.

--
Mario Limonciello
<email address hidden>

Ben Collins (ben-collins) wrote :

linux-ubuntu-modules-2.6.22 (2.6.22-12.29) gutsy; urgency=low

  [Ben Collins]

  * ABI bump for -12
  * ubuntu: Add amd64 to xen target

  [Chuck Short]

  * Add Attansic Gigabit Ethernet support
    - LP: #77725

  [Mario Limonciello]

  * Create lirc_serial_igor based from lirc_serial
    - LP: #138247

  [Phillip Lougher]

  * Update Unionfs to 2.1.3 and patch for apparmor VFS changes
  * Various hacks and bug fixes for Unionfs 2.1.3
    - LP: #138915
  * More Unionfs 2.1.3 bug hacks and bug fixes

  [Tim Gardner]

  * Update iwlwifi to 0.1.15
    - LP: #137441
  * Update iwlwifi to 0.1.16
  * Add provenance for Attansic L2 ethernet driver
    - LP: #77725
  * Forward ported rtl818x from Feisty
  * Update iwlwifi to 1.1.0
    - LP: #141000
  * ESSID gets truncated
    - LP: #74672

 -- Ben Collins <email address hidden> Thu, 20 Sep 2007 14:25:15 -0400

Changed in linux-ubuntu-modules-2.6.22:
status: Fix Committed → Fix Released
Bruma (matjaz.brumec) wrote :

I tested lirc_serial_igor modul with latest kernel (2.6.22-12-generic) and lirc (0.8.2-0ubuntu7) package and I can confirm that new module is working OK.

Murz (murznn) wrote :

It didn't work on Kubuntu Jaunty amd64 with "Home-brew (Igor Cesko's variant)(16x50 UART compatible serial port)".
I have a "Igor Cesko's variant IR Receiver" that works with Girder 3.2 & IgorXP.dll.
But I can't tune lirc to work with it!
I have install lirc, select "Home-brew (Igor Cesko's variant)(16x50 UART compatible serial port)" in Receivers and None in Transmitters.
I try to set the option:
LIRC_SERIAL_CFLAGS=" -DLIRC_SERIAL_SOFTCARRIER -DLIRC_SERIAL_IGOR"
or not to set.
LIRC starts succesfully, but irw and mode2 shows none when I press the buttons on IR Transmitter".

On starting LIRC I see in message.log:
Jun 5 21:08:52 kit kernel: [ 2393.195311] lirc_dev: IR Remote Control driver registered, major 61
Jun 5 21:08:53 kit kernel: [ 2393.700880] lirc_serial_igor: auto-detected active low receiver
Jun 5 21:08:53 kit kernel: [ 2393.700890] lirc_dev: lirc_register_plugin: sample_rate: 0

# lsmod | grep lirc
lirc_serial_igor 23336 0
lirc_dev 22088 1 lirc_serial_igor

I try this on two computers (one is fresh Jaunty, other - upgraded from Intrepid).

What I do wrong and how to get it works with Jaunty?
Can I give you additional info about this problem?

Murz (murznn) wrote :

I have open a new bug: https://bugs.launchpad.net/ubuntu/+source/lirc/+bug/384011 because this is too old, kernel is 2.6.28-11-generic.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers