{{:usblcd.png}}
This driver supports the USB to HD44780 interface module by [[http://www.usblcd.de|Robin Adams IT services]].
**Note**: All USBLCD's seem to be unavailable for months now... You may have a look at the [[http://bwct.de/lcd.html|BWCT USB-to-LCD adapters]] which provide a similar solution, and are supported by LCD4Linux using the [[BWCT|BWCT driver]]. Another (probably cheaper) alternative would be the do-it-yourself [[http://www.harbaum.org/till/lcd2usb|LCD2USB]] interface developed by Till Harbaum; of course there's a [[LCD2USB|LCD4Linux driver]] available..
LCD4Linux communicates with the USBLCD over a kernel driver. This driver is part of the standard kernel since 2.4.20-pre7 (2.5.32). If you have an older USBLCD (Version 1.10 or 1.11) you have to download a special kernel driver from http://www.usblcd.de because the USB device ID has changed.
While I developed the [[:BWCT|BWCT driver]], I realized how easy libusb programming is, and I integrated an alternative libusb interface in the USBLCD driver, too. You decide which method to use by specifying 'libusb' as the //Port// in the Display section.
Some comments on the libusb method:
* the libusb method does not care if you have an old or new USBLCD, it detects both of them.
* libusb support is disabled if //configure// cannot find the file //usb.h//. You need to install //libusb-dev// or something similar (depends on your distribution)
* you don't need a USBLCD kernel module with libusb; far from it, libusb does not work if you have the USBLCD kernel module loaded (which the //hotplug// system may have done for you)
The USBLCD works with every HD44780 or compatible display, power for the display (and even backlight) will be supplied by USB.
{{:usblcd1-sm.jpg}}
{{:usblcd5-sm.jpg}}
{{:usblcd7.jpg}}
{{:usblcd_blau1.jpg}}
----
===== Display Section =====
Display {
Driver 'USBLCD'
Port
Size
asc255bug <0|1>
Icons
}
----
===== Parameters: =====
|**Driver**|'USBLCD'|
|**Port**|either 'libusb' or the device file of your USBLCD (usually '/dev/usb/usblcd' or '/dev/lcd0')|
|**Size**|x e.g. "16x2"|
|**asc255bug**|set to 1 if you don't get solid blocks in bars, but an inverted P (the //Portishead syndrome// :-)|
|**Icons**|Number of user-defined chars reserved for Icons (default: 0)|
----
===== Example =====
using the kernel module:
Display USBLCD {
Driver 'USBLCD'
Port '/dev/lcd0'
Size '20x4'
asc255bug 0
Icons 1
}
using libusb:
Display USBLCD {
Driver 'USBLCD'
Port 'libusb'
Size '20x4'
asc255bug 0
Icons 1
}
----