mirror of
https://github.com/netfun2000/lcd4linux.git
synced 2026-02-27 09:44:34 +08:00
HD44780 busy flag checking improved: fall back to busy-waiting if too many errors occur git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@491 3ae390bd-cb1e-0410-b409-cd5a39f66f1f
682 lines
12 KiB
Plaintext
682 lines
12 KiB
Plaintext
Display LK204 {
|
|
Driver 'MatrixOrbital'
|
|
Model 'LK204-24-USB'
|
|
Port '/dev/usb/tts/0'
|
|
# Port '/dev/tts/0'
|
|
Speed 19200
|
|
Contrast 256/2
|
|
}
|
|
|
|
|
|
Display MI240 {
|
|
Driver 'MilfordInstruments'
|
|
Model 'MI240'
|
|
Port '/dev/tts/0'
|
|
Speed 19200
|
|
}
|
|
|
|
|
|
Display CW12232 {
|
|
Driver 'Cwlinux'
|
|
Model 'CW12232'
|
|
Port '/dev/usb/tts/0'
|
|
Speed 19200
|
|
Brightness 2
|
|
Icons 1
|
|
}
|
|
|
|
|
|
Display CF631 {
|
|
Driver 'Crystalfontz'
|
|
Model '631'
|
|
Port '/dev/tts/USB0'
|
|
Speed 115200
|
|
Contrast 95
|
|
Backlight 100
|
|
Icons 1
|
|
}
|
|
|
|
Display CF632 {
|
|
Icons 7
|
|
Driver 'Crystalfontz'
|
|
Model '632'
|
|
Port '/dev/tts/0'
|
|
Speed 19200
|
|
}
|
|
|
|
Display CF633 {
|
|
Icons 4
|
|
Driver 'Crystalfontz'
|
|
Model '633'
|
|
Port '/dev/tts/0'
|
|
Speed 19200
|
|
Contrast 16
|
|
Backlight 50
|
|
}
|
|
|
|
Display Curses {
|
|
Driver 'Curses'
|
|
Size '20x6'
|
|
}
|
|
|
|
|
|
Display HD44780-20x4 {
|
|
Driver 'HD44780'
|
|
Port '/dev/parports/0'
|
|
# Port '0x378'
|
|
Bits '8'
|
|
Size '20x4'
|
|
asc255bug 0
|
|
Icons 1
|
|
Wire {
|
|
RW 'GND'
|
|
RS 'AUTOFD'
|
|
ENABLE 'STROBE'
|
|
GPO 'INIT'
|
|
}
|
|
}
|
|
|
|
|
|
Display SC1602D {
|
|
Driver 'HD44780'
|
|
Port '/dev/parports/0'
|
|
Bits '8'
|
|
Size '16x2'
|
|
asc255bug 0
|
|
Icons 1
|
|
Wire {
|
|
RW 'GND'
|
|
RS 'AUTOFD'
|
|
ENABLE 'STROBE'
|
|
GPO 'INIT'
|
|
}
|
|
}
|
|
|
|
|
|
Display LCM-162 {
|
|
Driver 'HD44780'
|
|
Model 'LCM-162'
|
|
# Bus 'parport'
|
|
Port '/dev/parports/0'
|
|
Size '16x2'
|
|
UseBusy 1
|
|
asc255bug 0
|
|
Icons 1
|
|
}
|
|
|
|
|
|
Display M50530-24x8 {
|
|
Driver 'M50530'
|
|
Port '/dev/parports/0'
|
|
# Port '0x378'
|
|
Size '24x8'
|
|
Wire.EX 'STROBE'
|
|
Wire.IOC1 'SELECT'
|
|
Wire.IOC2 'AUTOFD'
|
|
Wire.GPO 'INIT'
|
|
}
|
|
|
|
|
|
Display CT20x4 {
|
|
Driver 'Beckmann+Egle'
|
|
Model 'CT20x4'
|
|
Port '/dev/tts/0'
|
|
# Size '16x2'
|
|
# Contrast 7
|
|
# Backlight 1
|
|
Icons 1
|
|
}
|
|
|
|
|
|
Display USBLCD {
|
|
Driver 'USBLCD'
|
|
Port '/dev/lcd0'
|
|
Size '20x4'
|
|
asc255bug 1
|
|
Icons 1
|
|
}
|
|
|
|
|
|
Display T6963-240x64 {
|
|
Driver 'T6963'
|
|
Port '/dev/parports/0'
|
|
Size '240x64'
|
|
Wire.CE 'STROBE'
|
|
Wire.CD 'SELECT'
|
|
Wire.RD 'AUTOFD'
|
|
Wire.WR 'INIT'
|
|
}
|
|
|
|
|
|
Display XWindow {
|
|
Driver 'X11'
|
|
Size '120x32'
|
|
Font '6x8'
|
|
Pixel '4+1'
|
|
Gap '-1x-1'
|
|
Border 20
|
|
Foreground '#000000'
|
|
Background '#80d000'
|
|
Halfground '#70c000'
|
|
}
|
|
|
|
Display Image {
|
|
Driver 'Image'
|
|
# Format 'PPM'
|
|
Format 'PNG'
|
|
Size '120x32'
|
|
Font '6x8'
|
|
Pixel '4+1'
|
|
Gap '-1x-1'
|
|
Border 20
|
|
Foreground '#000000'
|
|
Background '#80d000'
|
|
Halfground '#70c000'
|
|
}
|
|
|
|
Plugin Seti {
|
|
Directory '/root/setiathome-3.08.i686-pc-linux-gnu'
|
|
}
|
|
|
|
|
|
Plugin MySQL {
|
|
server 'gsmlandia.com' # if none, localhost assumed
|
|
port 3306 # if none, MySQL default assumed
|
|
user 'lcd4linux' # if none, lcd4linux unix owner assumed
|
|
password 'lcd4linux' # if none, empty password assumed
|
|
database 'lcd4linux' # MUST be specified
|
|
}
|
|
|
|
Plugin Pop3 {
|
|
server1 'localhost'
|
|
port1 110
|
|
user1 'michael'
|
|
password1 'secret'
|
|
}
|
|
|
|
|
|
Widget OS {
|
|
class 'Text'
|
|
expression '*** '.uname('sysname').' '.uname('release').' ***'
|
|
width 20
|
|
align 'M'
|
|
speed 100
|
|
update tick
|
|
}
|
|
|
|
Widget CPU {
|
|
class 'Text'
|
|
expression uname('machine')
|
|
prefix 'CPU '
|
|
width 9
|
|
align 'L'
|
|
update tick
|
|
}
|
|
|
|
|
|
Widget RAM {
|
|
class 'Text'
|
|
expression meminfo('MemTotal')/1024
|
|
postfix ' MB RAM'
|
|
width 11
|
|
precision 0
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget Busy {
|
|
class 'Text'
|
|
expression proc_stat::cpu('busy', 500)
|
|
prefix 'Busy'
|
|
postfix '%'
|
|
width 10
|
|
precision 1
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget BusyBar {
|
|
class 'Bar'
|
|
expression proc_stat::cpu('busy', 500)
|
|
expression2 proc_stat::cpu('system', 500)
|
|
length 10
|
|
direction 'E'
|
|
update tack
|
|
}
|
|
|
|
Widget Load {
|
|
class 'Text'
|
|
expression loadavg(1)
|
|
prefix 'Load'
|
|
postfix loadavg(1)>1.0?'!':' '
|
|
width 10
|
|
precision 1
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget LoadBar {
|
|
class 'Bar'
|
|
expression loadavg(1)
|
|
max 2.0
|
|
length 10
|
|
direction 'E'
|
|
update tack
|
|
}
|
|
|
|
|
|
Widget Disk {
|
|
class 'Text'
|
|
# disk.[rw]blk return blocks, we assume a blocksize of 512
|
|
# to get the number in kB/s we would do blk*512/1024, which is blk/2
|
|
# expression (proc_stat::disk('.*', 'rblk', 500)+proc_stat::disk('.*', 'wblk', 500))/2
|
|
# with kernel 2.6, disk_io disappeared from /proc/stat but moved to /proc/diskstat
|
|
# therefore you have to use another function called 'diskstats':
|
|
expression diskstats('.*', 'read_sectors', 500) + diskstats('.*', 'write_sectors', 500)
|
|
prefix 'disk'
|
|
postfix ' '
|
|
width 10
|
|
precision 0
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget DiskBar {
|
|
class 'Bar'
|
|
#expression proc_stat::disk('.*', 'rblk', 500)
|
|
#expression2 proc_stat::disk('.*', 'wblk', 500)
|
|
# for kernel 2.6:
|
|
expression diskstats('.*', 'read_sectors', 500)
|
|
expression2 diskstats('.*', 'write_sectors', 500)
|
|
length 14
|
|
direction 'E'
|
|
update tack
|
|
}
|
|
|
|
Widget Eth0 {
|
|
class 'Text'
|
|
expression (netdev('eth0', 'Rx_bytes', 500)+netdev('eth0', 'Tx_bytes', 500))/1024
|
|
prefix 'eth0'
|
|
postfix ' '
|
|
width 10
|
|
precision 0
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget Eth0Bar {
|
|
class 'Bar'
|
|
expression netdev('eth0', 'Rx_bytes', 500)
|
|
expression2 netdev('eth0', 'Tx_bytes', 500)
|
|
length 14
|
|
direction 'E'
|
|
update tack
|
|
}
|
|
|
|
Widget PPP {
|
|
class 'Text'
|
|
expression (ppp('Rx:0', 500)+ppp('Tx:0', 500))
|
|
prefix 'PPP'
|
|
width 9
|
|
precision 0
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget Temp {
|
|
class 'Text'
|
|
expression i2c_sensors('temp_input3')*1.0324-67
|
|
prefix 'Temp'
|
|
width 9
|
|
precision 1
|
|
align 'R'
|
|
update tick
|
|
}
|
|
|
|
Widget TempBar {
|
|
class 'Bar'
|
|
expression i2c_sensors('temp_input3')*1.0324-67
|
|
min 40
|
|
max 80
|
|
length 10
|
|
direction 'E'
|
|
update tack
|
|
}
|
|
|
|
Widget MySQLtest1 {
|
|
class 'Text'
|
|
expression MySQL::query('SELECT id FROM table1')
|
|
width 20
|
|
align 'R'
|
|
prefix 'MySQL test:'
|
|
update minute
|
|
}
|
|
|
|
Widget MySQLtest2 {
|
|
class 'Text'
|
|
expression MySQL::status()
|
|
width 20
|
|
align 'M'
|
|
prefix 'Status: '
|
|
update minute
|
|
}
|
|
|
|
Widget Uptime {
|
|
class 'Text'
|
|
expression uptime('%d days %H:%M:%S')
|
|
width 20
|
|
align 'R'
|
|
prefix 'Up '
|
|
update 1000
|
|
}
|
|
|
|
|
|
# debugging widgets
|
|
|
|
Widget BarTest {
|
|
class 'Bar'
|
|
# test::bar(barno,maxval,startval,delta) - move a test value between 0 and max.
|
|
# delta= step to change value by each time it's read.
|
|
# barno - ten different test bar values can be set up, with barno=0..9
|
|
# if delta=0, just returns the value of bar n instead of changing it.
|
|
expression test::bar(0,30,25,1)
|
|
expression2 test::bar(1,30,0,1)
|
|
length 6
|
|
max 50
|
|
direction 'E'
|
|
update 10
|
|
}
|
|
|
|
Widget BarTestVal {
|
|
class 'Text'
|
|
expression test::bar(0,100,50,0)
|
|
prefix 'Test '
|
|
width 9
|
|
update 200
|
|
}
|
|
|
|
Widget LightningTest {
|
|
class 'icon'
|
|
speed 500
|
|
visible test::onoff(0)
|
|
bitmap {
|
|
row1 '...***'
|
|
row2 '..***.'
|
|
row3 '.***..'
|
|
row4 '.****.'
|
|
row5 '..**..'
|
|
row6 '.**...'
|
|
row7 '**....'
|
|
row8 '*.....'
|
|
}
|
|
}
|
|
|
|
|
|
# Icons
|
|
|
|
Widget Heartbeat {
|
|
class 'Icon'
|
|
speed 800
|
|
Bitmap {
|
|
Row1 '.....|.....'
|
|
Row2 '.*.*.|.*.*.'
|
|
Row3 '*****|*.*.*'
|
|
Row4 '*****|*...*'
|
|
Row5 '.***.|.*.*.'
|
|
Row6 '.***.|.*.*.'
|
|
Row7 '..*..|..*..'
|
|
Row8 '.....|.....'
|
|
}
|
|
}
|
|
|
|
Widget EKG {
|
|
class 'Icon'
|
|
speed 50
|
|
Bitmap {
|
|
Row1 '.....|.....|.....|.....|.....|.....|.....|.....'
|
|
Row2 '.....|....*|...*.|..*..|.*...|*....|.....|.....'
|
|
Row3 '.....|....*|...*.|..*..|.*...|*....|.....|.....'
|
|
Row4 '.....|....*|...**|..**.|.**..|**...|*....|.....'
|
|
Row5 '.....|....*|...**|..**.|.**..|**...|*....|.....'
|
|
Row6 '.....|....*|...*.|..*.*|.*.*.|*.*..|.*...|*....'
|
|
Row7 '*****|*****|****.|***..|**..*|*..**|..***|.****'
|
|
Row8 '.....|.....|.....|.....|.....|.....|.....|.....'
|
|
}
|
|
}
|
|
Widget Karo {
|
|
class 'Icon'
|
|
speed 200
|
|
Bitmap {
|
|
Row1 '.....|.....|.....|.....|..*..|.....|.....|.....'
|
|
Row2 '.....|.....|.....|..*..|.*.*.|..*..|.....|.....'
|
|
Row3 '.....|.....|..*..|.*.*.|*...*|.*.*.|..*..|.....'
|
|
Row4 '.....|..*..|.*.*.|*...*|.....|*...*|.*.*.|..*..'
|
|
Row5 '.....|.....|..*..|.*.*.|*...*|.*.*.|..*..|.....'
|
|
Row6 '.....|.....|.....|..*..|.*.*.|..*..|.....|.....'
|
|
Row7 '.....|.....|.....|.....|..*..|.....|.....|.....'
|
|
Row8 '.....|.....|.....|.....|.....|.....|.....|.....'
|
|
}
|
|
}
|
|
Widget Heart {
|
|
class 'Icon'
|
|
speed 250
|
|
Bitmap {
|
|
Row1 '.....|.....|.....|.....|.....|.....'
|
|
Row2 '.*.*.|.....|.*.*.|.....|.....|.....'
|
|
Row3 '*****|.*.*.|*****|.*.*.|.*.*.|.*.*.'
|
|
Row4 '*****|.***.|*****|.***.|.***.|.***.'
|
|
Row5 '.***.|.***.|.***.|.***.|.***.|.***.'
|
|
Row6 '.***.|..*..|.***.|..*..|..*..|..*..'
|
|
Row7 '..*..|.....|..*..|.....|.....|.....'
|
|
Row8 '.....|.....|.....|.....|.....|.....'
|
|
}
|
|
}
|
|
Widget Blob {
|
|
class 'Icon'
|
|
speed 250
|
|
Bitmap {
|
|
Row1 '.....|.....|.....'
|
|
Row2 '.....|.....|.***.'
|
|
Row3 '.....|.***.|*...*'
|
|
Row4 '..*..|.*.*.|*...*'
|
|
Row5 '.....|.***.|*...*'
|
|
Row6 '.....|.....|.***.'
|
|
Row7 '.....|.....|.....'
|
|
Row8 '.....|.....|.....'
|
|
}
|
|
}
|
|
Widget Wave {
|
|
class 'Icon'
|
|
speed 100
|
|
Bitmap {
|
|
Row1 '..**.|.**..|**...|*....|.....|.....|.....|.....|....*|...**'
|
|
Row2 '.*..*|*..*.|..*..|.*...|*....|.....|.....|....*|...*.|..*..'
|
|
Row3 '*....|....*|...*.|..*..|.*...|*....|....*|...*.|..*..|.*...'
|
|
Row4 '*....|....*|...*.|..*..|.*...|*....|....*|...*.|..*..|.*...'
|
|
Row5 '*....|....*|...*.|..*..|.*...|*....|....*|...*.|..*..|.*...'
|
|
Row6 '.....|.....|....*|...*.|..*..|.*..*|*..*.|..*..|.*...|*....'
|
|
Row7 '.....|.....|.....|....*|...**|..**.|.**..|**...|*....|.....'
|
|
Row8 '.....|.....|.....|.....|.....|.....|.....|.....|.....|.....'
|
|
}
|
|
}
|
|
Widget Squirrel {
|
|
class 'Icon'
|
|
speed 100
|
|
Bitmap {
|
|
Row1 '.....|.....|.....|.....|.....|.....'
|
|
Row2 '.....|.....|.....|.....|.....|.....'
|
|
Row3 '.....|.....|.....|.....|.....|.....'
|
|
Row4 '**...|.**..|..**.|...**|....*|.....'
|
|
Row5 '*****|*****|*****|*****|*****|*****'
|
|
Row6 '...**|..**.|.**..|**...|*....|.....'
|
|
Row7 '.....|.....|.....|.....|.....|.....'
|
|
Row8 '.....|.....|.....|.....|.....|.....'
|
|
}
|
|
}
|
|
|
|
Widget Lightning {
|
|
class 'icon'
|
|
speed 100
|
|
visible cpu('busy', 500)-50
|
|
bitmap {
|
|
row1 '...***'
|
|
row2 '..***.'
|
|
row3 '.***..'
|
|
row4 '.****.'
|
|
row5 '..**..'
|
|
row6 '.**...'
|
|
row7 '**....'
|
|
row8 '*.....'
|
|
}
|
|
}
|
|
|
|
Widget Rain {
|
|
class 'icon'
|
|
speed 200
|
|
bitmap {
|
|
row1 '...*.|.....|.....|.*...|....*|..*..|.....|*....'
|
|
row2 '*....|...*.|.....|.....|.*...|....*|..*..|.....'
|
|
row3 '.....|*....|...*.|.....|.....|.*...|....*|..*..'
|
|
row4 '..*..|.....|*....|...*.|.....|.....|.*...|....*'
|
|
row5 '....*|..*..|.....|*....|...*.|.....|.....|.*...'
|
|
row6 '.*...|....*|..*..|.....|*....|...*.|.....|.....'
|
|
row7 '.....|.*...|....*|..*..|.....|*....|...*.|.....'
|
|
row8 '.....|.....|.*...|....*|..*..|.....|*....|...*.'
|
|
}
|
|
}
|
|
|
|
Widget Test {
|
|
class 'Text'
|
|
expression '1234567890123456789012345678901234567890'
|
|
#expression '|'
|
|
width 40
|
|
}
|
|
|
|
|
|
Layout Default {
|
|
Row1 {
|
|
Col1 'OS'
|
|
}
|
|
Row2 {
|
|
Col1 'CPU'
|
|
Col10 'RAM'
|
|
}
|
|
Row3 {
|
|
Col1 'Busy'
|
|
# Col10 'Rain'
|
|
Col11 'BusyBar'
|
|
}
|
|
Row4 {
|
|
Col1 'Load'
|
|
Col11 'LoadBar'
|
|
}
|
|
Row5 {
|
|
Col1 'Disk'
|
|
Col11 'DiskBar'
|
|
}
|
|
Row6 {
|
|
Col1 'Eth0'
|
|
Col11 'Eth0Bar'
|
|
}
|
|
}
|
|
|
|
Layout L24x8 {
|
|
Row1 {
|
|
Col1 'Load'
|
|
Col11 'BusyBar'
|
|
}
|
|
Row2 {
|
|
}
|
|
}
|
|
|
|
Layout L16x2 {
|
|
Row1 {
|
|
Col1 'Busy'
|
|
Col11 'BusyBar'
|
|
}
|
|
Row2 {
|
|
Col1 'Disk'
|
|
#Col11 'DiskBar'
|
|
Col11 'BarTest'
|
|
}
|
|
# Row2 {
|
|
# Col1 'Heartbeat'
|
|
# Col2 'EKG'
|
|
# Col3 'Karo'
|
|
# Col4 'Heart'
|
|
# Col5 'Blob'
|
|
# Col6 'Wave'
|
|
# Col7 'Squirrel'
|
|
# }
|
|
}
|
|
|
|
Layout L20x2 {
|
|
Row1 {
|
|
Col1 'Busy'
|
|
Col11 'BusyBar'
|
|
}
|
|
Row2 {
|
|
Col1 'Load'
|
|
Col11 'LoadBar'
|
|
}
|
|
}
|
|
|
|
Layout Test {
|
|
Row01.Col1 'Test'
|
|
Row02.Col1 'Test'
|
|
Row03.Col1 'Test'
|
|
Row04.Col1 'Test'
|
|
Row05.Col1 'Test'
|
|
Row06.Col1 'Test'
|
|
Row07.Col1 'Test'
|
|
Row08.Col1 'Test'
|
|
# Row09.Col1 'Test'
|
|
# Row10.Col1 'Test'
|
|
# Row11.Col1 'Test'
|
|
# Row12.Col1 'Test'
|
|
# Row13.Col1 'Test'
|
|
# Row14.Col1 'Test'
|
|
# Row15.Col1 'Test'
|
|
# Row16.Col1 'Test'
|
|
}
|
|
|
|
|
|
Layout testMySQL {
|
|
Row1 {
|
|
Col1 'MySQLtest1'
|
|
}
|
|
Row2 {
|
|
Col1 'MySQLtest2'
|
|
}
|
|
}
|
|
|
|
|
|
#Display 'LK204'
|
|
#Display 'MI240'
|
|
#Display 'CW12232'
|
|
#Display 'HD44780-20x4'
|
|
#Display 'SC1602D'
|
|
Display 'LCM-162'
|
|
#Display 'CF631'
|
|
#Display 'CF632'
|
|
#Display 'CF633'
|
|
#Display 'Curses'
|
|
#Display 'M50530-24x8'
|
|
#Display 'CT20x4'
|
|
#Display 'T6963-240x64'
|
|
#Display 'XWindow'
|
|
#Display 'USBLCD'
|
|
#Display 'Image'
|
|
|
|
#Layout 'Default'
|
|
Layout 'L16x2'
|
|
#Layout 'L20x2'
|
|
#Layout 'Test'
|
|
|
|
|
|
Variables {
|
|
tick 500
|
|
tack 100
|
|
minute 60000
|
|
}
|