Wouldn’t it be cool to have an LCD screen that displayed bits of usefull information to you all the time without having to go searching for it or turning on your monitor? I thought so too, so I made one.
Turns out there are loads of resources out on the net for making one of these, out of an inexpensive module that is based on a common controller: Hitachi HD44780 IC.
This controller is pretty simple, and it operates in 4bit or 8bit mode so it is very easy to find an interface for it. I used a parallel port because you can write a user land program in linux that has access to do hardware read/writes to the port.
Soldering irons are our friends
To be honest I have seen some way better guides on the net for the wire-up process, but here are a few pics and some short instructions.
Once you get your module you should take a trip to the electronics store to get some headers, plugs, and whatever other goodies catch your eye. For the LCD module, I wanted to be able to detach the cable if necessary so I soldered in this 90 degree angle 16pin header.
Dig up an old printer cable and chop off the end that connects to the printer. Then strip off about 3.25″ of the shielding.
Get a 16pin plug that fits on that .100″ pin header. Crimping those tinny wire ends can be tricky but a small pair of needle nose pliers made quick work of it. The red and white wires are for an external 5v power supply.
I used two pins from a header and soldered the wires to it and cleaned it up with a bit of shrink tubing.
Hello, world! LCD style
Debugging
Ok, you built the LCD screen interface cable from some guide and hooked it up and it doesn’t work. If this happens… something like this can come in handy to squash those bugs.
This prototype board has 8 LEDs connected to the data lines of the LCD, and 3 other LEDs connected to the command registers.