wiki:st2205

st2205

Information

Check out the picframe project to get more information. There is a hacked firmware available, so you digital photoframe can be used as LCD4Linux display.
Resolution: 128x128 Pixels (also 320x240)
Quite cheap

updated libst2205

How to compile

You need the st2205 library and header files installed. They are available on the picframe wiki site.

Example config

Config-Example:

Display st2205u {
    Driver     'st2205'
    Port       '/dev/sda'
    Font       '6x8'
    Foreground 'ffffff'
    Background '000000'
    Basecolor  '000000'
}

Widget OS {
    class 'Text'
    expression '*** '.uname('sysname').' '.uname('release').' - st2205 driver by Sprite ***'
    width 21
    align 'M'
    speed 500
    update tick
    Background '008000'
    Foreground 'ffffff'
}

Widget CPU {
    class  'Text'
    expression  uname('machine')
    prefix 'CPU '
    width  9
    align  'L'
    update tick
    Background 'FFFFFF00'
}


Widget RAM {
    class  'Text'
    expression meminfo('MemTotal')/1024
    postfix ' MB RAM'
    width  11
    precision 0
    align  'R'
    update tick
    Background 'FFFFFF00'
}

Widget Busy {
    class 'Text'
    expression proc_stat::cpu('busy', 500)
    prefix 'Busy'
    postfix '%'
    width 10
    precision 1
    align 'R'
    update tick
    Foreground 'ffffff'
    Background 'FFFFFF00'
}

Widget BusyBar {
    class 'Bar'
    expression  proc_stat::cpu('busy',   500)
    expression2 proc_stat::cpu('system', 500)
    length 21
    direction 'E'
    update tack
    Foreground 'ffffff'
    Background '00000080'
    BarColor0 '8f8fff'
    BarColor1 'ff8f8f'
}

Widget Load {
    class 'Text'
    expression loadavg(1)
    prefix 'Load'
    postfix loadavg(1)>1.0?'!':' '
    width 10
    precision 1
    align 'R'
    update tick
    Foreground 'ffffff'
    Background 'FFFFFF00'
}

Widget LoadBar {
    class 'Bar'
    expression  loadavg(1)
    max 2.0
    length 21
    direction 'E'
    update tack
    Foreground 'ffffff'
    Background '00000080'
    BarColor0 '8f8fff'
    BarColor1 'ff8f8f'
}


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('hd.', 'read_sectors', 500) + diskstats('hd.', 'write_sectors', 500)
    prefix 'disk'
    postfix ' '
    width 10
    precision 0
    align 'R'
    update tick
    Foreground 'ffffff'
    Background 'FFFFFF00'
}

Widget DiskBar {
    class 'Bar'
    #expression  proc_stat::disk('.*', 'rblk', 500)
    #expression2 proc_stat::disk('.*', 'wblk', 500)
    # for kernel 2.6:
    expression  diskstats('hd.', 'read_sectors',  500)
    expression2 diskstats('hd.', 'write_sectors', 500)
    length 21
    direction 'E'
    update tack
    Foreground 'ffffff'
    Background '00000080'
    BarColor0 '8f8fff'
    BarColor1 'ff8f8f'
}

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
    Foreground 'ffffff'
    Background 'FFFFFF00'
}

Widget Eth0Bar {
    class 'Bar'
    expression  netdev('eth0', 'Rx_bytes', 500)
    expression2 netdev('eth0', 'Tx_bytes', 500)
    length 21
    direction 'E'
    update tack
    Foreground 'ffffff'
    Background '00000080'
    BarColor0 '8f8fff'
    BarColor1 'ff8f8f'
}

Widget Uptime {
    class 'Text'
    expression uptime('%d days %H:%M:%S')
    width 20
    align 'R'
    prefix 'Up '
    update 1000
    Background 'FFFFFF00'
}

Widget Bgnd {
    class 'Image'
    file 'bgnd.png'
    reload 0
    update 0
    inverted 0
    visible 1
}

Display 'st2205u'

Layout mylayout {
    Row01.Col01 'OS'
    Row02.Col02 'CPU
    Row02.Col10 'RAM
    Row04.Col01 'Busy
    Row05.Col01 'BusyBar
    Row06.Col01 'Load'
    Row07.Col01 'LoadBar'
    Row08.Col01 'Disk'
    Row09.Col01 'DiskBar'
    Row10.Col01 'Eth0'
    Row11.Col01 'Eth0Bar'
    Row16.Col01 'Uptime'
    Layer 2 {
	X1.Y1 'Bgnd'
    }
}

Layout 'mylayout'

Variables {
    tick 500
    tack 200
    minute 60000
}
	 
Last modified 8 years ago Last modified on 01/15/09 00:41:38