USB UIRT: uirt2_raw: checksum error

Bug #177166 reported by levander on 2007-12-18
22
This bug affects 3 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Undecided
Unassigned

Bug Description

Binary package hint: linux-image

There was a regression in between 2.6.22 and 2.6.20 that made the USB UIRT stop working.

The USB UIRT is an infrared transceiver. You plug it into your computer, and it receives signals from your remote control. This is an important device because it's not only the cheapest piece of hardware that does this ($8), but it's also the only cheap one that connects via USB and not via your serial port. So, it's a very important piece of hardware for HTPC software like MythTV.

Here is the error messages reported in /var/log/messages:

Sep 28 21:33:33 cesspool lircd-0.8.2[3729]: accepted new client on /dev/lircd
Sep 28 21:33:33 cesspool lircd-0.8.2[3729]: uirt2_raw: checksum error
Sep 28 21:33:34 cesspool lircd-0.8.2[3729]: uirt2_raw: UIRT version 0905 ok
Sep 28 21:33:34 cesspool lircd-0.8.2[3729]: uirt2_raw: could not set DTR
Sep 28 21:33:34 cesspool lircd-0.8.2[3729]: caught signal

People are working around this issue by copying ftdi_sio.c and ftdi_sio.h from a 2.6.20 kernel source code tree into the 2.6.22 sources:

http://ubuntuforums.org/showthread.php?t=579024

It's definitely an upstread issue. Here, they're talking about the issue on the mythtv-users mailing list and distributions other than Ubuntu:

http://www.gossamer-threads.com/lists/mythtv/users/293503

Oleksij Rempel (olerem) wrote :

Please test latest hardy kernel. It was made a lot of work on this module after 2.6.22
To do this make:
1. wget http://de.archive.ubuntu.com/ubuntu/pool/main/l/linux/linux-image-2.6.24-2-386_2.6.24-2.3_i386.deb
2. dpkg -i linux-image-2.6.24-2-386_2.6.24-2.3_i386.deb
3. reboot

to uninstall:
dpkg -r linux-image-2.6.24-2-386

levander (levander) wrote :

I reported this bug based on information I'd gathered off the Ubuntu Forums and the mythtv-users mailing list. I was trying to figure out if it would work or not if I bought it.

It turns out I had misread the USB UIRT web site. They want $50 + $8 shipping, not just $8. The USB UIRT has Windows logos all over their web site and pays no attention to Linux.

It turns out, there's a $40 USB IR transceiver from IguanaWorks, which is cheaper than the USB UIRT. It's at http://iguanaworks.net/

And, going back and talking to some of the people I talked to about the USB UIRT, he tells me it was fixed in a kernel version later than the one in Gutsy. Says he "believes" it was fixed in one of the 2.6.22 kernel revisions.

I was planning on testing the USB UIRT with the Hardy kernel linked to above, but now I'm not. I'm just going to buy the Iguana Works one.

I'd personally consider this bug closed. Do I mark it, or is there an administrator who marks it?

Oleksij Rempel (olerem) on 2007-12-22
Changed in linux-meta:
status: New → Fix Released
MTO (emteeoh) wrote :

This bug still exists in 8.10, running kernel 2.6.27.

randomubuntuguy (john4lists) wrote :

still exists in mythbuntu 8.10
 2.6.27-9-generic #1 SMP Thu Nov 20 21:57:00 UTC 2008 i686 GNU/Linux

I don't want to recompile modules from source to fix this.

Why not fix it? I already spent the $58 and I'm sure a bunch of others did too. I'll hound the maker to participate more in linux bugtesting.
______________________________________________________________________________________
From the mythtv wiki:

 Partial Fix

A number of distributions are using a patched FTDI driver that solves the kernel oops, but is missing a critical fix to allow the USB-UIRT to work.

In /usr/src/linux/drivers/usb/serial/ftdi_sio.c locate the function ftdi_tiocmget and add "case FT232RL:" just after "case FT223C:". Then rebuild and install your modules.

Without this fix you will get an error from lircd about not being able to set DTR.

randomubuntuguy (john4lists) wrote :

From reading the comments, I believe a bug fix never actually occurred for the usb-uirt transciever. Still it is broken now. I'm a new tester if someone needs help.

Changed in linux-meta (Ubuntu):
status: Fix Released → New
randomubuntuguy (john4lists) wrote :

my /etc/lirc/hardware.conf is:

/etc/lirc# cat /etc/lirc/hardware.conf

REMOTE="Custom"
REMOTE_MODULES=""
REMOTE_DRIVER="usb_uirt_raw"
REMOTE_DEVICE="/dev/ttyUSB0"
REMOTE_LIRCD_CONF="/usr/share/lirc/remotes/technisat/lircd.conf.mediafocusI"
REMOTE_LIRCD_ARGS=""
TRANSMITTER="Custom"
TRANSMITTER_MODULES=""
TRANSMITTER_DRIVER="usb_uirt_raw"
TRANSMITTER_DEVICE=""
TRANSMITTER_LIRCD_CONF="/usr/share/lirc/transmitters/pioneer/general.conf"
TRANSMITTER_LIRCD_ARGS=""
START_LIRCD=true
START_LIRCMD=""
LOAD_MODULES=""
LIRCMD_CONF=""
FORCE_NONINTERACTIVE_RECONFIGURATION="true"

I just updated to the 8.10 intrepid-backport of lirc but the error message is still there:

dmesg

[179532.140069] usb 2-1: new full speed USB device using ohci_hcd and address 4
[179532.366812] usb 2-1: configuration #1 chosen from 1 choice
[179532.374177] ftdi_sio 2-1:1.0: FTDI USB Serial Device converter detected
[179532.374960] ftdi_sio: Detected FT232BM
[179532.375897] usb 2-1: FTDI USB Serial Device converter now attached to ttyUSB0

tail /var/log/syslog

Apr 3 12:17:01 /USR/SBIN/CRON[20139]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Apr 3 12:17:35 desktop lircd-0.8.4a[12038]: caught signal
Apr 3 12:17:35 desktop lircd-0.8.4a[12034]: removed client
Apr 3 12:17:35 desktop lircd-0.8.4a[12034]: caught signal
Apr 3 12:17:39 desktop lircd-0.8.4a[21735]: lircd(usb_uirt_raw) ready
Apr 3 12:17:39 desktop lircd-0.8.4a[21740]: lircd(usb_uirt_raw) ready
Apr 3 12:17:39 desktop lircd-0.8.4a[21735]: accepted new client from 127.0.0.1
Apr 3 12:17:39 desktop lircd-0.8.4a[21740]: connected to localhost
Apr 3 12:17:40 desktop lircd-0.8.4a[21735]: uirt2_raw: checksum error
Apr 3 12:17:40 desktop lircd-0.8.4a[21735]: uirt2_raw: UIRT version 0905 ok

Thanks for your help!

Hey! I eventually realized that the error message is sometimes a red
herring!

Apparently, what happens is that there are 2 protocols used by different
revs of the USBUIRT. The driver tries to use the v1 protocol to interpret a
packet, fails, logs an error, then succeeds with v2 and proceeds. So without
doing any changes to the kernel, I eventually got lirc receiving stuff.
Haven't had a chance to configure a .lirc to use it though...

On Fri, Apr 3, 2009 at 12:08 PM, randomubuntuguy <email address hidden>wrote:

> still exists in mythbuntu 8.10
> 2.6.27-9-generic #1 SMP Thu Nov 20 21:57:00 UTC 2008 i686 GNU/Linux
>
> I don't want to recompile modules from source to fix this.
>
> Why not fix it? I already spent the $58 and I'm sure a bunch of others did
> too. I'll hound the maker to participate more in linux bugtesting.
>
> ______________________________________________________________________________________
> >From the mythtv wiki:
>
> Partial Fix
>
> A number of distributions are using a patched FTDI driver that solves
> the kernel oops, but is missing a critical fix to allow the USB-UIRT to
> work.
>
> In /usr/src/linux/drivers/usb/serial/ftdi_sio.c locate the function
> ftdi_tiocmget and add "case FT232RL:" just after "case FT223C:". Then
> rebuild and install your modules.
>
> Without this fix you will get an error from lircd about not being able
> to set DTR.
>
> --
> USB UIRT: uirt2_raw: checksum error
> https://bugs.launchpad.net/bugs/177166
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in “linux-meta” source package in Ubuntu: Fix Released
>
> Bug description:
> Binary package hint: linux-image
>
> There was a regression in between 2.6.22 and 2.6.20 that made the USB UIRT
> stop working.
>
> The USB UIRT is an infrared transceiver. You plug it into your computer,
> and it receives signals from your remote control. This is an important
> device because it's not only the cheapest piece of hardware that does this
> ($8), but it's also the only cheap one that connects via USB and not via
> your serial port. So, it's a very important piece of hardware for HTPC
> software like MythTV.
>
> Here is the error messages reported in /var/log/messages:
>
> Sep 28 21:33:33 cesspool lircd-0.8.2[3729]: accepted new client on
> /dev/lircd
> Sep 28 21:33:33 cesspool lircd-0.8.2[3729]: uirt2_raw: checksum error
> Sep 28 21:33:34 cesspool lircd-0.8.2[3729]: uirt2_raw: UIRT version 0905 ok
> Sep 28 21:33:34 cesspool lircd-0.8.2[3729]: uirt2_raw: could not set DTR
> Sep 28 21:33:34 cesspool lircd-0.8.2[3729]: caught signal
>
> People are working around this issue by copying ftdi_sio.c and ftdi_sio.h
> from a 2.6.20 kernel source code tree into the 2.6.22 sources:
>
> http://ubuntuforums.org/showthread.php?t=579024
>
> It's definitely an upstread issue. Here, they're talking about the issue
> on the mythtv-users mailing list and distributions other than Ubuntu:
>
> http://www.gossamer-threads.com/lists/mythtv/users/293503
>

[This is an automated message. Apologies if it has reached you inappropriately.]

This bug was reported against the linux-meta package when it likely should have been reported against the linux package instead. We are automatically transitioning this to the linux kernel package so that the appropriate teams are notified and made aware of this issue. Thanks.

affects: linux-meta (Ubuntu) → linux (Ubuntu)
kernel-janitor (kernel-janitor) wrote :

Hi levander,

Please be sure to confirm this issue exists with the latest development release of Ubuntu. ISO CD images are available from http://cdimage.ubuntu.com/releases/ . Please then run following command from a Terminal (Applications->Accessories->Terminal). It will automatically gather and attach updated debug information to this report.

apport-collect -p linux-image-`uname -r` 177166

Also, if you could test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. Please let us know your results.

Thanks in advance.

[This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: needs-kernel-logs
tags: added: needs-upstream-testing
tags: added: kj-triage
Changed in linux (Ubuntu):
status: New → Incomplete
BeSt (steph-belardi) wrote :

Hi,

I tested with the last development ISO image of Ubuntu (using a Live CD). I choose the "usb uirt" driver when asked. Then I did the following:

sudo /etc/init.d/lirc stop # To stop LIRC daemon
sudo lircd -n # To work on foreground

and in another terminal, I wrote 'irw'. The first terminal just prints:
lircd-0.8.5[6304]: config file contains no valid remote control definition
lircd-0.8.5[6304]: lircd(default) ready
lircd-0.8.5[6304]: accepted new client on /dev/lircd
lircd-0.8.5[6304]: could not get file information for /dev/lirc
lircd-0.8.5[6304]: default_init(): No such file or directory
lircd-0.8.5[6304]: Failed to initialize hardware

And the 2nd terminal prints nothing. As it mentionned that '/dev/lirc' is missing, I tried to do 'sudo ln -s /dev/lircd /dev/lirc', but I gave the same result.

BeSt (steph-belardi) on 2009-10-08
tags: removed: needs-upstream-testing
Jeremy Foshee (jeremyfoshee) wrote :

This bug report was marked as Incomplete and has not had any updated comments for quite some time. As a result this bug is being closed. Please reopen if this is still an issue in the current Ubuntu release http://www.ubuntu.com/getubuntu/download . Also, please be sure to provide any requested information that may have been missing. To reopen the bug, click on the current status under the Status column and change the status back to "New". Thanks.

[This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: kj-expired
Changed in linux (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers