usblcd

This driver supports the USB to HD44780 interface module by Robin Adams IT services.

Note: All USBLCD's seem to be unavailable for months now… You may have a look at the BWCT USB-to-LCD adapters which provide a similar solution, and are supported by LCD4Linux using the BWCT driver. Another (probably cheaper) alternative would be the do-it-yourself LCD2USB interface developed by Till Harbaum; of course there's a 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 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 <name> {
    Driver    'USBLCD'
    Port      <string>
    Size      <string>
    asc255bug <0|1>
    Icons     <number>
}

Driver'USBLCD'
Porteither 'libusb' or the device file of your USBLCD (usually '/dev/usb/usblcd' or '/dev/lcd0')
Size<columns>x<rows> e.g. “16×2“
asc255bugset to 1 if you don't get solid blocks in bars, but an inverted P (the Portishead syndrome :-)
IconsNumber of user-defined chars reserved for Icons (default: 0)

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
}

  • usblcd.txt
  • Last modified: 2020/07/17 18:33
  • (external edit)