iMON LCD patch (v0.1)

Update (May, 2008): with the release of LIRC 0.8.3 you no longer need the LIRC patch. Additionally, the forums are now the place to discuss development/use of the patches (particularly this post, which has the latest installation instructions). There’s plenty of friendly people there who are more than willing to help out.

Update: a newer version of this patch is available now, please use that instead of the one listed here: click here. If you’re already following the instructions from that page, then disregard this :-)

OK, this is it, the first version of my patches to get the new iMON LCD screens, found for example, in thee Antec Fusion Black as well as various Silverstone cases. Download the patches below, and I’ll include some instructions as well.

lirc-0.8.2-imonlcd-0.1.patch
lcdproc-0.5.2-imonlcd-0.1.patch

Installation

As you read this, be aware that I’m not a Linux expert by any stretch of the imagination. It’d be better if you were already familiar with patching and installing things from source, but I’ll do my best so bear with me :)

First of all, you need LIRC 0.8.2, which provides the kernel-mode interface to the LCD. Untar that file to somewhere (I used ~/lirc-0.8.2, then issue the following command:

~/lirc-0.8.2$ patch -p1 < /path/to/lirc-0.8.2-imonlcd-0.1.patch
~/lirc-0.8.2$ ./setup.sh

From this menu, choose the first option then select the “Soundgraph iMON MultiMedian IR/VFD” driver from the USB menu. Choose “Save & run configure", which will run the configure script. Next run:

~/lirc-0.8.2$ make
~/lirc-0.8.2$ sudo make install
~/lirc-0.8.2$ sudo modprobe lirc_imon

You should be able to setup LIRC and get your remote working at this point, but since that’s out of scope of my patches, I’ll just skip that bit. The next thing you need to do is download the source for LCDproc version 0.5.2, again, I untar’ed mine to ~/lcdproc-0.5.2, the run:

~/lcdproc-0.5.2$ patch -p1 < /path/to/lcdproc-0.5.2-imonlcd-0.1.patch
~/lcdproc-0.5.2$ aclocal && automake && autoconf
~/lcdproc-0.5.2$ ./configure --enable-drivers=imonlcd
~/lcdproc-0.5.2$ make
~/lcdproc-0.5.2$ sudo make install

Note: You need recent versions of autotools (sudo apt-get install automake autoconf on Ubuntu, for example) to run these commands.

Now, at this point, you’ll have to edit the /usr/local/etc/LCDd.conf file to setup the server. Change the Driver to be “imonlcd” (which is the new driver that I’ve made), set the DriverPath option to “/usr/local/lib/lcdproc/". Next, to the end of the this file, add the following:

[imonlcd]
Size=16x2
Device=/dev/lcd0

Save the file and you should now be able to start the LCDd server and see something on your LCD! The following command-line is good for a start:

~/lcdproc-0.5.2$ sudo LCDd -f -r 4

If you don’t see any errors, you’ll be able to see the LCDproc server screen on your LCD! If you do get errors, or you don’t see anything, leave a comment and I’ll see if we can’t work it out :-)

The next step, then, would be to set up the LCD screen in http://www.mythtv.org/. I’ll leave the details up to the great documentation on the MythTV wiki but if all goes well, you should see something like this:

It works!

Going Forward

The iMON LCD is a powerful little screen. My patch hardly does it justice. For example, the device is a purely pixel-based display (as far as I know…) which means I’ve had to embed a simple “font” for displaying text. But at the end of the day, I should be able to use the pixel-based display for a much better looking progress bar than what is currently there!

Additionally, the kernel module that I’ve built for LIRC supports all the features (that I’m aware of anyway) of the screen, but LCDproc does not. For example, I’m not aware of any way to turn the icons around the outside on/off from LCDproc (that is, there’s no support for such features at this time). Of course, I could add support for it, but that’ll be a pretty big patch – and I’d then have to patch mythlcdserver to use it as well, and so on… I’m sure it’ll happen, but don’t expect it tomorrow is all I’m saying :)

Thanks

I’d just like to thank Venky Raju for writing the original iMON patches (I borrowed heavily from his code :) ) and I’d also like to thank “ralph.y” from this page, who did most of the hard work of reverse engineering the protocol – great work all round!

Trackback address for this post

Trackback URL (right click and copy shortcut/link location)

54 comments

good job,

please keep the imon page on the wiki updated,
http://www.mythtv.org/wiki/index.php/Imon

thanks,

moosy
03/09/07 @ 22:34
Comment from: Sean [Visitor] Email
Awesome job! If there is anything I can do to help with the development of this driver, let me know.
09/09/07 @ 13:30
Comment from: Mike Harris [Visitor] Email
Good work, thanks for the info.

Unfortunately it is not yet working for me. I am getting gibberish on the screen. Nothing that looks like any particular characters, although I should say it has some pattern to it. I have an Antec Fusion Black case that came with this display.

Also, I am getting absolutely nothing from the IR receiver or the volume control knob on the case, have you been able to get that working?

BTW, One omission in your instructions: when building lcdproc you need to do './configure --enable-drivers=imonlcd' before 'make'.
09/09/07 @ 22:02
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Mike: Well, I guess gibberish is better than nothing -- we're getting there! :-)

Would you be able to send me a photo of what you're seeing perhaps? my email address is dean at codeka.com. You're the first person to provide my any feedback (positive or negative) so I'm hoping that I can get it working on more than just my screen, that'll be nice... heh

As for the IR receiver, it took me a while to get that one set up as well, but as long as you've got lircd running, you should be able to see something when you run irrecord -- once you can see stuff coming in from that, you should just be able to find the lircd.conf for whatever your remote is and it should work.

I haven't been able to get the volume knob working on my Antec Fusion Black yet either, but I'm hoping to look at that after I get the LCD working (for now, I have an external amp which I use to control the volume anyway).
10/09/07 @ 12:21
Comment from: Christian Lees [Visitor] Email
I'm also getting the gibberish, I just haven't had a chance to look into it yet. I have managed to get the volume know to send messages, but haven't done anything with it yet. I was looking at the data with the 'mode2' command from lirc.

As for the gibberish on the LCD, the antec displays may run a slightly different firmware. I should get around to looking at it this week, then I may be able to help find the bugs.
10/09/07 @ 21:28
Comment from: sam63 [Visitor] Email
Hi Dean,

thanx for your work. I'm very happy to see your development on the linux driver. Just tried your patches on my system and was able to see something after all on my lcd. Great so far.
I shot a picture of the 'gibberish' -> http://img393.imageshack.us/img393/5998/bild029il0.jpg

If I can provide you with some information of my system, just let me know.

sam63

2.6.20-gentoo-r8
Silverstone GD01MX
10/09/07 @ 21:52
Comment from: sosi [Visitor] Email
Good job but as Mike Harris, I am getting gibberish on the screen.

config: antec black fusion
mandriva spring 2007
local UTF-8
best regards.
11/09/07 @ 06:41
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Thanks for the feedback everybody! I believe the problem has to do with a 64-bit/32-bit issue. I'm running Ubuntu x86-64, and I assume you guys are probably all 32-bit... I'm kind of new to Linux and I guess I was just bringing some of my assumptions from the Windows world over...

See, unbeknownst to me at the time (but knownst to me now!) on Linux, a long is 64-bits on a 64-bit system, but 32-bit on a 32-bit system (on Windows, the data types are all the same size -- I guess it's more of a compiler thing than a platform thing so I suppose it's actually gcc vs. Visual C++). Anyway, if anyone is feeling adventurous, you could probably just do a #include <sys/stdtypes.h> at the top of server/drivers/imonlcd.c and replace all the instances of long with int64. It should work (if that's what the problem is, anyway!)

I'll be working on getting a new patch out tonight (I'm in Australia, so that's probably "in the morning" for people in the U.S.) but in the meantime, you can probably give that a go.

Thanks again for all the feedback!
11/09/07 @ 09:38
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
By the way, just as an update, I actually had a look and the changes you'd need to make to my patch to make it work in 32-bit would be:

Add #include <stdint.h> to the top of the server/drivers/imonlcd.c then replace all usages of long (or long int) with uint64_t. Recompile and try again.

Sorry for the trouble, folks, but I'm new at this, too :-)

Anyway, I'm still at work now, but when I get home, I'll package it all up into a new patch. Should be up in a few hours...
11/09/07 @ 14:07
Comment from: Christian Leuschen [Visitor] Email
Jep, you are right as far as my system is concerned. Running 32 bit!
With your changes the display is correct! Thanks a lot.
Now I have to enable umlauts and try to get the bargraphs running (CPUGraph does not show any).

Best regards!
Chriss
11/09/07 @ 16:21
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
That's great news! I'll have a patch ready with those fixes in the next couple of hours.

As for umlauts (and any other non-ASCII characters, for that matter) you should be able add them to the imon_font array at the top of server/drivers/imonlcd.c. I only added ASCII because I didn't want to get into the problem of encodings and so on -- i.e. what encoding would you expect the input data to be in? UTF-8? ISO-8859-1? I'm not sure... The structure of the fonts is quite simple, basically each byte represents one column of pixels. Most significant bit represents the top pixel and least significant bit the bottom pixel.

With the bar graphs, the iMON LCD has built-in support for various kinds of graphic equalisers, but that might not fit well with the overall architecture of LCDproc. You might just be better off implementing the imon_vbar function (which I plan to do myself at some point -- I've already implemented the imon_hbar to look better than the row of '#'s you see in my screenshot, so that might be a starting point (once I get the new version of the patch updated tonight, that is).

Anyway, thanks for the verifcation :-)
11/09/07 @ 17:17
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Thank you again, everyone! I've got a newer version of the patch available now: http://codeka.com/blogs/index.php/dean/2007/09/11/imon_lcd_patch_v0_2

Please follow up on that post with your progress getting it to run!
11/09/07 @ 19:29
Comment from: Mike Harris [Visitor] Email
Hi Dean,

Works OK for me with the latest patch.

Thanks, Regards // Mike
11/09/07 @ 21:52
Comment from: uke [Visitor] Email
Hi Dean,

Nice work! I have 3RSystems HT-1000 and there is new type of lcd. I tried your patch, but no luck, i get immediately reboot when i load LCDd. Is there any hope with this lcd?


http://www.3rsystemusa.com/products/ht1000.html

Debian/VDR
12/09/07 @ 15:21
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
uke: That's a pretty nice case! Unfortunately, it looks like a totally different LCD screen to the one I've written support for :(

SoundGraph (the makers of the iMON) have not exactly been forthcoming with the specs for their devices, so all support in Linux for them has been through people reverse-engineering them... not exactly efficient!
12/09/07 @ 20:25
Comment from: Janusz [Visitor] Email
Hi !

Nice to see imon driver is still under development !
So, could you help me adding support for GMC OEM version of iMon (included in AVC-S1 HTPC boxes from GMC www.gmc.co.kr) ?
lsusb shows:
Bus 3 Device 2: ID 0000:ff02
and lirc_imon doesn't recognize it.
Could you help me with it ?
Regards and thanks in advance
Janusz
19/09/07 @ 07:47
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Janusz: Unfortunately, that looks like a totally different screen to the one I have... and without the hardware to test on, it's unlikely I can make it work (I'm open to donations, however :p~)

You might be able to contact GMC directly and ask them for help, but in my experience, iMON is not interested in support Linux...

Sorry I can't be of more help!
19/09/07 @ 09:24
Comment from: Janusz [Visitor] Email
Thanks Dean !

I have already contacted GMC but as usual they don't support linux at all ! Dean, I'm ready to any test, internet access to my pc (htpc) or any kind of suggestion.. ! I have some (a little) program skills. Please, take a look at photos of the board:
http://www.fotosik.pl/pokaz_obrazek/62ce730debb79f84.html
http://www.fotosik.pl/pokaz_obrazek/8e30bf2d87a7bbb9.html
It looks very similar to iMon. Please, look at the manual: http://www.gmc.co.kr/productsPds/files/AVC_S1_users_manual.pdf
They uses iMon driver so, it have to be mostly compatibile.

Regards
Janusz
20/09/07 @ 06:18
Comment from: SamG [Visitor] Email
Hi Dean,

Very nice work! I got the Antec Fusion Black last week and am thrilled to have the lcd working under Debian.

I have a question about the backlight/brightness control. Have you been able to turn off the backlight in your setup? I have been playing with the Backlight,InitialBacklight, BacklightBrightness and BacklightOffBrightness arugments in LCDd.conf, but they do not seem to do anything. Also, the LCD backlight remains on even when the computer is shut down. Any thoughts/hints on fixing this would be very welcome.

Thanks

Sam
20/09/07 @ 07:03
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
SamG: The backlight features have not been implemented in the driver yet. I've been playing around with a bit lately so hopefully there'll be another update soon with that functionality but it's been a bit hectic for me the last few days :-)
20/09/07 @ 11:41
Comment from: Steve [Visitor] Email
I am trying to set this up on a Silverstone GD-01 with no luck :-(

I know this may seem a silly question, I have followed the instructions to the letter a few times but dont get anything to display on the LCD (no errors though at any part of the process, even when I run up LCDd).

Out of interest which driver do I choose when setting up lirc, it states “SoundGraph iMon” but there are quite a few of these listed when setting up lirc. I chose the Soundgraph iMon Pad as this matches my remote. Is this correct or is there another driver I should have chosen (remote works fine incidentally)?.

Sorry for such a daft question, am new to Linux...I have tried searching for the answer as well and got nowhere. Would appreciate any help.
20/09/07 @ 19:52
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Sorry, I've updated to the post to be more specific: choose the "Soundgraph iMON MultiMedian IR/VFD" driver.
22/09/07 @ 19:12
Comment from: Mark Buechler [Visitor] Email
I have an odd issue. Granted, I'm new to IMon so please bare with me. I have Thermaltake MozartSX with what I believe is an IMon PAD. lsusb shows:

Bus 001 Device 002: ID 15c2:ffdc SoundGraph Inc. iMON PAD Remote Controller

Without any patches to lcdproc nor to lirc, I have a working display but I believe the IMon is capable of so much more. If I patch both lirc and lcdproc with the IMon patches, my IMon locks up and refuses to show anything but garbage until I cycle power on it. Also, LCDd refuses to kill. Am I doing something wrong?

Thanks, Mark.
25/09/07 @ 09:05
Comment from: Wade [Visitor] Email
This seems to be a great guide but there are a few grey areas that I need to have cleared up before I launch into this.

I have an:
1. iMon lirc-pad remote
2. Ahanix silverstone 16m
3. OpenSuse 10.2 x86_64

lirc.org states to use ./configure --include-imon_pad to use the pad remote.

Can I use this patch and select that driver?

Thanks for keeping things moving forward.

Wade
25/09/07 @ 10:17
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Wade: Do you have a link to a picture/description of your case? From what I can gather, it uses the VFD not the LCD from iMON and so should work without this patch.
25/09/07 @ 11:36
Comment from: Wade [Visitor] Email

Dean,

You are correct with the description of the IR/VFD. The link to the case image/info.

http://www.silverstonetek.com/products/p_contents.php?pno=lc16m&area=usa

Thanks!
25/09/07 @ 19:34
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Yep, definitly the VFD. You should be able to get it to work without my patches (just the basic LCDproc 0.5.2)
26/09/07 @ 09:32
Comment from: DevNull [Visitor] Email
Hi,

I'm getting Floating Point Exception.... on SuSe 10.2 32-bit

backend:~ # LCDd -f -r 4
LCDd version 0.5.2 starting
Built on Sep 27 2007, protocol version 0.3, API version 0.5
Using Configuration File: /usr/local/etc/LCDd.conf
Set report level to 4, output to stderr
LCDd 0.5.2, LCDproc Protocol 0.3
Part of the LCDproc suite
Copyright (C) 1998-2007 William Ferrell, Scott Scriven
and many other contributors

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Server running in foreground
Listening for queries on 127.0.0.1:13666
imonlcd: using Device /dev/lcd0
imonlcd: allocating 0 bytes for framebuffer.
imonlcd: sending command: 40
Driver [imonlcd] has invalid display size
Key "Escape" is now reserved in exclusive mode by client [-1]
Key "Enter" is now reserved in shared mode by client [-1]
Key "Up" is now reserved in shared mode by client [-1]
Key "Down" is now reserved in shared mode by client [-1]
screenlist_switch: switched to screen [_server_screen]
Floating point exception
backend:~ # lsusb
Bus 003 Device 001: ID 0000:0000
Bus 007 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 008 Device 006: ID 09c0:0201
Bus 008 Device 005: ID 09c0:0201
Bus 008 Device 001: ID 0000:0000
Bus 001 Device 004: ID 15c2:ffdc SoundGraph Inc. iMON PAD Remote Controller
Bus 001 Device 001: ID 0000:0000
Bus 006 Device 002: ID 060b:5811 Solid Year ACK-571U Wireless Keyboard
Bus 006 Device 001: ID 0000:0000
Bus 005 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
backend:~ #
28/09/07 @ 04:17
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
What's the in [imonlcd] section of your configuration? Some people have reported that simply deleting the "Size=" line from under [imonlcd] fixes the problem. I haven't been able to reproduce this bug myself yet, so I'll have to look into it further...
28/09/07 @ 10:06
Comment from: raz [Visitor] Email
Hi,

I was following the above instructions and when I start LCDd I get the following error:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Server running in foreground
Listening for queries on 127.0.0.1:13666
imonlcd: using Device /dev/lcd0
imonlcd: allocating 0 bytes for framebuffer.
imonlcd: sending command: 40
Driver [imonlcd] has invalid display size
Key "Escape" is now reserved in exclusive mode by client [-1]
Key "Enter" is now reserved in shared mode by client [-1]
Key "Up" is now reserved in shared mode by client [-1]
Key "Down" is now reserved in shared mode by client [-1]
screenlist_switch: switched to screen [_server_screen]
Floating point exception
^^^^^^^^^^^^^^^^^^^^^^^^^^

Any idea what can be wrong? the display size is 16x2 in the conf file

Thanks!!
01/10/07 @ 09:44
Comment from: raz [Visitor] Email
Hi,

Me again:)

Please ignore my previous post. Somehow I've missed the post with the solution. Confirmed: removing the line with "size=" is the solution to that error.

Thanks for the great work!!!
01/10/07 @ 09:52
Comment from: jman [Visitor] Email
Hi,

I am totally new to Ubuntu...and was wondering if someone could help me get the VFD working.

As i said im totally new to ubuntu and dont the know the ins and outs of compiling or anything else. Ive tried to follow some instructions but didnt really know what i was doing!

My case is a Thermaltake mozart sx.

if you can help me please email me at javad_ayaz@hotmail.com

cheers all!
02/11/07 @ 22:10
Comment from: Russ [Visitor] Email
Hi

I seem to have followed the tutorial without any error's but im not seeing anything on the screen.

The terminal shows;

Server running in foreground
Listening for queries on 127.0.0.1:13666
imonlcd: using Device /dev/lcd0
imonlcd: allocating 192 bytes for framebuffer.
imonlcd: sending command: 40
Key "Escape" is now reserved in exclusive mode by client [-1]
Key "Enter" is now reserved in shared mode by client [-1]
Key "Up" is now reserved in shared mode by client [-1]
Key "Down" is now reserved in shared mode by client [-1]
screenlist_switch: switched to screen [_server_screen]


Then nothing happens, i have to CTL+C to stop the operation.

Any ideas?

Thanks.
22/11/07 @ 20:30
Comment from: toby [Visitor] Email
thanks for all the work on this project. i'd love to get the lcd in my antec fusion black working.
I followed these instructions and ended up in the same situation as russ above. my lcd is lit up totally and there were no errors on install.
could it be something to do with the brightness settings? i have seen some threads suggesting this as a problem. is there any way to configure this?

ta
toby
24/11/07 @ 09:52
Comment from: Michi [Visitor] Email
Hi

I have the same problem like Russ.

The terminal shows;
Server running in foreground
Listening for queries on 127.0.0.1:13666
imonlcd: using Device /dev/lcd0
imonlcd: allocating 192 bytes for framebuffer.
imonlcd: sending command: 40
Key "Escape" is now reserved in exclusive mode by client [-1]
Key "Enter" is now reserved in shared mode by client [-1]
Key "Up" is now reserved in shared mode by client [-1]
Key "Down" is now reserved in shared mode by client [-1]
screenlist_switch: switched to screen [_server_screen]
Connect from host 127.0.0.1:60133 on socket 5
Client on socket 5 added added screen "Time"
Client on socket 5 added added screen "Menu"
Client on socket 5 added added screen "Music"
Client on socket 5 added added screen "Channel"
Client on socket 5 added added screen "Generic"
Client on socket 5 added added screen "Volume"
Client on socket 5 added added screen "RecStatus"
Key "A" is now reserved in shared mode by client [5]
Key "B" is now reserved in shared mode by client [5]
Key "C" is now reserved in shared mode by client [5]
Key "D" is now reserved in shared mode by client [5]
Key "E" is now reserved in shared mode by client [5]
Key "F" is now reserved in shared mode by client [5]
screenlist_switch: switched to screen [Time]

But on the display is nothing.

Thanks and greets
24/11/07 @ 21:54
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Yes, it's probably the contrast setting in the LCDd.conf file. Set it to about 200 for the Fusion Black case. The 600 value that it's set to by default is appropriate for the Silverstone case. It's rather annoying that they both require different values!
25/11/07 @ 14:05
Comment from: Bill [Visitor] Email
OK, I've been beating on this for four days now....I have the Silverstone GD01 and everything I've tried has failed. The LCD works flawlessly in windows, but I get nothing on the LCD when booting into linux.

I've tried lirc prepackaged from Debian, and the latest with and without patches.

Not once have a had a /dev/lcd device. Any thoughts or is this more for the lirc folks?
27/11/07 @ 03:49
Comment from: downforce [Visitor] Email
I like Bill am having the exactly same problem.

I'm using Ubuntu 7.10 (ubuntu-mythtv-frontend) and I've followed the instructions above w/ LIRC atch 0.1 and LCDproc patch 0.3 and patch 0.2 and I can't get either a /dev/lcd* or /dev/lirc to show.

I did get a /dev/lirc at one point but it quickly disappeared.

Going to try some more things and move this over to the forums.

29/12/07 @ 11:34
Comment from: David [Visitor] Email
I have the same issues as Russ and Michi. It gets toe switched to screen and hangs.
Server running in foreground
Listening for queries on 127.0.0.1:13666
imonlcd: using Device /dev/lcd0
imonlcd: allocating 192 bytes for framebuffer.
imonlcd: sending command: 40
Key "Escape" is now reserved in exclusive mode by client [-1]
Key "Enter" is now reserved in shared mode by client [-1]
Key "Up" is now reserved in shared mode by client [-1]
Key "Down" is now reserved in shared mode by client [-1]
screenlist_switch: switched to screen [_server_screen]

Any ideas? Thanks!
27/01/08 @ 18:10
Comment from: Bill [Visitor] Email
Downforce,

Exactly the same on this end....

Let's compare notes:

lsusb shows:

Bus 001 Device 004: ID 15c2:0038 SoundGraph Inc.

Perhaps it wants a more "legacy" usb address? I'll try some other usb locations and report back...success or fail.

Glad I'm not the only one with this problem. :)
28/01/08 @ 00:43
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Actually, from what I can see, this 152c:0038 is a totally new device, with a different protocol and everything (at least, that seems to be what is happening from what I've seen on the forums [http://codeka.com/forums] -- perhaps you could have a look over there as well?)

If anybody with one of these newer devices has the patience to try coding up a patch for it, I'd be more than happy to include it :-)
31/01/08 @ 07:59
Comment from: Michael [Visitor] Email
Hi, ive followed your instructions and the lcd comes up. it comes up jumbled. but i ahve a 64bit computer.

it is comming up like this:

_=na____=nna____=

although the na are asci characters.. i couldnt find them in here.. they look like they have n and a with accents on top.

any idea what this could be?
09/02/08 @ 17:03
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Hmm, that's a strange one - I've never seen it do that before! What client are you using to talk to LCDd? Is it mythlcdserver or LCDproc or something else?
11/02/08 @ 07:47
Comment from: Bill [Visitor] Email
Dean,

Thanks for the reply. At least now I know I can quit beating my head against the wall. Unfortunately, I don't do C (just perl) but hopefully someone who is will get one of these. Thanks again.
03/03/08 @ 00:17
Comment from: Anant [Visitor] Email
Dean,

I am following the thread http://codeka.com/forums/viewtopic.php?f=3&t=23&st=0&sk=t&sd=a and sounds like there is some support for 52c:0038. I have got this new device on my Silverstone ml02 Remote/LCD. Wondering is it included in your patch yet?

To be honest I tried to apply the patch suggested by madCoder but couldn't get my remote or lcd working. It is worth mentioning that I am a newbie and hence there are fair chances that I might have done something silly.

Any help would be highly appreciated.

Anant
09/03/08 @ 11:47
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
It's not included in my patches yet. I've been pretty busy the last few months now and haven't had much time unfortunately. I'm planning to get my patches to LCDproc into CVS for that project and then we can look at the 0038 device as well.
11/03/08 @ 12:52
Comment from: Jason - Antec Antics! [Visitor] Email
Hi,
Great run through .. I have an Antec Fusion Black v2 case with VFD/IR/Knob and have spent endless hors trying to get them working with MythTV on a fedora 6 distro (MythDora).
Following your installation notes, everything runs through fine, although I don't seem to get a /dev/LCD0 device created ... When I try and startup LCDd it complains that it can't find an output device

Some details:
Linux Mediaplayer.rosecottage.local 2.6.22.14-72.fc6 #1 SMP Wed Nov 21 15:12:59 EST 2007 i686 athlon i386 GNU/Linux

[root@Mediaplayer server]# lsusb
Bus 005 Device 001: ID 0000:0000
Bus 005 Device 002: ID 15c2:ffdc SoundGraph Inc. iMON PAD Remote Controller
Bus 002 Device 001: ID 0000:0000
Bus 006 Device 001: ID 0000:0000
Bus 001 Device 003: ID 05af:0408 Jing-Mold Enterprise Co., Ltd
Bus 001 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000

[root@Mediaplayer server]# ls -al /dev/l*
crw-rw-rw- 1 root root 61, 0 Mar 30 19:34 /dev/lirc
srw-rw-rw- 1 root root 0 Mar 30 19:25 /dev/lircd
prw-r--r-- 1 root root 0 Mar 30 19:34 /dev/lircm
srw-rw-rw- 1 root root 0 Mar 30 19:25 /dev/log
brw-r----- 1 root disk 7, 0 Mar 30 19:24 /dev/loop0
brw-r----- 1 root disk 7, 1 Mar 30 19:24 /dev/loop1
brw-r----- 1 root disk 7, 2 Mar 30 19:24 /dev/loop2
brw-r----- 1 root disk 7, 3 Mar 30 19:24 /dev/loop3
brw-r----- 1 root disk 7, 4 Mar 30 19:24 /dev/loop4
brw-r----- 1 root disk 7, 5 Mar 30 19:24 /dev/loop5
brw-r----- 1 root disk 7, 6 Mar 30 19:24 /dev/loop6
brw-r----- 1 root disk 7, 7 Mar 30 19:24 /dev/loop7
crw-rw---- 1 root lp 6, 0 Mar 30 19:24 /dev/lp0

[root@Mediaplayer server]# ls /dev/us*
/dev/usb1 /dev/usb5.2_ep81 /dev/usbdev1.3_ep83 /dev/usbdev5.1_ep00
/dev/usb2 /dev/usb6 /dev/usbdev2.1_ep00 /dev/usbdev5.1_ep81
/dev/usb3 /dev/usbdev1.1_ep00 /dev/usbdev2.1_ep81 /dev/usbdev5.2_ep00
/dev/usb4 /dev/usbdev1.1_ep81 /dev/usbdev3.1_ep00 /dev/usbdev5.2_ep02
/dev/usb5 /dev/usbdev1.3_ep00 /dev/usbdev3.1_ep81 /dev/usbdev5.2_ep81
/dev/usb5.2_ep00 /dev/usbdev1.3_ep81 /dev/usbdev4.1_ep00 /dev/usbdev6.1_ep00
/dev/usb5.2_ep02 /dev/usbdev1.3_ep82 /dev/usbdev4.1_ep81 /dev/usbdev6.1_ep81

"[root@Mediaplayer server]# LCDd -f -r 4
LCDd version 0.5.1 starting
Built on Apr 9 2007, protocol version 0.3, API version 0.5
Using Configuration File: /etc/LCDd.conf
Set report level to 4, output to stderr
LCDd 0.5.1, LCDproc Protocol 0.3
Part of the LCDproc suite
Copyright (C) 1998-2006 William Ferrell, Scott Scriven
and many other contributors

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Server running in foreground
Listening for queries on 127.0.0.1:13666
imon: using Device /dev/lcd0
imon: ERROR opening /dev/lcd0 (No such file or directory).
imon: Did you load the iMON VFD kernel module?
imon: More info in lcdproc/docs/README.imon
Driver [imon] init failed, return code {less than} 0
Module /usr/lib/lcdproc/imon.so could not be loaded
Could not load driver imon
There is no output driver
Critical error while initializing, abort."

[root@Mediaplayer lcdproc-0.5.2]# ls -al /usr/lib/lcdproc/imon.so
-rwxr-xr-x 1 root root 6884 Apr 10 2007 /usr/lib/lcdproc/imon.so



Any assistance would be very much appreciated .. have spent so many hours trying to figure this one out

Thanks
Jason



31/03/08 @ 05:25
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
I'd say the kernel is still picking up the old lirc_imon.ko from your mythbuntu distribution. Make sure you do an "apt-get remove lirc" to remove it first.

It also looks like your LCDproc is picking up the wrong imon driver as well (imon.so instead of imonlcd.so). Check your LCDd.conf file to make sure you specify the right one.
31/03/08 @ 11:14
Comment from: Jason - Antec Antics! [Visitor] Email
I found the incorrect reference to the IMON driver, but can't seem to remove the lirc_imon.ko on the Fedora kernel:

[mythtv@Mediaplayer ~]$ modprobe -l |grep lirc
/lib/modules/2.6.22.14-72.fc6/misc/lirc_imon.ko
/lib/modules/2.6.22.14-72.fc6/misc/lirc_cmdir.ko
/lib/modules/2.6.22.14-72.fc6/misc/lirc_bt829.ko
/lib/modules/2.6.22.14-72.fc6/misc/lirc_dev.ko
/lib/modules/2.6.22.14-72.fc6/misc/lirc_atiusb.ko

[root@Mediaplayer mythtv]# rmmod lirc_imon
ERROR: Module lirc_imon does not exist in /proc/modules
[root@Mediaplayer mythtv]# rmmod imon
ERROR: Module imon does not exist in /proc/modules

(cant use apt-get as I am on Fedora 6, not mthbuntu distro)

I'll do a fresh install over the next day or so and see if that fixes the issue

Thanks
Jason
01/04/08 @ 00:48
Comment from: Jason - Antec Antics :)) [Visitor] Email
Hi Dean,

Many thanks for your assistance, I managed to get the VFD on my V2 Black Antec to finally display text!!!

I reinstalled MythDora from scratch and found that I had not previously installed the kernel dev and header files correctly. It was not creating the /dev/lcd device as a consequence.

To fix it I did a "yum install kernel-source kernel-devel" and everything else fell into place.

I noticed that as part of the default install on FC6 that there are multiple LCDd.conf files and that by default the one located in /etc appears to be read first. I am guessing that this may be unique to Fedora.

i.e.
/usr/local/etc/LCDd.conf
/etc/LCDd.conf
/home/mythtv/lcd/lcdproc-0.5.2/LCDd.conf

Now onto the IR and volume knob ;-)

Many Thanks again,
Jason
01/04/08 @ 08:15
Comment from: Noobie [Visitor] Email
I´m new to Linux.
I have untared the lirc file. After performing the patch command I got an error msg.
Can anyone help me?
I tried to find the patch command but it seems that it is not in the debian.
My system: debian, ctvdr6

Thx in advance
kavo
03/05/08 @ 04:47
Comment from: Nick [Visitor] Email
I'm having some trouble compiling this on KnoppMyth R5F27.

I've also tried following the instructions at http://www.knoppmythwiki.org/index.php?page=LIRCHowTo


make[4]: Entering directory `/usr/src/lirc-0.8.2/drivers/lirc_dev'
mv Makefile Makefile.automake
cp ../Makefile.kernel Makefile
make -C /lib/modules/2.6.18-chw-13/build/ SUBDIRS=/usr/src/lirc-0.8.2/drivers/lirc_dev modules \
KBUILD_VERBOSE=1
make[5]: Entering directory `/usr/src/linux-headers-2.6.18-chw-13'
test -e include/linux/autoconf.h -a -e include/config/auto.conf || ( \
echo; \
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/autoconf.h or include/config/auto.conf are missing."; \
echo " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
echo; \
/bin/false)
mkdir -p /usr/src/lirc-0.8.2/drivers/lirc_dev/.tmp_versions
rm -f /usr/src/lirc-0.8.2/drivers/lirc_dev/.tmp_versions/*
make -f scripts/Makefile.build obj=/usr/src/lirc-0.8.2/drivers/lirc_dev
gcc -m32 -Wp,-MD,/usr/src/lirc-0.8.2/drivers/lirc_dev/.lirc_dev.o.d -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/4.1.2/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -pipe -msoft-float -mpreferred-stack-boundary=2 -march=i586 -ffreestanding -Iinclude/asm-i386/mach-default -fomit-frame-pointer -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -DIRCTL_DEV_MAJOR=61 -DEXPORT_SYMTAB -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/src/lirc-0.8.2/drivers/lirc_dev/../.. -I/lib/modules/2.6.18-chw-13/build//include/ -I/lib/modules/2.6.18-chw-13/build//drivers/media/video/ -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(lirc_dev)" -D"KBUILD_MODNAME=KBUILD_STR(lirc_dev)" -c -o /usr/src/lirc-0.8.2/drivers/lirc_dev/lirc_dev.o /usr/src/lirc-0.8.2/drivers/lirc_dev/lirc_dev.c
In file included from /usr/src/lirc-0.8.2/drivers/lirc_dev/../../drivers/kcompat.h:234,
from /usr/src/lirc-0.8.2/drivers/lirc_dev/lirc_dev.c:53:
include/linux/i2c.h:32:26: error: linux/i2c-id.h: No such file or directory
make[6]: *** [/usr/src/lirc-0.8.2/drivers/lirc_dev/lirc_dev.o] Error 1
make[5]: *** [_module_/usr/src/lirc-0.8.2/drivers/lirc_dev] Error 2
make[5]: Leaving directory `/usr/src/linux-headers-2.6.18-chw-13'
make[4]: *** [lirc_dev.o] Error 2
10/05/08 @ 04:23
Comment from: Doug [Visitor] Email
Hi,
Is there an imonlcd patch available for lirc-0.8.3 ?

lirc-0.8.2 is no longer compiles against the 2.6.24.x kernel.

Any pointers much appreciated.

Cheers,

Doug
23/05/08 @ 22:06
Comment from: Dean Harding [Member] Email · http://codeka.com/blogs
Hi guys, I've updated the post with a pointer to the forums. That's where most of the discussion is happening now. I'm going to close comments on these posts, because all new discussion should be happening on the forums, where there are plenty more people willing to help you out. Thanks for the support!
28/05/08 @ 10:42

Comments are closed for this post.