Table of Contents

Frequently Asked Questions


could not initialize parallel port

If your parallel port display does not work, please run lcd4linux -Fvv and have a look at the output. if you get these messages:

HD44780: using ppdev /dev/lp0
HD44780: ioctl(/dev/lp0, PPCLAIM) failed: 22 Invalid argument
HD44780: could not initialize parallel port!
HD44780: start display failed!

then you did not read the documentation, because there it reads:

Note that you have to use parport devices (usually /dev/parports/* or /dev/parport* with major number 99), the printer devices (/dev/printers/* or /dev/lp* with major number 6) do NOT work!

So you have to change your lcd44linux.conf and replace the Port '/dev/lp0' with Port '/dev/parports/0'

If you don't have that you'll need to create it first with 'mknod /dev/parport0 c 99 0'.

Parallel port Permissions

not approved yet Of course, you have to had permission to use /dev/parport0 For some reason, changing the permission with chmod do not hold after a restart on some distribution. Instead, you should just make sure the user that runs the program is in the lp group. not approved yet

USB port permissions

If you get the message “usb_claim_interface() failed”, you probably do not have sufficient user rights to access your display. Here's how to solve it on Debian based systems that use “udev”:

1. create the group “lcdusers” by running

# sudo groupadd --system lcdusers

2. add yourself to this group

# sudo usermod --append --groups lcdusers your_username

3. find the “idVendor” values for your display (in this case “04d8” and “c002” for the “picoLCD 256×64”):

# lsusb
Bus 003 Device 002: ID 04d8:c002 Microchip Technology, Inc.

4. create the file “/etc/udev/rules.d/60-lcd.rules” with the following contents (you'll of course have to change the “idVendor” and “idProduct”):

SUBSYSTEM!="usb_device", ACTION!="add", GOTO="lcd_rules_end"
# picoLCD
SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="c002", GROUP="lcdusers", MODE="0660"
LABEL="lcd_rules_end"

5. it might be necessary to reboot your system. Then run “ls -l /dev/usb/” to verify that your display is in the “lcd_users” group:

# ls -l /dev/usb/
total 0
crw-rw---- 1 root lcdusers 180, 96 2010-01-20 13:55 hiddev0

6. enjoy your new display… :)


cygwin: compile lcd4linux

Not all plugins works well with cygwin:

./configure --with-drivers=VNC,NULL --with-plugins='all,!dvb,!i2c_sensors,pop3'

Now it works like a charm…