brazilfw firewall - display lcd
TRANSCRIPT
BrazilFW Firewall and Router
A powerful network security tool, easy, safe and totally free.
Skip to content
Advanced search
Portal » Board index ‹ Tutorials ‹ Tutoriais em Português ‹ Tutoriais comuns as todas as versões, Linux em geral e outros
Change font size
Print view
FAQ
Register
Login
Como montar um L.C.D.para seu BrazilFW
Moderators: Reporters, Documenters
Topic locked
1 post • Page 1 of 1
Como montar um L.C.D.para seu BrazilFW
by BrazilFW » Thu Dec 27, 2007 10:20 pm
Título Original: Como montar um L.C.D.para seu BrazilFW
Autor: Marcelo - Brazil
Revisado em 17/06/2008
Como montar um L.C.D.para seu BrazilFW.Pegue os softwares e seus links para download no final desta página.
Neste Tutorial você terá tudo o que é necessário para entender, montar e rodar um LCD para o BRAZILFW.
Com um display de cristal liquido no seu BFW, vc terá em tempo real informações como, velocidade de download, upload, carga no processador
uso de memória e até as horas !
Como segunda opção, o lcd4linux também foi disponibilizado, mas na minha opinião, apesar de mais ativo, o lcdstats é mais útil e funcional.
*** Alerta ***
Tenha certesa que você pode lidar com circuitos eletrônicos.
Eu não sou responsável por danos em seu computador ou L.C.D.
Todas as ligações descritas aqui foram testadas.
Entenda que este produto deve ser instalado por um profissional.
1) Escolha seu LCD: (De preferência um compatível com HD44780).Exemplos de L.C.D.:
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
1 de 13 06/10/2010 12:18
2) Use esta pinagem como referência:
Preste atenção redobrada na pinagem do conector da impressora.
(Veja a numeração dos pinos dentro do plástico)
3) Placa de Circuito Impresso (Exemplo).
4) Use estas ligações (RASA) para um LCD (2x16, 2x20, 4x16, 4x20):
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
2 de 13 06/10/2010 12:18
5) Use estas ligações (RASA) para dois LCDs: (dois 2x16 ou dois 4x20)
6) Use estas ligações (RASA) para três LCDs: (* Não testado ainda*)
7) Use estas ligações para controle digital do backlight (Usando o comando --> \033\[b (Backlight
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
3 de 13 06/10/2010 12:18
LIGA/DESLIGA)
8 ) Primeira imagem no LCD = energia e fiação corretos.
9) LCD Na bancada e num servidor BFW.
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
4 de 13 06/10/2010 12:18
10) Alternativas.
Se você não possuir um potenciômetro de 100 ohms, pode-se usar um resistor de 50 ohms será necessário na linha positiva +5v.
(Isso previne contra super aquecimento, porque os LEDs do backlight trabalham por volta de +4,2 volts).
Se você não possuir um potenciômetro de 10k para o controle de contraste , coloque este terminal no terra,
assim funcionará no contraste máximo, não é o ideal, mas poderá ser visualizado.
11) Outros exemplos : Referência de cores dos fios de força e o LCD funcionando como "Analisadorde Espectro" no WinAmp.
12) Softwares (Sobre o lcd4linux, veja mais abaixo)
Este novo sysinfo.tgz inclui modificações do "Marcio" (MPG, obrigado!) e vários acertos/modificações pelo Claudio, (muito obrigado amigo !).
Instale e divirta-se
Instalação:
1) Copie o sysinfo.tgz, lcdstats.tgz e lcd.tgz para seu disquete do BrazilFW, e reboot,
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
5 de 13 06/10/2010 12:18
2) Ou boot por um disco de dos e copie estes arquivos para sua hd e reboot,
3) Ou se você não deseja reiniciar, entre no console e faça o seguinte:
Code: Select all
cd /
Code: Select all
mount /dev/fd0 /mnt
Code: Select all
tar zxvf /mnt/sysinfo.tgz
Code: Select all
tar zxvf /mnt/lcdstats.tgz
Code: Select all
tar zxvf /mnt/lcd.tgz
Code: Select all
umount /mnt
Code: Select all
/etc/rc.d/pkgs/rc.sysinfo
Importante: Se o seu LCD não for do padrão 2x16 ( 2 linhas com 16 caracteres cada) será necessário alterar o arquivo mod.lcd a fim de que os textos sejam exibidos
corretamente num LCD fora destes parametros.
Faça o seguinte: com todos os add-ons instalados execute:
Code: Select all
edit etc/rc.d/pkgs/mod.lcd
Você terá a seguinte tela:
Code: Select all
#Instaling Parallel Port Support
insmod /lib/parport/parport.o
insmod /lib/parport/parport_pc.o
#Installing LCD Support
#You must enable only one of the tree modules below
#If you want to save some space you can delete the unused modules
#from the folder /lib/lcd
#insmod /lib/lcd/lcd.o io=0x378 disp_rows=2 disp_cols=16 # Standard Wiring
insmod /lib/lcd/lcd-rasa.o io=0x378 disp_rows=2 disp_cols=16 # Rasa Wiring
#insmod /lib/lcd/lcd-8bit.o io=0x378 disp_rows=2 disp_cols=16 # 8 Bits Wiring
#You can change the parameters above if your lcd display
#is not a 2X16 caracters or is not pluged to the first parallel port
Altere no arquivo a quantidade de linhas (rows) e colunas (cols)
Caso for usado uma outra porta paralela, mude o endereço 378.
4) No Webadmin veja Bandwidth Usage Statistics, gráficos bonitos sobre o volume de tráfego em tempo real e histórico de até 24 horas.
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
6 de 13 06/10/2010 12:18
13) Lcdstats & Bwmon rodando
Como você pode ver, seu link é mostrado no LCD como DOWN no caso de queda ou o valor de "downstream" no momento.
Configuração original: D = Download, U= Upload, Men = Uso de memória em %
e Ld = Carga no processador ( 1.00 = 100%, 0.10 = 10%)
14) Linux Scripts
Você pode mudar estas informações editando o lcdstats.tgz
No console digite :
Code: Select all
edit /usr/bin/lcdstats
O Script do Lcdstats é mostrado abaixo.
#!/bin/sh
while [ 1 ] ; do
BW_IN=DOWN
BW_OUT=DOWN
LOADAVG_1MIN=`cat /proc/loadavg | cut -f 1 -d ' '`
MEMTOTAL=`free | grep Mem | sed s/\ */#/g | cut -f 3 -d '#'`
MEMUSED=`free | grep Mem | sed s/\ */#/g | cut -f 4 -d '#'`
PERCUSED=$((MEMUSED*100/MEMTOTAL))
. /tmp/netsubsys.state
if [ "$INET_UP" = "UP" ] ; then
if [ -e /tmp/bwmon.log ] ; then
bwstats > /tmp/bwstats.log
if [ $? = 0 ] ; then
if [ -e /tmp/bwstats.log ] ; then
. /tmp/bwstats.log
BW_IN=$BW_CUR_DOWN_K
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
7 de 13 06/10/2010 12:18
BW_OUT=$BW_CUR_UP_K
fi
fi
fi
fi
# And send it to the LCD
echo -ne "\033[H\033[J" > /dev/lcd
echo -ne "D:${BW_IN} U:${BW_OUT}\r\n" > /dev/lcd
echo -ne "Mem:$PERCUSED% Ld:$LOADAVG_1MIN" > /dev/lcd
# Wait a bit
sleep 3
done
15) Lcd4linux
Sim , ajustamos o lcd4linux para o BrazilFW.
Esta parte está em construção, mas pegue o lcd4linux.tgz
aqui: lcd4linx.tgz
*** Observação, o lcd4linux não pode ser instalado junto com o lcdstats. ***
O gif abaixo dá a exata imagem de como é ativo este software.
Abaixo algumas imagens do Lcd4linux rodando.
Abaixo o script de configuração original de criação de "icones" do lcd4linux
Display HD44780 {
Driver 'HD44780'
Model 'generic'
Port '/dev/parport0'
Size '16x2'
Icons 5
Wire {
RW 'AUTOFD'
RS 'INIT'
ENABLE 'STROBE'
ENABLE2 'GND'
GPO 'GND'
}
}
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
}
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
8 de 13 06/10/2010 12:18
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('hd.', 'read_sectors', 500) + diskstats('hd.', '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('hd.', 'read_sectors', 500)
expression2 diskstats('hd.', '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
}
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
9 de 13 06/10/2010 12:18
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 Uptime {
class 'Text'
expression uptime('%d days %H:%M:%S')
width 20
align 'R'
prefix 'Up '
update 1000
}
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
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
10 de 13 06/10/2010 12:18
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 '.....|.....|.....|.....|.....|.....'
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
11 de 13 06/10/2010 12:18
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 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'
}
}
Display 'HD44780'
Layout 'L16x2'
Variables {
tick 500
tack 100
minute 60000
}
Tópico sobre scripts modificados para o lcdstats: Clique aqui
Tópico sobre scripts modificados para o lcd4linux; Clique aqui
Quer mostrar seu CASE BFW para o pessoal do fórum ?
Tópico de imagens de CASE MOD no BFW: Clique aqui
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
12 de 13 06/10/2010 12:18
====================================================
Softwares: (click no nome do arquivo p/download)
lcdstats.tgz
lcd.tgz
sysinfo.tgz
lcd4linux.tgz
Cuidado, o Internet Explorer pode renomear .tgz para.tar, se acontecer, renomeie novamente para .tgz
Qualquer dúvida estou no fórum, Marcelo - Brazil
Título Original: Como montar um L.C.D.para seu BrazilFW
Autor: Marcelo - Brazil
Revisado em 17/06/2008
BrazilFW
Top
Topic locked
1 post • Page 1 of 1
Return to Tutoriais comuns as todas as versões, Linux em geral e outros
Jump to:
Who is online
Users browsing this forum: No registered users and 1 guest
Portal » Board index
The team • Delete all board cookies • All times are UTC - 3 hours
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
BrazilFW Firewall and Router • View topic - Como montar um L.C.D.p... http://www.brazilfw.com.br/forum/viewtopic.php?f=39&t=62581
13 de 13 06/10/2010 12:18