wiki:MatrixOrbital

MatrixOrbital Logo

This driver supports the serial and USB interface alphanumeric display modules by Matrix Orbital Corporation and some SureElectronics USB LCD boards.

LCD2041

The USB versions simply use an USB-to-serial converter (probably pl2303), and use the same protocol as on the serial port. So you just have to change the Port entry in the config file to get them to work.

The driver fully supports the text, bar and icon widgets.

All the cool features of the newer displays (GPO's, PWM outputs, fan speed measurement) are supported by the driver.


Display Section

Display <name> {
    Driver    'MatrixOrbital'
    Model     <string>
    Port      <string>
    Speed     <number>
    Contrast  <number>
    Backlight <number>
    Icons     <number>
}

Parameters

Driver'MatrixOrbital'
Modelsee below
Portserial device the display is attached to (e.g.'/dev/ttyS2')
Speedthe baud rate from the display must match this value. Possible values are 1200, 2400, 9600 and 19200
Contrastinitial contrast value, 0..255 (default is 160)
Backlightinitial backlight state, 0..255 (note: this means 'backlight on for n minutes)
IconsNumber of user-defined chars reserved for Icons (default: 0)

Models

The driver supports various different MatrixOrbital displays, which can be selected with the Model parameter:

ModelSizeProtocol
LCD08212x81
LCD20212x201
LCD16414x161
LCD20414x201
LCD40212x401
LCD40414x401
LK202-252x202
LK204-254x202
LK404-554x402
VFD20212x201
VFD20414x201
VFD40212x401
VK202-252x201
VK204-254x201
GLC12232???1
GLC24064???1
GLK24064-25240x641
GLK12232-25122x321
LK404-AT4x402
VFD16212x161
LK402-122x402
LK162-122x162
LK204-25PC4x202
LK202-24-USB2x202
LK204-24-USB4x202
DE-LD0112x163
DE-LD0214x203

The models differ (apart from the protocol) in the size only.

There's an old Protocol (1) an a newer one (2). All current models use Protocol 2, which supports Display autodetection. So if you have a newer display, you can try to omit the 'Model' parameter, and see ic LCD4Linux auto-detects your display.

Sure electronics USB LCD boards like DE-LD011 (16x2) and DE-LD021 (20x4), which emulates MatrixOrbital protocol, uses protocol 3. Also, You have to set Speed as 9600 in this case.


Plugins

The driver provides the following functions (depends on the display model):

LCD::contrast()return current contrast setting
LCD::contrast(n)set contrast to n (0..255)
LCD::backlight()return current backlight setting
LCD::backlight(n)set set backlight off (0) or on for n minutes (1..255)
LCD::GPO(n)return value of GPO number n (1..6)
LCD::GPO(n, v)set GPO n(1..6) to value v (0..255) see note below!
LCD::GPI(n)return value of RPM input number n (1..6)

Note: Some MatrixOrbital Displays are able to control the speed of one or more fans, and read the speed back. This has been implemented using the GPIO driver. As these displays have normal GPO's, too, and the number of fans differs from model to model, the normal GPO's are turned on with a value of 255 (and not 1, as you'd probably expect), and there's sort of a hysteresis in turning it off again....

Example for a LK-202: (three fan outputs, three normal GPO's)

LCD::GPI(1)return speed of fan 1
LCD::GPI(3)return speed of fan 3
LCD::GPI(4)returns always zero (only three fans supported)

fan PWM control:

LCD_GPO(1,0)turns fan 1 off
LCD_GPO(1,128)sets fan 1 to 50%
LCD_GPO(1,255)sets fan 1 to 100%

normal GPO control:

LCD_GPO(4,0)turns GPO 4 off
LCD_GPO(4,128)GPO 4 is still off
LCD_GPO(4,254)GPO 4 is still off
LCD_GPO(4,255)turns GPO 4 on
LCD_GPO(4,254)GPO 4 is still on!
LCD_GPO(4,1)GPO 4 is still on!
LCD_GPO(4,0)now turns GPO 4 off

Keypad

at the moment (lcd4linux-0.10.0) there is no support for keypads.


Last modified 8 years ago Last modified on 01/05/11 04:39:15

Attachments (2)

Download all attachments as: .zip