Girder plug-in for LCD/VFD displays

Version 2.8.  MMcM 06/03

Files

These are the files contained in this archive and what purpose they serve.

Getting started

Use

This plug-in displays bits of text on chosen area of the display. The area is specified by the starting row and column and the number of characters. The text can come from several places:

A number of lines of the display can be filled at once. This does not give as fine control over placement or width. It is most suitable when a number of variables are being expanded in the text.

Several special actions that are also possible:

Hardware specific capabilities

LUA functions

The following functions are defined in LUA so that the display can be controlled directly from a script.

Registry

Settings for the plug-in are stored in the registry key HKEY_LOCAL_MACHINE\Software\Girder3\SoftPlugins\LCD. Most, but not all, are controlled through the Settings dialog. Here is a complete reference to the values used.

Library The name of the DLL containing the device specific interface.
Device The name of the specific device being used; often the display model number.
Cols The number of columns.
Rows The number of rows.
CharacterMap The device code to use for each character. Many displays put characters like ¥ where \ and ~ should be. Most displays have accented European characters at non-standard indices. Some displays have variants of g, j, p, q, and y with proper descenders at different codes; since the underline cursor is not used, these can yield a superior display.
MarqueePixelWidth The number of pixels to shift a scrolling display each time. By convention, 6 pixels represents a single character when computing the frequency of the simulated marquee, which cannot scroll by a partial character. The default is 6.
MarqueeSpeed The interval, in milliseconds, between shifts of a scrolling display. When simulating a marquee, both the speed and pixel width are taken into account when computing the frequency of redrawing. The default is 1000, that is, one second.
Contrast The contrast setting for an LCD. A number between 0 and 100. The default is 50.
Brightness The brightness setting for a VFD, or the backlight brightness for a backlit LCD. A number between 0 and 100. The default is 50.
EnableInput Translate keypad button presses into Girder events.
Port The name of the serial port device, such as COM1.
PortSpeed The speed of the serial port, such as 9600.
PortRTS Whether RTS is turned on for the serial line. The default is on.
PortDTR Whether DTR is turned on for the serial line. The default is on.
MarqueeSimulated For LCDriver, whether a marquee is simulated in software. Necessary when using LCDriver with a display other than Crystalfontz.
ParallelStrobeDelay The interval, in milliseconds, to wait for the HD44780 to notice a signal transition. If you have a slow HD44780, try increasing this number.
ParallelCommandDelay The interval, in milliseconds, to wait for the HD44780 to process a command or shift the data register. If you have a slow HD44780, try increasing this number.
SimLCDFontSize The font size in the Simulated LCD window. The default is 10.
SimLCDFont The font face name in the Simulated LCD window. The default is Courier New.
SimLCDFontStyle The font style in the Simulated LCD window. The default is Bold.
SimLCDTextColor The text (foreground) color in the Simulated LCD window. A single RGB value. The default is black.
SimLCDBackColor The background color in the Simulated LCD window. A single RGB value. The default is a greenish yellow.
SimLCDXPos The X position of the Simulated LCD window. The default is the last position.
SimLCDYPos The Y position of the Simulated LCD window. The default is the last position.
SimLCDAlwaysOnTop Whether the Simulated LCD window stays on top of other windows. The default is on.
DebounceTime The debounce time for a keypad in milliseconds. The default for Matrix Orbital is 52ms.

Terms

This plug-in is released as open source under The MIT License. You use it at your own risk. See license.txt for details.

Contact

To report problems or make suggestions, post a message to the Girder forum, rather than sending email directly.