aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/picoLCD/lcd4linux.conf
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/picoLCD/lcd4linux.conf')
-rw-r--r--contrib/picoLCD/lcd4linux.conf629
1 files changed, 629 insertions, 0 deletions
diff --git a/contrib/picoLCD/lcd4linux.conf b/contrib/picoLCD/lcd4linux.conf
new file mode 100644
index 0000000..4b80e53
--- /dev/null
+++ b/contrib/picoLCD/lcd4linux.conf
@@ -0,0 +1,629 @@
+Display picoLCD {
+ Driver 'picoLCDGraphic'
+ Size '256x64'
+ Update 200
+ Contrast 230
+ Backlight 1
+ Inverted 1
+ Icons 1
+}
+
+Variables {
+ tick 500
+ tack 100
+ minute 60000
+}
+
+
+
+
+
+#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 'user'
+# password1 'pass'
+#}
+
+
+Widget OS {
+ class 'Text'
+ expression '*** '.uname('sysname').' '.uname('release').' ***'
+ width 20
+ align 'M'
+ style 'bold'
+ speed 50
+ update tick
+}
+
+
+
+
+Widget HDDTemp {
+ class 'Text'
+ expression 'IDE Temp'.exec ('hddtemp /dev/sda | cut -f 3 -d :', 1000)
+ width 14
+ align 'L'
+ update 1000
+}
+
+Widget FSSpace {
+ class 'Text'
+ expression a=((statfs('/', 'bavail')*statfs('/', 'bsize'))/1024/1024);b=((statfs('/media/disk', 'bavail')*statfs('/media/disk', 'bsize'))/1024/1024);c='/ '.' '.a.'MB /media/disk/ '.b.' MB'
+ prefix 'Free Space:'
+ postfix ''
+ width 42
+ align 'M'
+ #precision 0
+ update 1000
+}
+
+
+Widget BottomTicker {
+ class 'Text'
+ expression uname('sysname').' '.uname('nodename').' '.uname('release').' '.uname('machine').' '.cpuinfo('model name')
+ #expression strftime('%A %d/%m %H:%M:%S',time()).' '.cpuinfo('model name').' '. uptime('%d days %H:%M:%S')
+ #expression strftime('%A %d/%m %H:%M:%S',time())
+ prefix ''
+ width 42
+ align 'M'
+ speed 1000
+ update tick
+ style 'bold'
+}
+
+#Widget CPU {
+# class 'Text'
+# expression uname('machine')
+# prefix 'CPU '
+# width 9
+# align 'L'
+# style test::onoff(7)>0?'bold':'norm'
+# update tick
+#}
+
+
+Widget CPULabel {
+ class 'text'
+ expression 'CPU:'
+ width 4
+ align 'L'
+ style 'bold'
+}
+
+Widget CPU {
+ class 'Text'
+ expression proc_stat::cpu('busy', 500)
+ prefix ''
+ postfix '% '
+ width 5
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget CPUBar {
+ class 'Bar'
+ expression proc_stat::cpu('busy', 500)
+ expression2 proc_stat::cpu('system', 500)
+ length 10
+ min 1
+ max 100
+ direction 'E'
+ style 'H'
+ update tick
+}
+
+
+Widget RAMLabel {
+ class 'text'
+ expression 'RAM:'
+ width 4
+ align 'L'
+ style 'bold'
+}
+
+
+Widget RAMTotal {
+ class 'Text'
+ expression meminfo('MemTotal')/1024
+ postfix 'MB FREE'
+ width 11
+ precision 0
+ align 'L'
+ update tick
+}
+
+Widget RAMFree {
+ class 'Text'
+ expression meminfo('MemFree')/1024
+ prefix ''
+ postfix '/'
+ width 5
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget IDELabel {
+ class 'text'
+ expression 'IDE:'
+ width 4
+ align 'L'
+ style 'bold'
+}
+
+Widget IDEIn {
+ class 'text'
+ # In MB/s
+ expression (diskstats('sda', 'read_sectors', 500))/2048
+ prefix 'OUT '
+ postfix 'MB'
+ precision 2
+ align 'R'
+ width 10
+ update tick
+}
+
+Widget IDEOut {
+ class 'text'
+ # In MB/s
+ expression (diskstats('sda', 'write_sectors', 500))/2048
+ prefix 'IN '
+ postfix 'MB'
+ precision 2
+ align 'R'
+ width 10
+ update tick
+}
+
+Widget IDEBar {
+ class 'Bar'
+ expression diskstats('sda', 'read_sectors', 500)
+ expression2 diskstats('sda', 'write_sectors', 500)
+ length 14
+ direction 'E'
+ style 'H'
+ update tick
+}
+
+Widget ETHLabel {
+ class 'text'
+ expression 'ETH:'
+ width 4
+ align 'L'
+ style 'bold'
+}
+
+
+Widget ETHIn {
+ class 'Text'
+ expression (netdev('eth0', 'Rx_bytes', 500))/1024
+ prefix 'OUT'
+ postfix 'KB'
+ width 9
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget ETHOut {
+ class 'Text'
+ expression (netdev('eth0', 'Tx_bytes', 500))/1024
+ prefix 'IN'
+ postfix 'KB'
+ width 9
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget ETHBar {
+ class 'Bar'
+ expression netdev('eth0', 'Rx_bytes', 500)
+ expression2 netdev('eth0', 'Tx_bytes', 500)
+ length 14
+ direction 'E'
+ style 'H'
+ update tick
+}
+
+Widget Time {
+ class 'Text'
+ expression strftime('%a,%d/%m %H:%M:%S',time())
+ width 20
+ align 'Left'
+ update 1000
+}
+
+Widget Uptime {
+ class 'Text'
+ expression uptime('%d d %H:%M:%S')
+ width 21
+ align 'R'
+ prefix 'Uptime '
+ update 1000
+}
+
+
+#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('sda', 'read_sectors', 500) + diskstats('sda', 'write_sectors', 500)
+# prefix ''
+# postfix ' '
+# width 7
+# 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('sda', 'read_sectors', 500)
+# expression2 diskstats('sda', 'write_sectors', 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
+}
+
+
+
+
+# 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 IOIcon {
+ 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 GPO_Val1 {
+ class 'Text'
+ expression LCD::GPO(1)
+ prefix 'GPO#1'
+ width 10
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget GPI_Val1 {
+ class 'Text'
+ expression LCD::GPI(1)
+ prefix 'GPI#1'
+ width 10
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget GPO_Val4 {
+ class 'Text'
+ expression LCD::GPO(4)
+ prefix 'GPO#4'
+ width 10
+ precision 0
+ align 'R'
+ update tick
+}
+
+Widget GPO_Test1 {
+ class 'GPO'
+ expression 255*test::onoff(1)
+ update 300
+}
+
+Widget GPO_Test255 {
+ class 'GPO'
+ expression test::bar(0,255, 0, 1)
+ update 100
+}
+
+Widget GPO_picolcd {
+ class 'GPO'
+ expression test::onoff(1)
+ update 300
+}
+
+Widget CpuImage {
+ class 'Image'
+ file '/etc/picoLCDGraphic/Images/cpu_a.png'
+ update 1000
+ visible 1
+ inverted 0
+ reload 0
+}
+
+Widget HddImage {
+ class 'Image'
+ file '/etc/picoLCDGraphic/Images/hdd_a.png'
+ update 1000
+ visible 1
+ inverted 0
+ reload 0
+}
+
+Widget RamImage {
+ class 'Image'
+ file '/etc/picoLCDGraphic/Images/ram_a.png'
+ update 1000
+ visible 1
+ inverted 0
+ reload 0
+}
+
+Widget NetImage {
+ class 'Image'
+ file '/etc/picoLCDGraphic/Images/net_a.png'
+ update 1000
+ visible 1
+ inverted 0
+ reload 0
+}
+
+Widget FanImage {
+ class 'Image'
+ file '/etc/picoLCDGraphic/Images/fan_a.png'
+ update 1000
+ visible 1
+ inverted 0
+ reload 0
+}
+
+
+Layout picoLCD {
+# Layer 1 {
+# X0.Y0 'BandwidthImage'
+# }
+# Layer 1 {
+# X0.Y0 'CpuImage'
+# }
+ Row1 {
+ Col1 'CPULabel'
+ Col6 'CPU'
+ Col11 'CPUBar'
+ Col21 'RAMLabel'
+ Col26 'RAMFree'
+ Col31 'RAMTotal'
+ }
+ Row2 {
+ Col1 'IDELabel'
+ Col6 'IDEIn'
+ Col17 'IDEOut'
+ Col28 'IDEBar'
+ }
+ Row3 {
+ Col1 'FSSpace'
+ }
+ Row4 {
+ Col1 'ETHLabel'
+ Col6 'ETHIn'
+ Col17 'ETHOut'
+ Col28 'ETHBar'
+ }
+ Row7 {
+ Col1 'Time'
+ Col22 'Uptime'
+ }
+
+ Row8 {
+ Col1 'Uptime'
+ Col1 'BottomTicker'
+ }
+ #Layer 2 {
+ # X0.Y0 'ImageTest'
+ #}
+
+#GPO1 'GPO_picolcd'
+#GPO2 'GPO_picolcd'
+#GPO8 'GPO_picolcd'
+}
+
+Display 'picoLCD'
+Layout 'picoLCD'