• We recently switched our forum platform. If you experience any issues please email support@crystalfontz.com

2.4.22 and Cfontz 634

phishman3579

New member
I have the Cfontz 634 LCD with the serial to USB connector. I am running Slackware 9.1 with Kernel 2.4.22. I am trying to get them to work together. I changed mt minicom set-up for ttyUSB0, 19200 baud, and no flow control, saved that set-up as minirc.dfl. I then can output test to the LCD screen.

Now, I am trying to work with LCDproc (0.5 CVS). I copied minirc.dfl to minirc.usb0 and then setup /etc/LCDd.conf. Here is the the set-up:

[server]
Driver=CFontz
[CFontz]
# CrystalFontz driver
# Use this driver for CF632 and CF634.
# Select the output device to use [/dev/lcd]
Device=/dev/ttyUSB0
# Select the LCD type (size) [20x4]
Size=20x4
# Set the initial contrast [140]
Contrast=140
# Set the initial brightness [255]
Brightness=255
# Set the initial off-brightness [0]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=0
# Set the communication speed [9600]
# possible values: 1200, 2400, 9600
Speed=19200
# Set the firmware version (New means >= 2.0) [no]
NewFirmware=yes
# Reinitialize the LCD's BIOS [no]
# normally you shouldn't need this
Reboot=no
# Using CFont 632/634 with a USB option [no]
USB=yes

When I start LCDd and the lcdproc, all I get is a blank screen without the blinking cursor. When I change the driver to curses, I get the normal output onto my computer CRT (not lcd).

Anyone have any suggestions?
Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.
 

H2O fiend

New member
phishman3579 said:

When I start LCDd and the lcdproc, all I get is a blank screen without the blinking cursor. When I change the driver to curses, I get the normal output onto my computer CRT (not lcd).

Anyone have any suggestions?
I know this may be a dumb question, but when you say you "start lcdproc", are you passing the command line parameters for the screens to lcdproc? Also, I have had problems with the CVS current versions (later than 0.4.4) as some of them will compile and some won't... and then others that will compile don't work. The 0.5x versions are basically "alpha/beta" versions from what I remember.
 
Last edited:

phishman3579

New member
I went ahead and downloaded 4.4 and 4.3, currently using 4.3. I can see this..

When I start up LCDd and then lcdproc I get:
Server running in foreground
added a screen (C) to the display
added a screen (M) to the display
added a screen (X) to the display
added a screen (T) to the display
added a screen (A) to the display

But the LCD never changes from:
LCDproc server
Clients: 0
Screens: 0

When I use curses as the driver instead of cfontz all the info is displayed correctly...

Any help would be appreciated...
 

H2O fiend

New member
phishman3579 said:
I went ahead and downloaded 4.4 and 4.3, currently using 4.3. I can see this..

When I start up LCDd and then lcdproc I get:
Server running in foreground
added a screen (C) to the display
added a screen (M) to the display
added a screen (X) to the display
added a screen (T) to the display
added a screen (A) to the display
I'm assuming that you are doing this in two sessions?
I just edited my rc.local and restarted the system. The 634 screen kicks in with the CC stuff during boot-up. Once the system is up and running I open a session and type in
LCDd -c /etc/LCDd.conf
screen shows LCDd CVS-stable-0-4-4-20031213 and the GNU license stuff

The screen then shows:


LCDproc server
Clients: 0
Screens: 0
I then run lcdproc K C M X T G D U and it quickly shows 1 client and then goes directly into displaying. I also changed the foreground back to yes from my "no" setting for this test. I never see anything about "adding screen "X" to the display". Double check your config and make sure that you have no other drivers referenced.

When I use curses as the driver instead of cfontz all the info is displayed correctly...

Any help would be appreciated...
:confused:

If nothing else try cutting and pasting this (it's my working LCDd.conf):

[server]
Driver=CFontz
Bind=127.0.0.1
Port=13666
#ReportLevel=5
ReportToSyslog=yes
WaitTime=15
User=nobody
ServerScreen=no
# CHANGE FOREGROUND TO YES TO TEST WITH
Foreground=no
Heartbeat=open
InitialHeartbeat=off
Backlight=on
InitialBacklight=on
BacklightBrightness=79
BacklightOffBrightness=0
[input]
[CFontz]
Device=/dev/ttyUSB0
Size=20x4
Contrast=165
Speed=19200
NewFirmware=yes
Reboot=no
USB=yes
 

phishman3579

New member
This is strange... When I use the 4.4 equivalent (CVS-stable-0-4-4-20040205) all I get on the LCD is this after issueing the LCD command:

LCDproc server
Clients: 0

then I run the lcdproc command and nothing changes.

You dont happen to have the tarball that you used do you?

Are you running Slack 9.1, did you have to modify the kernel?
 

H2O fiend

New member
phishman3579 said:
This is strange... When I use the 4.4 equivalent (CVS-stable-0-4-4-20040205) all I get on the LCD is this after issueing the LCD command:

LCDproc server
Clients: 0

then I run the lcdproc command and nothing changes.

You dont happen to have the tarball that you used do you?

Are you running Slack 9.1, did you have to modify the kernel?
Mandrake 9.2 and it picked it up by default... all I did was manually add an alias into modules.conf for the ftdi_sio to ftdi.

I have re-compiled the kernel several times and the first few times the LCD didn't work, but once I got it to the point of lighting up the rest went fine.

Have you tried lcd4linux on it yet to see if that works?

Also, I sent you an e-mail thru the system ... just send me a note at the address provided and I'll attach the tarball for the 200031213 version I use to the response.
 
Last edited:

phishman3579

New member
H2O fiend said:
Mandrake 9.2 and it picked it up by default... all I did was manually add an alias into modules.conf for the ftdi_sio to ftdi.

I have re-compiled the kernel several times and the first few times the LCD didn't work, but once I got it to the point of lighting up the rest went fine.

Have you tried lcd4linux on it yet to see if that works?

Also, I sent you an e-mail thru the system ... just send me a note at the address provided and I'll attach the tarball for the 200031213 version I use to the response.
I haven't gotten the email yet but go ahead and send me that tarball if you would.

Thanks,
phishman3579@netzero.net
 

phishman3579

New member
I believe that I know what the problem is... The Screen is Freezing after the first screen is sent to the LCD. aka the Display/Screen output. lcdproc might be working correct and I believe it is but maybe the usb/seriel driver is wrong. I would still like to try that tarball if you have it.

I installed lcd4linux and that also did the same thing, all I got is the first screen but when I hit ctl-c the last screen in the buffer was sent to the LCD show what was actually supposed to be on the LCD.

So that's why I think it's a driver issue (since it happend to both LCDd and lcd4linux). I think it is being stuck on the initial screen output because of ctl-c thing.
 

phishman3579

New member
Soo. I copied the ftdi_sio.h and ftdi_sio.c from the linux-2.4.20 source (with the CF patch) into the linux 2.4.22 source directory and compiled that and now I have the 634 USB working flawlessly. I used this command to compile it..

gcc -D__KERNEL__ -I/usr/src/linux-2.4.22/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i486 -DMODULE -nostdinc -iwithprefix include -DKBUILD_BASENAME=ftdi_sio -c -o ftdi_sio.o ftdi_sio.c

then copited the ftdi_sio.o to the /lib/modules/2.4.22/kernel/drivers/usb/serial/ directory and all is well.
 

RabidStew

New member
I have found that the 2.4.20 kernel works fine (with the mentioned patches), but anything above that is seriously wronged in the kernel code (such as 2.4.22). I installed Slack9.1 (2.4.22) and installed a 2.4.20 kernel over it and all worked fine again. In the 2.4.22 failures, I could modify the LCD4Linux code to re-open the port when a port failure was encountered (1 min to 3 min avg until a failure "freeze" was encountered). Run with the -vvv option for more verbose debugging to see it. I favored the 2.4.20 kernel as a cleaner solution without needing to patch LCD4Linux to handle the lost usb to serial port. Enjoy! (634 USB)
 
USB LCD Displays - Graphic and Character LCDs with a Keypad
Top