Ethan's Retrocomputing Corner - lcdproc


lcdproc: LCD module articles

From: "Rob Hansen" <rhansen@matrix-orbital.com>
Date:  Mon, 29 Mar 1999 11:08:42 -0700
Subject: [lcdproc] New list for hardware
Reply-To: <lcdproc@lists.omnipotent.net>

There exists a new mailing list for hardware and non - LCDproc 
related issues.  So far there have been no questions or answers, 
but feel free to subscribe and get involved.  Below is the 
subscription address.  Just send an empty email to:

matrix-subscribe@lists.omnipotent.net

Rob Hansen
Matrix Orbital Corp.

Date: Wed, 12 May 1999 16:11:05 -0600
From: Scott Scriven <scriven@CS.colostate.edu>
Subject: Re: [lcdproc] lcdproc in KDE
Reply-To: <lcdproc@lists.omnipotent.net>

Vern Gill wrote:
> 
> Anyone know how to get lcdproc running the "toolbar" of KDE? I
> would really like that, but I don't have the first clue how to
> do that. Any help would be great!

I'd guess that KDE's toolbar has a "Swallow" feature.  If so, you should be
able to get LCDproc in there by using the curses driver in an xterm.  The
following line runs lcdproc-0.3.x in an xterm, with a title of "lcdproc":

        xterm -name lcdproc +sb -fg black -bg grey76 -cr grey75 -geometry 20x4
-font 6x10 -e /usr/local/bin/lcdproc -l curses C M X T B D &

After running this, you should be able to have KDE swallow all "lcdproc"
windows.  It works in Fvwm and Gnome, at least.  :)

There's a screenshot of this here:
        http://lcdproc.omnipotent.net/using.php3


 _  _ _  _ ___ ___  ------------"Use the source, Luke!"---------
( \/ ( \/ (__ (__ ) |     Scott Scriven (Toy Keeper / XYZZ)    |
 \  / \  /  //  //  |       mailto:toykeeper@cheerful.com      |
 /  \ / /  //_ //_  |     irc:serdevian.dyn.omnipotent.net     |
(_/\_(_/  (___(___) |  http://www.vis.colostate.edu/~scriven/  |

Date: Mon, 17 May 1999 11:48:16 -0700
From: Brent Crosby <brent@crystalfontz.com>
Subject: Re: [lcdproc] lcd emulator
Reply-To: lcdproc@lists.omnipotent.net

>Well, I think there are two people working on an X11 driver for LCDd, but
>nobody else has started an emulator.  I've got some nifty images to use for
>the window if anyone wants them...  (just the LCD, no fonts yet)

There is a font here that can be installed on your Windows machine that looks
like the font on an LCD controlled by a 44780:

http://members.tripod.com/mdileo/utilities.html


                                Sincerely,
                                Brent A. Crosby

| Brent A. Crosby
| Crystalfontz America, Incorporated
| 15611 East Washington Road
| Valleyford, WA 99036
| voice (509) 291-3514 facsimile (509) 291-3345
| http://www.crystalfontz.com brent@crystalfontz.com

From: David Glaude <dglaude@comtech.be>
Date: Wed, 26 May 1999 14:50:53 +0200
Subject: RE: [lcdproc] lcdemu
Reply-To: lcdproc@lists.omnipotent.net

Hello,
Just a few comment on this new piece of code running arround LCDproc...
Ok, so as far as I can see, this is a Matrix Orbital LCD screen
emulator. ;-)

Now how does it work.. (as far as I can see by reading the code)
[Be carefull it is ascii art down there]

lcdproc (or other client) that really monitor things and display them...
  |
  |   accross the network, TCP connection (maybe local)
  V
LCDd -+-> lcdemu -+-> Zut! -+-> Xwindow Server
      |           |         +- Did not check but local or
      |           |            remote display should be possible
      |           +- lcdemu just send in stdin of Zut wich handel
      |              Xwindow display difficult task.
      +- using named pipe (fifo) "/dev/lcd" 
         this name is in the code of lcdemu

Well, this make the hell a lot of process (but we are running Linux).
Now the emulator does not seems to emulate everything (just what is
needed).  There is an other option for lcdproc (and I think some of
you are working on this)...
It is to create a Xwindow "driver" (unrelated to Matric Orbital) that
will be included into LCDd and implement the same function.

Now what can I say about possible improvement:
 * Make "/dev/lcd" a parameter.
 * Implement contrast by changing the color in use (like for backlite).
 * Make the lcd screen size a parameter (Matrix Orbital has various size).
 * Implement some missing feature (to be fully Matrix Orbital alike).
 * Implement Big Number (this one could be in 0.4pre6 !!!).
 * Transform lcdemu into a build in driver (still ussing "Zut" I don't know how).

Other than that, it is just a GREAT JOB.

David GLAUDE.

PS: An other piece of code that would be just great (but nobody will
    need that) is to really emulate a Matrix Orbital LCD screen... I
    mean reading from a serial port and display that on screen (on
    Xwindow, SVGAlib or other). Of course we can do that in the
    Background, and run some other software simultaneously.    Now
    this mean you need TWO PC. ;-) Or you can connect to yourself
    with a Null modem cable from COM1 to COM2. :-))))

> -----Original Message-----
> From: weasel@bingo-ev.de [mailto:weasel@bingo-ev.de]
> Sent: mardi 25 mai 1999 2:50
> To: lcdproc@lists.omnipotent.net
> Subject: [lcdproc] lcdemu
> 
> Hi,
> I would like to announce the first running version of lcdemu.
> I have implemented all functions you need to run lcdproc, but 
> nothing else.
> So check it out. 
> You can get it from:
>    http://www.bingo-ev.de/~pe1724/lcdemu.html
> So see you there.
> I wait for your reply.
> Bye
>    Piotr Esden-Tempski.

Date: Mon, 31 May 1999 01:02:57 -0400
From: Monz <monzsca@dorx.net>

Subject: [lcdproc] New display supported - Optrex DMC-20434
To: lcdproc@lists.omnipotent.net

I would like to announce that the hd44780 driver can be used with the
Optrex DMC-20434, a 20 characters by 4 line display. This display is
similar to the DMC-20481 that the driver was made for, however it lacks
a back light.  These displays can be obtained for $7.00(us) from All
Electronics Corp as item # LCD-46.

The driver does appear to have a problem, it crashes for me. A quick fix
is to add iopl(3) to  hd44780.c insted of ioperm(port,1,1). This keeps
it from crashing by giving it access to all ports (ioperm should work
but, I havent isolated the reason for the crash). I have tested it with
both version 0.3.5 and 0.4 pre 5.

This display attaches directly to a pc's parallel port to provide data
to the display and control signals.  The connection instructions appear
to be missing. I figured the connections out from the data sheets and
source:


Bit     Parallel Port Pin     Display Pin      Function
0              2                 11              bit 0
1              3                 12              bit 1
2              4                 13              bit 2
3              5                 14              bit 3
4              6                  4         Register Select
5              7                  5            Read/Write
6              8                  6          Enable (#edge)
7 *            9                N/A               ???
             Shell                1             Ground
              N/A                 2               +5V
              N/A                 3            Contrast **

*  The driver truns on (1) bit 7 at all times and appears to have no
   function.
** See data sheet for contrast control.


If someone knows that bit 7 is for or how to fix the i/o permissions in
the driver please let me know.
Is there a way to get up to 10mA of 5V to power the display from the
parallel port? Maybe this is what bit 7 is for, but some parallel ports
can't supply enough current.

Thanks, and have fun

Date: Fri, 04 Jun 1999 22:10:30 -0700
From: Brent Crosby <brent@crystalfontz.com>
To: lcdproc@lists.omnipotent.net
Subject: [lcdproc] Software similar to LCDProc.


Have any of you folks taken a look here? This person has a surplus display
connected to their parallel port displaying stats. It is under Linux too:

http://centerclick.org/lcd/

FYI.

                                Sincerely,
                                Brent A. Crosby

| Brent A. Crosby
| Crystalfontz America, Incorporated
| 15611 East Washington Road
| Valleyford, WA 99036
| voice (509) 291-3514 facsimile (509) 291-3345
| http://www.crystalfontz.com brent@crystalfontz.com

Date: Fri, 11 Jun 1999 22:17:51 -0400 (EDT)
From: MishtaEcks <insane@netset.com>
To: lcdproc@lists.omnipotent.net
Subject: Re: [lcdproc] Documentation & a couple questions

Well, I solved my own problem after finding documentation I missed the
first couple of sweeps[1]. All you need to do is write[2] a couple of two
line zsh scripts, one to turn the backlighting on, one to turn it off. ZSH
has nice hex interpretation, so I used it. For the interested, here they
are:

--ON--
#!/bin/zsh
echo '\xFE\x42\x23' > /dev/lcd

--OFF--
#!/bin/zsh
echo '\xFE\x46' > /dev/lcd

Maybe something a little less quick & dirty could be added to the next
lcdproc release? Another feature that would seem to be really useful for a
project I have in mind is some sort of command I can send to the server
that will send commands to the LCD itself.[3]

[1] Auto-Self-LART activated
[2] Or wrong...
[3] I know I'm asking for a lot. I'm a horrible C coder[4] or I'd do it
    myself.
[4] That being why my backlighting stuff is done in zsh. =)

Date: Sun, 13 Jun 1999 08:34:34 -0400
To: lcdproc list 
From: Dave Strout <dstrout@clark.net>
Subject: Re: [lcdproc] Announce: V0.4-pre6

I like the new version!  One thought, though:  Scrolling the FQDN is
annoying (to me, at least).  I changed clients/lcdproc/mode.c to look like:

     strncpy(host, Uname.nodename, 15);
      host[16]=0;
      *(index(host, '.'))='\0'; // this is new
      for(i=0; i>16; i++)
         if(host[i] == '\n') host[i]=0;

around line 55.

dave.

--
Dave Strout - Linux integrator currently under contract to Andrew Corporation.
dstrout@clark.net      http://www.clark.net/pub/dstrout
301/972-1397 (voice)   301/972-3962 (fax)

From: David Glaude <dglaude@comtech.be>
To: lcdproc@lists.omnipotent.net
Date: Tue, 15 Jun 1999 18:19:05 +0200
Subject: [lcdproc] HOWTO compile lcdproc0.4pre6 with IRMAN support.

PRE-SCRIPTUM:
Please make sure you add this to the documentation for next release
---

Hello,
I made a IRman input driver for lcdproc-0.4 wich is now include in
"lcdproc-0.4-pre6". This input driver require "libirman-0.4.1b" the
library with function support for IRman.

I want to help you use this new driver (if anybody other than me use
it... please tell me!!!).

In order to help you compile your own version of LCDd with support for
IRman, I recorded every step I took in order to compile my own copy based
on two file downloaded directly from the internet.

The first file is " lcdproc-0.4-pre6.tar.gz " the current version of lcdproc.
You can download this file from
"http://lcdproc.omnipotent.net/download.php3"
The second file is "libirman-0.4.1b.tar.gz" the current version of libirman.
You can download this file from http://www.evation.com/libirman/
DO NOT USE THE COPY OF LIBIRMAN FROM LCDPROC HOME PAGE...
I don't know what is wrong with that one but I can't decompress it???

How to compile lcdproc for use with support for IRman:

-Untar lcdproc and libirman:
        tar -xzvf lcdproc-0.4-pre6.tgz
        tar -xzvf libirman$$$
-Go, configure and compile libirman:
        cd libirman-0.4.1b/
        ./configure
        make
        cd ..
-Go in lcdproc directory:
        cd lcdproc-0.4-pre6
-Here is the modification you need to include IRman driver in lcdproc:
        edit Makefile.config
        # Irman input...  handy!
        DRIVERS += -DIRMANIN_DRV
        DOBJ += irmanin.o ../../../libirman-0.4.1b/libirman.a
        IRMAN=1
-Compile lcdproc
        make
-Make sure you have a network interface up and working:
        ifup lo
-Go and install your IRman configuration file:
        cd server
        cd drivers
        cp DOTirmanrc ~/.irmanrc
-Modify if needed (if you use another remote control) the .irmanrc file.
-Run LCDd with two driver, irmanin and an output driver:
        ./LCDd -d irmanin "-d /dev/ttyS0" -d curses
-Try to access the menu by pressing the remote control.

Now if it does not work:
· Try your IRMAN on ttyS0 alone (with other software).
· Try LCDd without the IrmanIN driver.
· ... 

David GLAUDE

PS: If you really have successfuly made LCDd working without IRman AND
You have successfuly made IRman device working AND you don't succeed to
make it work together ussing my driver... then maybe I can help and give
you some support (as time permit and if it does not eat up too much
bandwidth).

From: Jeremy Scrivener <jscriv@hotmail.com>
To: lcdproc@lists.omnipotent.net
Date: Fri, 18 Jun 1999 03:43:20 PDT
Subject: Re: [lcdproc] newbie questions...

> > Firstly, when I run make it can't find one of the curses libraries:
> You should probably check to make sure you have the curses development 
> package installed

Many thanks Scott, this is indeed what the problem was

> It doesn't have the ability (yet) to lock the VT, and I'm not sure how to 
> disable the screen blanker

To disable screen blanking:

setterm -blank 0 > /dev/console

(this goes in rc.local)

Cheers,

Jeremy.

From: Ranger Rick <ranger@www.alloyweb.com>
To: lcdproc@lists.omnipotent.net
Date: Sun, 27 Jun 1999 22:01:17 -0500 (CDT)
Subject: [lcdproc] Matrix Orbital Perl module

I know this is only kind-of related, but I've been working
on a basic perl module for controlling the Matrix Orbital
display.  It's reached a point where it's useful... if
any of you are interested, I've got it up on my FTP at
ftp://defiance.darktech.org/pub/perl/LCD/LCD-0.02.tar.gz
-- I would greatly appreciate any input you can give.

Thanks,
Ben Reed
ranger@befunk.com

Date: Mon, 07 Jun 1999 11:37:43 -0700
From: Barry Gott <ecsc@eio.com>
Subject: Re: Price and availability questions for LCD modules

At 10:41 AM 6/5/99 -0700, you wrote:
> Do you have any of the following left in stock?
>
> M4020      LCD CHARACTER 4x40          Seiko
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Out Of Stock

> L40421101  LCD Module 2x40 Backlight   Seiko
> L40421100  LCD Module 2x40 Backlight   Seiko
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
We do have these in stock, however i have no idea what the difference is
between them.

> 4042OOJ2   LCD 2x40 Reflective         <seconds>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Meaning there is a scratch, a bad pixel, or something else wrong with it.

From: "Andreas Neuhaus <andy@fasta.fh-dortmund.de>
To: <lcdproc@lists.omnipotent.net>
Date: Tue, 20 Jul 1999 01:16:19 +0200
Organization: FAStA Fh-Dortmund
Subject: [lcdproc] LCDproc hbar problem

dear all,

first of all sorry if this topic has already been discussed on this list - i
just have subscribed to it.

now my problem: i'm developing an audio jukebox, which can handle input and
display via LCDproc. i read the client/server protocol description
netstuff.txt and everything works well, except the balance bar. the volume
bar is shown correctly (hbar widget), but for the balance bar i tried to set
up the hbar so that it starts in the middle of the display and goes to the
left. i specified a negative size for it and thought that that would do it,
but it doesn't. does anybody know how this work or if there is a workaround
if it's not implemented?

ps: i'm using lcdproc-0.4-pre6 with curses driver (because i still don't
have my display).

pps: if anybody is interested in an audio jukebox which can play audio-cds
(under development), mp3's and features optional ir-input, lcdproc-input,
lcdproc-output, mixer control, playlists, repeat, shuffle, sleep-timer and
probably many more in future, just visit IRMP3:
http://www.fasta.fh-dortmund.de/users/andy/irmp3/
the upcoming version 0.4.1 with lcdproc input support will be released soon.

regards,
andreas neuhaus

Date: Sun, 25 Jul 1999 17:33:48 -0600
From: Scott Scriven <toykeeper@cheerful.com>
Organization: XYZZ Software Co.
To: lcdproc list <lcdproc@lists.omnipotent.net>
Subject: [lcdproc] Announce: LCDproc V0.4-pre7

Hi.

New version; this one mainly adds support for a new kind of display.

The display is a Crystalfontz 634, which is very similar to the
Matrix-Orbital 20x4, but cheaper and has a few differences.  It's a bit
bigger, has software-controlled backlighting, and has a 6x8 font.  Pretty
neat, actually.  It lights up my room better in the dark, and the heartbeat
icon is actually surrounded on both sides by a row of pixels.

:)

 _  _ _  _ ___ ___  ------------"Use the source, Luke!"---------
( \/ ( \/ (__ (__ ) |     Scott Scriven (Toy Keeper / XYZZ)    |
 \  / \  /  //  //  |       mailto:toykeeper@cheerful.com      |
 /  \ / /  //_ //_  |     irc:serdevian.dyn.omnipotent.net     |
(_/\_(_/  (___(___) |  http://www.vis.colostate.edu/~scriven/  |

Date: Wed, 28 Jul 1999 14:56:39 -0700
To: lcdproc@lists.omnipotent.net
From: Brent Crosby <brent@crystalfontz.com>
Subject: Re: [lcdproc] newbie hd44780

Ronald:

  Go to the Crystalfontz web site:

   http:\\www.crystalfontz.com

Then click "links", and scroll down to the "Interfacing the PC" link, 
and then click into it.

  That site has an example of connecting a 2x16 to the parallel port. With
this to guide you and the LCDproc parallel port pinout {hopefully some else
on the list will supply that :) } you should be able to do it yourself.

  Basically it comes down to making a custom cable. Here is a hint: Start
with a working printer cable, cut off the printer end then strip and trace
the wires with an ohm meter to the pins on the PC end, then solder the
correct wires to the LCD.

At 02:44 PM 7/28/99 , you wrote:
> hi all...
>
> I've written an email like this one before...but i'll try ones more :)
>
> I am a real newbie/rookie/dombo whatever you like to call me :)
>
> My question is as follows....
>
> I have a whole bunch of hd4470 lcd's and would like to use them with lcd proc.
> now, the problem is that I just don't know anything from electronics etc.
> I still can't figure out how to connect these lcd's to the par-port and how
> to configure lcdproc to use them.
>
> If there is someone who would do this work for me, I can get him (or her) a
> couple of those lcd's for free in return.
>
> Please mail me if you would help me out.
>
> Ronald
> ronabrak@kabelfoon.nl

                                Sincerely,
                                Brent A. Crosby

| Brent A. Crosby
| Crystalfontz America, Incorporated
| 15611 East Washington Road
| Valleyford, WA 99036
| voice (509) 291-3514 facsimile (509) 291-3345
| http://www.crystalfontz.com brent@crystalfontz.com

Date: Sat, 31 Jul 1999 23:01:11 +0100
From: Gareth <gareth@linux.com>
Organization: linux.com
To: "Dan..." <dan@iquest.net>
Subject: Re: [lcdproc] www?

http://lists.omnipotent.net/lcdproc/

"Dan..." wrote:
> 
> Is there a web page archiving this list?

From: "Rocco Valotta" <roccov@o2.humberc.on.ca>
To: <maestro@maesoft.net>, <lcdproc@lists.omnipotent.net>
Date: Sun, 1 Aug 1999 11:52:52 -0400
Subject: RE: [lcdproc] PIDs & HD44780 Support Site Up

> I'm a big fan of logging stuff to syslog, so I started by adding "Starting."
> and "Exiting." log entries and noticed that when LCDd starts it has a PID of
> say 10000, I don't see any processes running with that id, they are always
> the starting process + 1.

> What's up with this?  Is it something with how it forks itself?

Usually when a app forks itself it gets a new process id. With LCDPROC the
forked version of the app is the portion that remains resident while the
parent dies. There are two ways to get around this: Move the fork()
statement (And surrounding support lines) to just before the lcd.init() line
in main.c of server or move your lines of code to below the fork statement.

On another note I am note 100% if I've ever mentioned it here but i'm about
to now. I've got a web page dedicated to the HD44780 and LCDProc.
HTTP://o2.humberc.on.ca. There is a link on the bottom left of the main page
that will take you there.
I've currently have a schematic of how to hook up a HD44780 to the parallel
port, some small fixes and I will shortly be putting up a 8 bit version of
the HD44780.c and schematics to go with it. (Much faster redraw speeds).  I
will be glad to help support people with HD44780 side of things.

Also I'd like to suggest that the fork() and supporting lines be moved in
the distribution to just before the lcd.init(). This will fix issues related
with HD44780 and LCDProc 4 Pre X. The reason for this is that the
permissions to access the port are aquired before the fork() and are not
transfered to the child process. Well that's enough rambling from me.

To Ethan's Home Page

HTML 2.0 Checked! Last modified: 2 August 1999
Compilation © Copyright 1999, Ethan Dicks <erd@infinet.com>. All Rights Reserved.