Experimental support for iMON board with device code 0xffdc

Linux support for Soundgraph iMON USB IR/VFD modules used in Ahanix, Silverstone, Uneed, Accent and other cases.

Moderator: Venky

Experimental support for iMON board with device code 0xffdc

Postby Venky » Tue Feb 22, 2005 3:33 pm

Hi,
This board features a new protocol for conveying IR information to the host. Rather than just sending the demodulated IR data this board decodes the key code in firmware so the host does not have to.

This has the advantage that LIRC doesn't need to decode IR pulse/space data but has the disadvantage that some 3rd party remote controls may not work.

For those of you that have this board I've uploaded a new experimental version of the driver (lirc_imon.c) and a template lircd config file (imon).

After compiling and loading lirc_dev and lirc_imon, use irrecord to generate a config file for your remote as follows.
Code: Select all
irrecord -d /dev/lirc0 imon


If successful irrecord will generate an imon.conf file for use with lircd.

If you have the joystick remote note that the joystick has 16 positions each with its own code so you need to record each of them. You can use names like N, E, W, S, NE, NNE, ENE, ... to refer to the 16 positions.

Venky

P.S. If this works for you please send me a copy of your imon.conf file.

Update:
I've slightly modified the config file submitted by Lito (Thank you Lito!). You may use this imon.conf file if you don't want to record it yourself using irrecord.

I would like to thank Silverstonetek Co. for sending me an iMON PAD and IR/VFD unit for testing the new driver. I've tested the experimental driver and the lircd config file and everything looks good. The joystick requires additional work and is unsupported at this time. It is not a 16-position stick as I had initially assumed but more like a mouse.
Last edited by Venky on Sun Mar 06, 2005 12:12 pm, edited 3 times in total.
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Lito » Wed Feb 23, 2005 7:16 pm

When I do that command it says hold down any button. When I do it gives the following error:

irrecord: gap not found, can't continue

Then nothing happens. If I try to run it again it says /dev/lirc is busy. So I have to rmmod the lirc_imon and dev and modprobe them again to get it to try again.
Lito
 
Posts: 11
Joined: Mon Feb 21, 2005 11:12 pm

Postby Venky » Wed Feb 23, 2005 7:39 pm

Lito wrote:When I do that command it says hold down any button. When I do it gives the following error:

irrecord: gap not found, can't continue

Then nothing happens. If I try to run it again it says /dev/lirc is busy. So I have to rmmod the lirc_imon and dev and modprobe them again to get it to try again.


Do you see dots as you press different buttons?
And you are not running lircd, correct?

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Lito » Wed Feb 23, 2005 7:48 pm

Nope nothing. I press continue and press and hold down a button. But nothing happens on screen.

lircd is not running I killed it.
Lito
 
Posts: 11
Joined: Mon Feb 21, 2005 11:12 pm

Postby Venky » Wed Feb 23, 2005 9:11 pm

Please send me the output of "od -xw4 -d /dev/lirc0" for a few key presses. And do not run lircd after modprobing the drivers.

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Lito » Wed Feb 23, 2005 10:31 pm

Maybe I have something setup wrong? I am getting nothing with that command. I don't have /dev/lirc0 I only have /dev/lirc maybe I am having a similar problem as I had with the vfd. I had to manually make /dev/lcd0.
Lito
 
Posts: 11
Joined: Mon Feb 21, 2005 11:12 pm

Postby Venky » Thu Feb 24, 2005 11:48 am

Lito wrote:Maybe I have something setup wrong? I am getting nothing with that command. I don't have /dev/lirc0 I only have /dev/lirc maybe I am having a similar problem as I had with the vfd. I had to manually make /dev/lcd0.


Yes, there's probably something wrong with the setup. Did you create /dev/lirc manually or did it exist previously? If so you probably have an older version of lirc that came with the linux distribution. Remove that and delete /dev/lirc. If /dev/lirc0 is not created automatically via devfs create it manually and make sure the major & minor numbers are correct (usually 61 and 0 respectively). Check /sys/class/lirc for the major & minor numbers.

If "od -x /dev/lirc0" (or whatever device file you create) does not report anything when you press buttons on the remote it means the lirc driver is not correctly connected to the device file.

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Lito » Fri Feb 25, 2005 12:28 am

Well I am kind of stumped. I erased all the lirc* I could find made a clean build and still nothing. After removing /dev/lirc* I found that the make install of lirc created them. Not sure where else to look.

Here is some lirc stuff in my syslog:
Code: Select all
Feb 25 00:10:44 MythTV kernel: lirc_dev: IR Remote Control driver registered, at major 61
Feb 25 00:10:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Driver for Soundgraph iMON MultiMedian IR/VFD, v0.2x
Feb 25 00:10:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Venky Raju <dev@venky.ws>
Feb 25 00:10:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found IMON device
Feb 25 00:10:48 MythTV kernel: lirc_dev: lirc_register_plugin:sample_rate: 0
Feb 25 00:10:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: Registered iMON plugin (minor:0)
Feb 25 00:10:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: iMON device on usb<1:3> initialized
Feb 25 00:10:48 MythTV kernel: usbcore: registered new driver lirc_imon
Feb 25 00:18:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: IR port closed
Feb 25 00:20:19 MythTV kernel: usbcore: deregistering driver lirc_imon
Feb 25 00:20:19 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_disconnect: iMON device disconnected
Feb 25 00:20:19 MythTV kernel: lirc_dev: lirc_unregister_plugin:plugin lirc_imon[0] in use!<3>/usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: deregister_from_lirc: unable to deregister from lirc (-16)
Feb 25 00:20:19 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: module removed. Goodbye!
Lito
 
Posts: 11
Joined: Mon Feb 21, 2005 11:12 pm

Postby edembowski » Sat Feb 26, 2005 8:28 am

Venky,


I'm having exelent results with the modified driver. The only buttons that I have any issue with is the joystick. I can't seem to get consistent readings from it. Any advice?

- ed
edembowski
 
Posts: 13
Joined: Sun Feb 06, 2005 3:59 pm

Postby Venky » Sat Feb 26, 2005 9:42 am

edembowski wrote:Venky,


I'm having exelent results with the modified driver. The only buttons that I have any issue with is the joystick. I can't seem to get consistent readings from it. Any advice?

- ed


Did irrecord create a separate "remote" section for the joystick? If not I'd recommend running irrecord on a new dummy file and only exercising the joystick. Then merge the config file with imon.conf you created with just the keys.

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Venky » Sat Feb 26, 2005 9:53 am

Lito wrote:Well I am kind of stumped. I erased all the lirc* I could find made a clean build and still nothing. After removing /dev/lirc* I found that the make install of lirc created them. Not sure where else to look.

Here is some lirc stuff in my syslog:
Code: Select all
...


Are these the only lirc related logs? Many messages are missing. Do you see any hex data being logged after you modprobe lirc_imon and you press a button on the remote? Please include the debug=1 option when you modprobe lirc_imon for additional debug info.

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Lito » Sun Feb 27, 2005 4:30 pm

Yeah that is all I got. Here is with debug=1 when I modprobe lirc_imon:

Code: Select all
Feb 27 16:11:38 MythTV kernel: lirc_dev: IR Remote Control driver registered, at major 61
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Driver for Soundgraph iMON MultiMedian IR/VFD, v0.2x
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Venky Raju <dev@venky.ws>
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found IMON device
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found IR endpoint
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found VFD endpoint
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: vfd_proto_6p: 1
Feb 27 16:11:38 MythTV kernel: lirc_dev: lirc_register_plugin:sample_rate: 0
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: Registered iMON plugin (minor:0)
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Registering VFD with devfs
Feb 27 16:11:38 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: iMON device on usb<1:3> initialized
Feb 27 16:11:38 MythTV kernel: usbcore: registered new driver lirc_imon
Feb 27 16:12:07 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: IR port closed


The last line came after I pressed ctrl+c when I did a 'cat /dev/lirc' at the command line. The weird thing, is even though it says IR port closed, if I retype the command I get a '/dev/lirc device or resource busy' message.

I am not really working on the imon stuff at the moment. Just got my pcHDTV3000 and WinTV-250MCE installed and I sort of got them running. For some reason MythTV doesn't work with either but I can get the data via command line tools. I am thinking of reinstalling from scratch now and maybe ditching KnoppixMyth for FC.
Lito
 
Posts: 11
Joined: Mon Feb 21, 2005 11:12 pm

Postby Venky » Sun Feb 27, 2005 6:59 pm

Lito wrote:Yeah that is all I got. Here is with debug=1 when I modprobe lirc_imon:

Code: Select all
...
...
Feb 27 16:11:38 MythTV kernel: usbcore: registered new driver lirc_imon
Feb 27 16:12:07 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: IR port closed


The last line came after I pressed ctrl+c when I did a 'cat /dev/lirc' at the command line. The weird thing, is even though it says IR port closed, if I retype the command I get a '/dev/lirc device or resource busy' message.

I am not really working on the imon stuff at the moment. Just got my pcHDTV3000 and WinTV-250MCE installed and I sort of got them running. For some reason MythTV doesn't work with either but I can get the data via command line tools. I am thinking of reinstalling from scratch now and maybe ditching KnoppixMyth for FC.


Strange that there is no "IR port opened" log. Otherwise the driver seems to have initialized fine. Note that "cat /dev/lirc" wouldn't do anything anyway since /dev/lirc is not a text file. Hope things work out with the new install - there's definitely something strange with your current setup.

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Postby Lito » Tue Mar 01, 2005 1:40 am

Ok I didn't reinstall but got most of my system up and running. Still no lirc though. I got some more debug stuff for you venky (I didn't put debug=1 in the lirc_dev module). I also removed a knoppixmyth installed liblircclient0 library that was installed with xawtv. But still no go. Well here is the updated syslog:

Code: Select all
Mar  1 01:06:48 MythTV kernel: lirc_dev: IR Remote Control driver registered, at major 61
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Driver for Soundgraph iMON MultiMedian IR/VFD, v0.2x
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Venky Raju <dev@venky.ws>
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found IMON device
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found IR endpoint
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: found VFD endpoint
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: vfd_proto_6p: 1
Mar  1 01:06:48 MythTV kernel: lirc_dev: lirc_register_plugin:sample_rate: 0
Mar  1 01:06:48 MythTV kernel: lirc_dev: plugin lirc_imon registered at minor number = 0
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: Registered iMON plugin (minor:0)
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: Registering VFD with devfs
Mar  1 01:06:48 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_probe: iMON device on usb<1:3> initialized
Mar  1 01:06:48 MythTV kernel: usbcore: registered new driver lirc_imon
Mar  1 01:08:45 MythTV kernel: lirc_dev (lirc_imon[0]): open called
Mar  1 01:08:45 MythTV kernel: lirc_dev (lirc_imon[0]): no module owner!!!
Mar  1 01:08:45 MythTV kernel: lirc_dev (lirc_imon[0]): open result = 0
Mar  1 01:08:45 MythTV kernel: lirc_dev (lirc_imon[0]): ioctl called (21505)
Mar  1 01:08:45 MythTV kernel: lirc_dev (lirc_imon[0]): ioctl result = -515
Mar  1 01:08:45 MythTV kernel: lirc_dev (lirc_imon[0]): read called
Mar  1 01:09:01 MythTV kernel: lirc_dev (lirc_imon[0]): read result = -ERESTARTSYS
Mar  1 01:09:01 MythTV kernel: lirc_dev (lirc_imon[0]): close called
Mar  1 01:09:01 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: IR port closed
Mar  1 01:09:40 MythTV kernel: usbcore: deregistering driver lirc_imon
Mar  1 01:09:40 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: imon_disconnect: iMON device disconnected
Mar  1 01:09:40 MythTV kernel: lirc_dev: lirc_unregister_plugin:plugin lirc_imon[0] in use!<3>/usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: deregister_from_lirc: unable to deregister from lirc (-16)
Mar  1 01:09:40 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: delete_context: context deleted
Mar  1 01:09:40 MythTV kernel: /usr/src/lirc-0.7.1pre2/drivers/lirc_imon/lirc_imon.c: module removed. Goodbye!
Mar  1 01:09:40 MythTV kernel: lirc_dev: module successfully unloaded

Lito
 
Posts: 11
Joined: Mon Feb 21, 2005 11:12 pm

Postby Venky » Tue Mar 01, 2005 7:06 pm

Hi Lito,
Please download the experimental lirc_imon.c again. There was a minor change that was made in lirc_imon in LIRC CVS after I created the experimental version of and I forgot to prop it. Turning on debug in lirc_dev helped me track this down. Thanks!

Venky
Venky
 
Posts: 145
Joined: Tue Jun 29, 2004 7:55 pm

Next

Return to Soundgraph iMON IR/VFD Modules

Who is online

Users browsing this forum: No registered users and 0 guests

cron