OK here is brief description what I did, I will add to it if I can get buttons working: This describes how to get USB2LCD+ running on NSLU2 Linksys Network Storage with Linux kernel 2.4.22-xfs (it may work on other distributions as well.). More info on NSLU2 and Linux can be found here http://www.nslu2-linux.org run ipkg to determine if usbserial is installed # ipkg search '*usbserial*' kernel-module-usbserial - 2.4.22.l2.3r63-r21 - /lib/modules/2.4.22-xfs/kernel/drivers/usb/serial/usbserial.o if it is not, run ipkg to install it #ipkg install kernel-module-usbserial plug in the display run lsusb to determine vendor and product number # lsusb Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 002 Device 009: ID 5bcd:5bcd Bus 001 Device 001: ID 0000:0000 Bus 001 Device 002: ID 13fe:3423 Kingston Technology Company Inc. Bus 001 Device 003: ID 0bc2:3300 Seagate RSS LLC in this case, Vendor ID is 5bcd and Product ID is 5bcd (note: USB2LCD+ is always 5bcd / 5bcd unless the firmware source code is changed) then manually bind the driver #insmod usbserial vendor=0x5bcd product=0x5bcd before connecting the USB2LCD+ display if usbserial module was loaded before, it will need to be removed first using #rmmod usbserial then run dmesg to see which port was assigned to your display #dmesg ... ... ... hub.c: new USB device 00:01.0-1, assigned address 13 Device descriptor:8 bytes received. Device descriptor:18 bytes received. usbserial.c: Generic converter detected usbserial.c: Generic device with no bulk out, not allowed. usbserial.c: Generic converter detected usbserial.c: Generic converter now attached to ttyUSB0 (or usb/tts/0 for devfs) ... ... ... I used lcd4linux to drive the display, here is the Display section of lcd4linux.conf file that works with my display ... ... Display SerialLCD { Driver 'MatrixOrbital' Model 'LK204-25' Port '/dev/ttyUSB0' Speed '9600' Contrast '160' Icons '0' } ... ... That's it! Roman G.