0.4.3 -> 0.5 merging

This commit is contained in:
reenoo
2002-05-28 12:29:44 +00:00
parent 09d913ca26
commit 094be0cccc
22 changed files with 3616 additions and 727 deletions
+1
View File
@@ -0,0 +1 @@
EXTRA_DIST = hd44780.docbook lircin.docbook mtxorb.docbook ppttrouble.docbook
File diff suppressed because it is too large Load Diff
+172
View File
@@ -0,0 +1,172 @@
<sect1 id="lircin">
<title>The lircin Driver</title>
<para>
The lircin driver enables you to use any IR remote control
that works with LIRC to control the LCDproc server
(<application>LCDd</application>)
and/or clients that can handle input.
</para>
<para>
Of course you need a working LIRC setup. Refer to
<ulink url="http://www.lirc.org">http://www.lirc.org</ulink> for more
information on LIRC itself.
</para>
<sect2 id="lirc-install">
<title>Checking Your LIRC Setup</title>
<para>
Basically all you need is a running <application>lircd</application>.
And of course you have to start <application>lircd</application>
as root.
</para>
<para>
Also, make sure that the permission of <filename>/dev/lircd</filename>
are correct.
</para>
</sect2>
<sect2 id="lircin-configure">
<title>Build LCDd with the lircin Driver</title>
<para>
You need to add lircin to the --enable-drivers=... list.
</para>
<para>
Then simply run make.
</para>
</sect2>
<sect2 id="lircin-config">
<title>Configure LCDd to Use the lircin Driver</title>
<para>
First of all you need to activate the driver by adding a Driver=lircin line
to your <filename>LCDd.conf</filename>
</para>
<example>
<title><filename>LCDd.conf</filename>: Activate the lircin driver</title>
<programlisting>
Driver=mtxorb
Driver=lircin
</programlisting>
</example>
<para>
This activates the mtxorb driver as the output driver and the lirc driver
as the input driver.
</para>
<para>
Then you have to modify the [lircin] section of your
<filename>LCDd.conf</filename>.
</para>
<sect3 id="lircin-section">
<title><filename>LCDd.conf</filename>: The [lircin] Section</title>
<para>
The [lircin] section of the <filename>LCDd.conf</filename> contains the
settings for the lircin LCDproc driver.
</para>
<variablelist>
<varlistentry>
<term>lircrc=</term>
<listitem>
<para>
<anchor id=which-lircrc>Normally all LIRC clients scan the file <filename>~/.lircrc</filename>.
However, you might want to have a separate file to configure the
LCDproc lircin driver only.
</para>
<para>
This option enables you to specify the file you want the lircin
driver to scan.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>prog=</term>
<listitem>
<para>
All LIRC keys are assigned to a program using the prog=... option
in the <filename>~/.lircrc</filename> (or the file you have specified
with lircrc=...).
</para>
<para>
The prog=... line must be the same as in your <filename>~/.lircrc</filename>
(or the file you have specified with lircrc=...).
</para>
</listitem>
</varlistentry>
</variablelist>
</sect3>
</sect2>
<sect2 id="lircrc">
<title>Modify Your <filename>~/.lircrc</filename></title>
<para>
As mentioned above you can either modify the <filename>~/.lircrc</filename>
or use a separate file for the lircin LCDproc driver (See
<link linkend=which-lircrc>above</link> for details).
</para>
<para>
No matter which file you use, you have to add at least the following
lines to the file:
</para>
<example>
<title><filename>~/.lircrc</filename>: Specify the keys for the lircin driver</title>
<programlisting>
begin
prog = lcdd
button = 2
config = A
end
begin
prog = lcdd
button = 4
config = B
end
begin
prog = lcdd
button = 6
config = C
end
begin
prog = lcdd
button = 8
config = D
end
</programlisting>
</example>
<para>
Which buttons you specify here depends on your RC and your LIRC configuration.
Anyways, config=A/B/C/D is neccessary to control the server menu of LCDd.
Of course you can define other keys. Those keys will not be handled by the
server but sent to a client. Refer to the documentation of the client you want
to use, to find out which keys are neccessary for that client.
</para>
</sect2>
</sect1>
+221
View File
@@ -0,0 +1,221 @@
<sect1 id="mtxorb">
<title>The Matrix Orbital Driver (MtxOrb)</title>
<para>
This section covers the installation process for the Matrix Orbital LCD
module intended for use with LCDproc.
</para>
<para>
We will examine the installation process of the hardware in
small steps, as it is vitally important to pay close attention to detail during
hardware installation to avoid damaging equipment.
</para>
<sect2>
<title>Matrix Orbital LCD Modules</title>
<para>
LCDproc was born out of original tinkering by William Ferrell with
one of these LCD modules. Their ease of installation and use (as well
as the amazing amount of patience demonstrated by the folks at
Matrix Orbital whilst William figured things out) meant one less thing
to worry about during the early stages of LCDproc's life.
</para>
<para>
These 20x4 alphanumeric modules are connected via standard DB-9 cabling and
connectors. They draw either 5V or 12V, depending on the module purchased,
and are attached with a standard floppy cable connector (with a slightly
modified wire configuration).
</para>
<para>
Once connected, using them is a breeze. They can operate at any number of
different baud rates and serial configurations, but normally they run at
19,200 baud, 8-N-1, making them quite quick. Sending ASCII to the module
will make it simply display that text at its current cursor position. The
module has a built-in BIOS that recognizes commands (sent by transmitting a
single-byte "marker" signifying that a command is on the way, followed by
the single-byte command character itself along with any parameters, if needed)
allowing the programmer to clear the screen, position the cursor anywhere,
define custom characters (up to 8 at a time), draw bar graphs and large numbers,
change the LCD's contrast, and so on.
</para>
<para>
The BIOS included also implements line-wrapping (i.e. writing past the
twentieth character on the first row will automatically move the cursor
to the first character on the second row), and screen scrolling (i.e.
writing past the twentieth character on the fourth row causes the whole
screen to scroll up one row, clearing the fourth line and positioning the
cursor at the first character on that line).
</para>
<para>
These modules are fast. Using the auto-line-wrap feature and disabling
the auto-scrolling feature, the screen can be updated thirty times per
second if *every* character on the screen is changed. If updating less
than the whole screen, the LCD can update faster than can be seen by
the human eye. This, of course, more than meets LCDproc's needs.
</para>
</sect2>
<sect2>
<title>Matrix Orbital Hardware Installation</title>
<para>
Regardless of what specific type of hardware you intend to use with LCDproc,
installation is usually straightforward, and requires only a few steps. Regardless,
you must use caution while working inside your computer system or with any hardware
attachments.
</para>
<warning>
<para>
Installing new hardware inside a computer system can be dangerous to both
system components and the installer. Use caution whenever adding a component
to the inside of your system, altering a power cable, or physically mounting
a device inside a computer system.
</para>
<para>
When installing hardware inside a computer, make sure it's turned off and that
its power is disconnected. This is especially important when making changes to
power cables (as some LCD modules require).
</para>
</warning>
<sect3>
<title>Matrix Orbital LCD/VFD Module Installation</title>
<para>
The LCD and VFD modules from Matrix Orbital are relatively straightforward
to install. With a small, regular (flat-head) screwdriver, a spare floppy drive
power cable, and a bit of luck, installation will take less than an hour.
</para>
<para>
These installation instructions assume that you are installing the module into
a PC or PC-style system (one with AT- or ATX-compliant power cabling) and that
you have some idea of where you intend to permanently mount the module. For
mounting ideas and tips, refer to the section "Mounting" below.
</para>
<Tip>
<Title>Before you start</title>
<para>
Your Matrix Orbital LCD or VFD module should be clearly marked with an
indication of the module's power requirements. It should be either a 5 volt
or 12 volt unit. You should have this information available before proceeding.
</para>
</tip>
<sect4>
<title>Power Cable Modification</title>
<para>
The first step in installing the module is making the necessary modifications
to a floppy drive power cable in order to provide power to the module. The
modifications must be made based on the module's power requirements -- either
5V or 12V -- depending on which module you purchased.
</para>
<para>
A standard floppy drive power cable has a smaller connection than a "normal"
PC power connector. However, like a "normal" power connector, it has four
wires: one yellow, one red, and two black. The red wire provides +5V power, and
is "hot" or live when the system is powered up. The yellow wire provides +12V
power, and is also hot when the system is powered up. Both black wires are
ground.
[TODO: INCLUDE A FIGURE HERE SHOWING A "STANDARD" FLOPPY CONNECTOR]
</para>
<para>
One of the hot wires and one of the black wires will not be needed for your
module's power connection; they will be completely removed when the power cable
modification is complete.
</para>
<warning>
<para>
Do NOT make this modification to a power cable attached to a running
system! Electrocution resulting in personal injury and/or damage to the
system can result.
</para>
</warning>
<para>
Using a regular screwdriver, press down the small metal locking flap of one
of the two black wires on the small end of the cable, and pull the black wire
from the connector. Using a pair of needle-nose pliers, squeeze the other end
of the same black wire, and pull it out of the large end of the cable. This
black wire can be set aside; it will not be used for the module's power
connection. Either wire can be safely removed; you may safely remove either
wire.
[TODO: INCLUDE A FIGURE HERE SHOWING THIS PROCESS]
</para>
<para>
Next, using the same procedure, remove the unneeded hot wire. If your module
is 5V, you do not need the yellow (+12V) wire. Conversely, if your module is
12V, you do not need the red (+5V) wire. The removed wire can be set aside;
it will not be used for the module's power connection.
[TODO: INCLUDE A FIGURE HERE]
</para>
<para>
The floppy power connector should now have only two wires attached to it.
Leave the larger end alone from now on; these connections are correct (the
larger end connects to your system's power mains). Move the two remaining wires
to the outside connectors on the small end of the cable. Orientation does not
particularly matter here; the connector will fit on the module's receptacle
in either orientation.
[TODO: A FIGURE HERE]
</para>
<para>
You should now have a properly modified power connector. When physically
attaching this connector to the module, the black (ground) lead should be
connected to the pin labelled GND, while the colored (+5V/+12V) lead should
be connected to the pin labelled +5V/+12V.
</para>
<para>
Test the power connection before connecting the data line or mounting the
module. Connect the module to the power connector, and the connector to your
system's power mains. Turn the system on.
</para>
<caution>
<para>
If the module does not immediately display its initial BIOS screen and light
up its backlight (or light up the screen if a VFD module is being used),
<EMPHASIS>immediately</EMPHASIS> power down the system, disconnect the module
and connector, and double-check the modification before trying again. Do NOT
leave the system on if the module does not immediately respond; module or
system damage could result.
</para>
</caution>
<para>
When the LCD powers up and displays its initial BIOS screen, you've gotten the
power connection wired properly and can now properly mount the module and make
its final connections. Matrix Orbital Corporation sells a PC bay insert mount
for the 20x4 and 20x2 modules (LCDproc, however, only supports the 20x4 at
present). The inserts provide an easy means of mounting the LCD modules inside
a PC using one (for the 20x2) or two (for the 20x4) 5 1/4" bays.
</para>
<note>
<para>
Describing how to physically mount the module in a PC case is beyond the
scope of this document; LCDproc's website contains more detailed mounting
information and examples.
</para>
</note>
</sect4>
<sect4>
<title>Serial Connection</title>
<para>
The LCD module uses a standard DB9 serial connector. You can attach the module
to your system using a direct cable to the motherboard, or by removing one of
your system's serial ports from the back of the case, then connecting it to a
standard serial cable to the module.
</para>
<para>
While connecting the serial cable to the module, be sure to configure the
module's serial interface settings. Typically, setting the module to its fastest
setting (19,200 baud, 8-N-1) is recommended. The speed settings can
be configured from the config file <filename>/etc/LCDd.conf</filename>. If not specified in the config file,
the Matrix Orbital module driver in LCDproc default to use these settings.
</para>
</sect4>
</sect3>
</sect2>
<sect2 id="mtxorb-copy">
<title>Copyright</title>
<para>
This section was originally part of the lcdproc.sgml file by William W. Ferrell <email>wwf@splatwerks.org</email>
</para>
<para>
Slightly modified in order to include it in this document March 2002, Rene Wagner <email>reenoo@gmx.de</email>
</para>
</sect2>
</sect1>
@@ -0,0 +1,187 @@
<sect1 id="ppttrouble">
<title>Parallel Port Troubleshooting</title>
<para>
Unfortunately attaching an LCD module to a parallel port is not
trivial.
</para>
<para>
In most cases it requires soldering abilities and basic knowledge
of electronics.
</para>
<para>
The following hints might be helpful:
</para>
<sect2 id="ppt-check-wiring">
<title>Check The Wiring</title>
<para>
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.
</para>
</sect2>
<sect2 id="ppt-power">
<title>Power Source Unregulated / Noisy</title>
<para>
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.
</para>
</sect2>
<sect2 id="ppt-GND-lift">
<title>Ground Lift</title>
<para>
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
VDD pins of the display.
</para>
</sect2>
<sect2 id="ppt-latchup">
<title>Latchup</title>
<para>
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.
</para>
</sect2>
<sect2 id="ppt-contrast">
<title>Contrast</title>
<para>
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.
</para>
<note>
<title>Beware</title>
<para>
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.
</para>
</note>
</sect2>
<sect2 id="ppt-voltage">
<title>Parallel Port Voltage</title>
<para>
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.
</para>
</sect2>
<sect2 id="ppt-signal-rise-timing">
<title>Enable Signal Rise Time</title>
<para>
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.
</para>
<para>
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.
</para>
<note>
<para>
The rise time of a digital output can (usually) not be
altered by Software.
</para>
</note>
</sect2>
<sect2 id="ppt-emi">
<title>EMI</title>
<para>
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.
</para>
</sect2>
<sect2 id="ppt-black-lines">
<title>One or Two Black Lines</title>
<para>
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 <application>LCDd</application> software. But if the
black line will not disappear
although the wiring is working, the controller on the display
may be defective.
</para>
</sect2>
<sect2 id="ppt-too-fast">
<title>Software Too Fast</title>
<para>
If you have a super GHz computer it may happen that the signal
timing generated by <application>LCDd</application> 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.
</para>
</sect2>
<sect2 id="ppt-backlight">
<title>LED Backlight</title>
<para>
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.
</para>
</sect2>
<sect2 id="ppt-hd44780-compatible">
<title>HD44780 Compatible</title>
<para>
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'.
</para>
<para>
To name a few: KS 0066, KS 0070, KS 0076, LC 7985, NT 3881,
SED 1278, ST 7066 ...
</para>
</sect2>
<sect2 id="ppt-misc">
<title>Miscellania</title>
<para>
This text has originally been taken from a <ulink url="http://lists.omnipotent.net/pipermail/lcdproc/2002-May/005832.html">message</ulink> by
Robin Adams <email>robin@adams-online.de</email>
</para>
<para>
Converted to docbook and slightly modified May 2002, Rene Wagner <email>reenoo@gmx.de</email>
</para>
</sect2>
</sect1>