The HD44780 Driver
-There are several ways of wiring up the HD44780 devices. Your choice
-will probably be governed largely by your ability to wire up each one
-and/or a desire to use the device with other programs.
+The HD44780 has become the de-facto standard of alphanumeric character displays.
+Although the original Hitachi HD44780 is long out of production, its command
+set has survived in a variety of (fully or nearly) compatible LCD, VFD and
+even OLED displays sold by a broad range of manufacturers all over the world.
+To name ony a few: KS0066, KS0070, KS0076, LC7985, NT3881, SED1278, ST7066 ...
-The LCDproc HD44780 driver supports the following connections on a
-parallel port:
+The command set of these displays, which sometimes are advertised as being
+"industry standards compatible", is thus the workhorse of controllers for
+displays ranging from 8x1 to 20x4 or 40x2 characters.
+There are even displays with larger dimensions sporting two controllers,
+one for each half of the display.
+
+
+
+The HD44780 driver supports various ways of connecting HD44780 devices
+to your system.
+Each of these different ways is called a connection type of the driver.
+
+
+
+On a parallel port, probably the first interface type HD44780 devices were
+historically connected to, the driver supports the connection types:
- 4bit
- 8bit (winamp style)
- extended 8bit (LCD + LED bargraph)
- serial LPT
+
+ 4bit:
+ 4bit Wiring
+
+
+
+ 8bit:
+ 8bit Wiring ("lcdtime")
+
+
+
+ winamp:
+ 8bit Wiring "winamp" Style
+
+
+
+ serialLpt:
+ Serial LPT Wiring
+
-It also supports the following connections:
+For serial RS-232 ports you can choose among these connection types:
- A PIC-an-LCD or LCD serializer connected to a serial port
- A I2C port expander connected to an I2C port
- USB connection via a FTDI FT2232D chip in bitbang mode
+
+ picanlcd:
+ PIC-an-LCD serial device
+
+
+
+ lcdserializer:
+ LCD serializer
+
+
+
+ los-panel:
+ LCD on Serial panel device ()
+
+
+
+ vdr-lcd:
+ VDR LCD serial device
+
+
+
+ vdr-wakeup:
+ VDR-Wakeup module
+
+
+In recent years, with with parallel ports and serial ports being declared legacy
+and on the demise on modern computers, the USB connection types get
+more important. Here are the USB connection types the HD44780 driver supports:
+
+
+
+
+ pertelian:
+ Pertelian X2040 LCD display ()
+
+
+
+ bwctusb:
+ BWCT USB LCD module ()
+
+
+
+ lcd2usb:
+ Tim Harbaum's LCD2USB ()
+
+
+
+ lis2:
+ LIS2 from VLSystem ()
+
+
+
+ mplay:
+ MPlay Blast from VLSystem ()
+
+
+
+ ftdi:
+ Display connected to a dual channel FTDI 2232D USB chip
+
+
+
+
+Last but not least, for special purposes, there are even more connection types:
+
+
+
+
+ i2c:
+ LCD driven by PCF8574(A)/PCA9554(A) connected via I2C
+
+
+
+
The driver also lets you use multiple displays as a single virtual
display. For example, a 4, 2 and 1 line display can be used to form a
@@ -106,7 +208,7 @@ There are several ways to get 5V:
black is GND).
- Get it from the VCC pin of an USB connector.
+ Get it from the VCC and GND pins of an USB connector.
Get it from a joystick port (pin 1 and 9 are 5V, 4, 5 and 12 are GND).
@@ -467,7 +569,7 @@ The BC327 transistor has the following connections:
4bit
-This is originally based on "lcdtext" (by Matthias Prinke).
+This wiring is originally based on "lcdtext" (by Matthias Prinke).
@@ -1999,7 +2101,7 @@ Refer to burning section in
-BWCT USB device "bwctusb"
+BWCT USB LCD module "bwctusb"
The BWCT USB LCD module is also supported. It is not connected to an LPT port
@@ -2307,22 +2409,24 @@ This can be done by specifying or by inclu
+
4bit
- HD44780 4bit Wiring (default)
+ 4bit Wiring to parallel port(default)8bit
- HD44780 8bit Wiring ("lcdtime")
+ 8bit Wiring to parallel port ("lcdtime")winamp
- HD44780 8bit Wiring "winamp" Style
+ 8bit Wiring "winamp" Style to parallel portserialLpt
- HD44780 Serial LPT Wiring
+ Serial LPT Wiring
+
picanlcdPIC-an-LCD serial device "picanlcd"
@@ -2343,6 +2447,7 @@ This can be done by specifying or by inclu
vdr-wakeupVDR-Wakeup module "vdr-wakeup"
+
pertelianPertelian X2040 LCD display ()
@@ -2363,14 +2468,15 @@ This can be done by specifying or by inclu
mplayMPlay Blast from VLSystem ()
-
- i2c
- LCD driven by PCF8574(A)/PCA9554(A) connected via I2C
- ftdiDisplay connected to a dual channel FTDI 2232D USB chip
+
+
+ i2c
+ LCD driven by PCF8574(A)/PCA9554(A) connected via I2C
+
diff --git a/docs/lcdproc-user/drivers/ppttrouble.docbook b/docs/lcdproc-user/drivers/ppttrouble.docbook
index 65b2307..f1543d5 100644
--- a/docs/lcdproc-user/drivers/ppttrouble.docbook
+++ b/docs/lcdproc-user/drivers/ppttrouble.docbook
@@ -12,167 +12,183 @@ of electronics.
The following hints might be helpful:
+
Check The Wiring
+
-Wiring errors can easily be made. If you are unexperienced
-with the soldering iron better have someone solder it for
-you. Display modules are sensitive to electro static
-discharges, so touch an earthed surface (computer case,
-water pipes...) before you handle these.
+Wiring errors can easily be made.
+If you are unexperienced with the soldering iron better have someone solder
+it for you.
+Display modules are sensitive to electrostatic discharges, so touch an
+earthed surface (computer case, water pipes...) before you handle these.
+
Power Source Unregulated / Noisy
+
-Make sure your power supply delivers steady 5 Volts with-
-out noise or interruptions. The bare wall plug in trans-
-former is not suitable, though you can make it stabilized
-by adding an 7805 and a few capacitors.
-Some noise induced in the supply lines my be tricky to
-track, even if you have an oscilloscope.
+Make sure your power supply delivers steady 5 Volts without noise or
+interruptions.
+The bare wall plug-in transformer is often not suitable, though you can
+make it stabilized by adding an 7805 and a few capacitors.
+Some noise induced in the supply lines my be tricky to track, even if
+you have an oscilloscope.
+
Ground Lift
+
-The power supply wires and especially the GND wires should
-be a little thicker than the other wires. If GND is not
-thick enough (or not existent, see 1) the resistance of the
+The power supply wires and especially the GND wires should be a little thicker
+than the other wires.
+If GND is not thick enough (or not existent, see 1) the resistance of the
wire may cause differing GND potentials in the circuit.
-This may lead to strange display behaviour. It may also be
-wise to solder a 100nF capacitor directly to the GND and
-VCC pins of the display.
+This may lead to strange display behaviour. It may also be wise to solder
+a 100nF capacitor directly to the GND and VCC pins
+of the display.
+
Latchup
+
-Never let the supply voltage get much below the io signal
-voltage. It may lead to a latchup condition which will
-destroy the controller chip on the display.
+Never let the supply voltage get much below the io signal voltage.
+It may lead to a latchup condition which will destroy the controller
+chip on the display.
+
Contrast
+
-If you don't see anything on your display it may be that
-your contrast voltage is set wrong. Turn your contrast
-potentiometer all the way to the end connected to GND.
+If you don't see anything on your display it may be that your contrast voltage
+is set wrong. Turn your contrast potentiometer all the way to the end connected
+to GND.
Contrast is highest then.
+
Beware
-The module you got so ultra cheap may be an
-enhanced temperature model which needs a negative
-contrast voltage for sufficient contrast - see chapter
+The module you got so ultra cheap may be an enhanced temperature model which
+needs a negative contrast voltage for sufficient contrast - see chapter
99 on how to make negative voltage.
+
Parallel Port Voltage
+
-Many modern mainboards and especially notebooks will not
-nearly output 5V for a logic H as the older parallel ports
-did, because the operating voltage of computers is lower than
-5V these days. I have measured voltages between 2.5V and 4V
-for logic H, which is barely within specification of the
-HD44780. If you account RCL of your cable, this may not be
-enough and can cause unreliable operation.
+Many modern mainboards and especially notebooks will not nearly output 5V for
+a logic H as the older parallel ports did, because the operating voltage of
+computers is lower than 5V these days.
+I have measured voltages between 2.5V and 4V for logic H, which is barely
+within specification of the HD44780.
+If you account RCL of your cable, this may not be enough and can cause
+unreliable operation.
+
Enable Signal Rise Time
+
-If you ever read the HD44780 datasheet you will notice that
-somewhere in the 'signal timing' table is written: 'Enable
-Signal Rise Time max. 20nS'. That means the Voltage on the
-HD44780 pin called 'Enable' has to rise from 0 Volts to 5
-Volts within 20 Nanoseconds and the other way round. They
-should better print that in big fat red letters, because
-most HD44780s are really picky about the enable signal rise
-time.
+If you ever read the HD44780 datasheet you will notice that somewhere in the
+'signal timing' table is written: 'Enable Signal Rise Time max. 20nS'.
+That means the Voltage on the HD44780 pin called 'Enable' has to rise
+from 0 Volts to 5 Volts within 20 Nanoseconds and the other way round.
+They should better print that in big fat red letters, because most HD44780s
+are really picky about the enable signal rise time.
+
-That is a Problem: If you count together the bad driving
-characteristics of the parallel port combined with the
-capacitance of flat ribbon cable you may easily get an
-order of magnitude slower rise time.
-Therefore you should only use really short cable ( shorter
-than 50cm) for connecting the display to the parallel port.
-It may also be useful to use pull-up resistors on the display
-module or a schmitt-trigger.
+That is a Problem: If you count together the bad driving characteristics
+of the parallel port combined with the capacitance of flat ribbon cable
+you may easily get an order of magnitude slower rise time.
+Therefore you should only use really short cable (shorter than 50cm)
+for connecting the display to the parallel port.
+It may also be useful to use pull-up resistors on the display module
+or a schmitt-trigger.
+
-The rise time of a digital output can (usually) not be
-altered by Software.
+The rise time of a digital output can (usually) not be altered by Software.
+
EMI
+
-The cable from the parallel port to the display may
-be sensible to electromagnetic interference and may emit
-electromagnetic radiation. If you place your cellphone near
-the cable, you may get unexpected display readings, on
-the other hand your house neighbour may not be able to listen
-to his/her favourite radio station any more - so better use
-shielded cable and put the display in a metallic case, perhaps
-a computer case.
+The cable from the parallel port to the display may be sensible to
+electromagnetic interference and may emit electromagnetic radiation.
+If you place your cellphone near the cable, you may get unexpected display
+readings, on the other hand your house neighbour may not be able to listen
+to his/her favourite radio station any more - so better use shielded cable
+and put the display in a metallic case, perhaps a computer case.
+
One or Two Black Lines
+
-If you see one or two black lines on the display it means
-nothing more than that the display is powered and contrast
-voltage is present. If one or two black lines appear the
-controller has not been reset properly by the on chip power
-on reset generator. No need to worry - it will be reset by
-the LCDd software. But if the
-black line will not disappear
-although the wiring is working, the controller on the display
-may be defective.
+If you see one or two black lines on the display it means nothing more than
+that the display is powered and contrast voltage is present.
+If one or two black lines appear the controller has not been reset properly
+by the on chip power on reset generator. No need to worry - it will be reset by
+the LCDd software.
+But if the black line will not disappear although the wiring is working,
+the controller on the display may be defective.
+
Software Too Fast
+
-If you have a super GHz computer it may happen that the signal
-timing generated by LCDd is too fast.
-Adjust DELAYMULT in the
-source file to a bigger value. Parallel port wirings usually
-don't permit to read back the busy flag of the controller chip,
-so timing must be adjust so that the controller never is busy.
+If you have a super GHz computer it may happen that the signal timing generated
+by LCDd is too fast.
+Adjust DELAYMULT in the source file to a bigger value.
+Parallel port wirings usually don't permit to read back the busy flag of the
+controller chip, so timing must be adjust so that the controller never is busy.
+
LED Backlight
+
-Check whether you need a resistor for your LED Backlight and
-which value it should have. If you forget the required resistor
-the backlighting LEDs might become hot and draw excessive
-current.
+Check whether you need a resistor for your LED Backlight and which value
+it should have.
+If you forget the required resistor the backlighting LEDs might become hot
+and draw excessive current.
+
HD44780 Compatible
+
-The original HD44780 controller that we advertise to support
-has become the industry standard for alphanumeric character
-displays. The original HD44780 is out of production. It has
-many successors from many manufactures, which sometimes won't
-tell you that their chips are 'compatible'.
+The original HD44780 controller that we advertise to support has become the
+industry standard for alphanumeric character displays.
+The original HD44780 is out of production. It has many successors from many
+manufactures, which sometimes won't tell you that their chips are 'compatible'.
-To name a few: KS 0066, KS 0070, KS 0076, LC 7985, NT 3881,
-SED 1278, ST 7066 ...
+To name a few: KS0066, KS0070, KS0076, LC7985, NT3881, SED1278, ST7066 ...
+
Miscellania