Chamada em espera

Após vários minutos ao telefone, com o atendente da BRT tentando desligar o serviço de chamada em espera, o atendente finalmente me deu os números mágicos:

Desabilitar chamada em espera BRT: #43#

Habilitar chamada em espera BRT: *43#

Um pouco de software e um pouco de Hardware

Aos poucos o meu controlador de rotores vai se formando, na verdade ele já está quase todo montado, mas vou revisando as etapas para ir melhorando o hardware e fazendo o software mais inteligente e rápido.

Uma das peças fundamentais do controlador é a fonte de 5 volts, além de se manter estável ela deve filtrar os ruídos que com certeza serão produzidos pelos relés que vão chavear algo em torno de 40v, o que já gera um certo “faiscamento” nos contatos internos. A solução é simples, um capacitor eletrolitico grande, algo entre 1000 ou 10000uF é utilizado na entrada, ele deve filtrar os ruídos gerados pelos relés e estabilizar o fornecimento de energia, quanto maior melhor, ou quase isso, se ficar muito grande o circuito não vai ser desligado quando for cortado o fornecimento de energia, o capacitor vai segurar o circuito ligado por algum tempo e isso pode não ser desejado. O regulador de tensão que utilizei foi o 7805, ele é estável o suficiente, e consegue lidar com a corrente necessária apesar de estar usando um dissipador e ele esquentar. Após o regulador utilizo um capacitor cerâmico de 100000pF, que tem a função de filtrar algum ruído que possa ser gerado pelo regulador de tensão 7805.

Fonte, capacitores e regulador de tensão

Fonte, capacitores e regulador de tensão

Ainda quando estava montando o controlador para o Si570, junto as brigas com o AVR-GCC que não “sabia“  calcular números unsigned  long double e que foi resolvido pelo Diego Eckhard, o problema foi como apresentar números grandes no LCD, as funções do Arduino para controlar o LCD apenas recebiam strings ou chars.

A Solução foi criar uma nova função:

void LCD4Bit::printmalvada(unsigned long n, unsigned long base)
{
unsigned char buf[8 * sizeof(long)]; // Assumes 8-bit chars.
unsigned long i = 0;

if (n == 0) {
print(‘0′);
return;
}

while (n > 0) {
buf[i++] = n % base;
n /= base;
}

for (; i > 0; i–)
print(buf[i - 1] < 10 ?
‘0′ + buf[i - 1] :
‘A’ + buf[i - 1] – 10);

}

“printmalvada” foi um nome dado meio que na brincadeira com referência a piada do “galo bom e do galdo malvado“, eu cheguei a enviar ela para o responsável pelo biblioteca LCD4Bit, mas hoje que esta biblioteca foi “incorporada” a biblioteca LiqudCristal padrão do Arduino. Esta incorporação me pareceu uma saída bem elegante, mas no entanto me parece não ser mais possível utilizar um LCD apenas com 6 portas, mas apenas com 7, por isso continuo utilizando a LCD4Bit.

Um controlador para rotores de antena.

Faz tempo que a única coisa que fiz nesta pagina/blog foi atualizar o sistema, também essa mensagem do wordpress na tela de administração chega a ser assustadora.

Bom, indo ao tema deste artigo, eu comecei a construir um controlador para rotores de antena, normalmente utilizados por radio amadores, para voltar as imensas yagis e outras antenas direcionais para a estação com a qual se quer contato. Mas o meu objetivo não era tão simples, o meu controlador de rotores teria que ter controle para um rotor horizontal ( azimuth ) e para um rotor de elevação uma vez que a idéia é utilizar para contatos via satélite.

Montado o protótipo, ele já recebe os comandos com o mesmo formato do controlador da Yaesu, o Gs232, e aciona o rotor. O meu rotor é um Hy-Gain que originalmente veio sem pot, sem feedback algum, mas fiz este mod, utilizei para isso uma engrenagem de impressora, que ficou exatamente 1:10 com a engrenagem grande do rotor.

Por fora está quase pronto

Por fora está quase pronto

FIC conectado com Linux

Já estava pensando para o que poderia servir o gabinete do FIC Conectado que comprei a algum tempo. E ontem encontrei alguns sites que ensinam como trocar o firmware da bios e instalar uma que possibilita utilizar Linux ou algum outro sistema operacional.

O FIC Conectado também é conhecido como: PC Conectado, Computador de 99 reais, AMD PIC, AMD 50×15. O mais interessante é que o aplicativo flashce que grava na eeprom original a nova bios  e o cmd.exe já vem junto com o WindowsCE e só estavam escondidos porque não existia um “Executar”, mas o truque de mudar o Atalho de um aplicativo qualquer para o cmd.exe resolveu tudo.

Os passos são simples:

Fazer o download do firmware novo (aqui tem o link) e copiar para o FIC ( eu utilizei um pen-drive )

Alterar um link do Desktop para rodar o cmd.exe para dar acesso ao console ( Alt + Enter em um os icones do Desktop, Atalho, e mudar para “\windows\cmd.exe” ,  isso mesmo barra invertida )

Rodar o comando: flashce 256 "xpress.rom" 0x01DFD81A noreboot

Note que no comando acima você deve dar o caminho completo para o xpress.rom, ou utilizar o comando cd para chegar no diretório onde ele se encontra.

O retorno do comando deve ser algo como:

CE Bios Flash Utility v1.01.03
Command line checksum: 01DFD81A
Calculated file checksum: 01DFD81A
The actual FLASH size on the board is 256K
FLASH Attempt 1...
FLASH WRITE Successful & Verified!
File checksum: 01DFD81A  FLASH checksum: 01DFD81A
Done!

Pronto agora é só trocar o HD por um com Linux já instalado e ser feliz.

Referências:

http://blogdovicente.com/2008/03/04/desbloqueio-do-computador-de-99-reais-passo-a-passo/

http://mozy.org/amd-pic/

Ubuntu 8.10 server no VirtualBox

Para quem está com problemas para dar o boot do Ubuntu 8.10 no virtual box, aqui vai uma dica bem simples que resolve o problema sem a necessidade de instalar outra versão do kernel. Basta acessar as configurações da máquina virtual Geral -> Avançado e marcar a opção Habilitar PAE/NX que o Ubuntu vai funcionar perfeitamente.

Configurações do meu servidor virtual

Configurações do meu servidor virtual

Significado:

PAE é um sistema pelo qual se extende os endereçamentos de memória RAM nos computadores, possibilitando a utilização de mais de 4GB de memória Ram. Recurso com o qual o Kernel do Ubuntu server já vem habilitado, por isso o Kernel acaba travando na hora do boot.

Open GSM/Telefonia Livre

Já pensou montar sua própria rede de telefonia GSM, hoje a única barreira seria conseguir uma licença da Anatel pois já é possível montar uma estação base GSM com Hardware e Software livres. O funcionamento do sistema foi provado pelo pessoal do projeto OpenBTS que montou e configurou uma estação base de telefonia celular no acampamento BurningMan que se realiza todos os anos nos EUA.

Nesta página eles contam como foi feito o planejamento e a operação da estação, e como fizeram para conseguir uma licença para operar em modo teste na freqüência de telefonia já alocada para uma operadora. Também é importante levar em conta que eles tiveram de enfrentar as altas temperaturas do deserto e duas tempestades de areia.

Ainda não é uma alternativa barata de telefonia, mas é livre.

Read more

Enchente celebridade

Como os últimos dias foram de muita chuva na região do vale do taquari, era só uma questão de tempo para a enchente subir. O rio sobe, o pessoal que mora em área inundável foge de casa carregando tudo o que tem

A rádio local presta uma bom serviço informando a cada pouco o nível das águas, e a previsão de subida ou descida.

Mas o que eu mais gostei foi ver como brotaram câmeras digitais, parece que está todo mundo fotografando a enchente. Em cada esquina tem algúem tirando fotos, como ninguém mais tem o problema de poupar filme fotográfico, os flashs são constantes.

3G, voltou a funcionar.

O meu serviço de internet 3G da claro parece que voltou a funcionar hoje pela tarde. Acabei de conseguir velocidades bem boas até 60KBps.

Notei que agora o modem não fica mais trocando o modo de operação a qualquer instante. Enquanto tem tráfego sendo transferido ele opera em HSDPA, e quando o tráfego para ele muda para WCDMA, agora sim parece estar funcionando novamente.

No entanto acho que isso tem haver é com o dia em que a claro fecha a contagem do tráfego do mês e começa a contar de novo para o próximo período.

Investigando, é Claro!

Eu gosto de saber o que meu computador está fazendo, quais dispositivos estão trabalhando no momento, e também que tipo de informações eles podem me dar. Com  a baixa velocidade da conexão da Claro, resolvi investigar como esse modem se comunica com o computador.

Fácil, ele cria uma interface serial, por onde é feita a conexão PPP, e por ela vão passar os dados, isso qualquer um descobre rapidinho com a ajuda do google. OK, mas se a interface serial está sendo utilizada para trafegas os dados da conexão PPP como que pode no windows o programinha da Claro conseguir os dados relativos a sinal e modo de operação.

Lá fui eu, abre o terminal e manda bala, dmesg…. retorna um monte de informações sem nexo, pelo menos para mim que não desenvolvi o driver desse modem e nem mesmo tenho como conhecer as saidas de debug. Assim inútil.

O modem utiliza uma interface serial, bom, então ele pode ter criado uma outra, vamos ver:

$ ls /dev/tty*

/dev/tty.HUAWEIMobile-Diag
/dev/tty.HUAWEIMobile-Modem
/dev/tty.HUAWEIMobile-Pcui

Cara! Existem mais 2 interfaces, que legal. Vamos fazer um teste simples, não tem como acontecer nada de errado, vamos somente ver os dados passando, com sorte poderei enteder alguma coisa.

cat /dev/tty.HUAWEIMobile-Pcui

^DSFLOWRPT:0000064E,00000017,00000014,00000000000861A6,

0000000000187E50,00003E80,0000DEA8

Essa string nem parece coisa de computador, muito fácil. Na verdade ainda não dá para entender nada. Mas pensando em transmissão tipo telemetria isso começa a ficar mais inteligíve. O que fazer agora? Nem idéia. Bom o Google está ai para esses casos: “HUAWEI e226 DSFLOWRPT”

Algumas bobagens e citações de blog, e no meio disso: HUAWEI E220 Statistics interface

Aprendi algumas coisas, como por exemplo que a cor do LED no modem indica em que modo ele está operando, ou seja, cada vez que muda a cor do LED a conexão foi interrompida por algum tempo, isso pode ser uma das razões para a baixa velocaidade.

Neste link encontrei ainda um software, que foi escrito para Linux, segundo o autor ele lê as informações do dispositivo serial e monta uma telinha bonitinha.

na versão X11

Para poder monitorar o seu sinal no Linux, é só seguir os passos indicados no link, para o Mac OS X é bem simples, basta descompactar o arquivo tar, e rodar no console os comandos: ./configure , make e pronto já pode rodar o binário: ./he220stat

Como você vai notar, um erro aparece na tela, é só rodar também o seguinte comando: # ln -s /dev/tty.HUAWEIMobile-Pcui /dev/ttyUSB1

E agora novamente rodar o binário para ter a saída com as informações: ./he220stat as vezes o nível de sinal demora um pouco a ser reportado.

3G está uma #osta

Sim, desde terça feira a coisa simplesmente não vai, para conseguir escrever este post a espera é de mais de 1 minuto. Em alguns instantes a rede parece que vaidesentupir, mas poucos segundos depois a velocidade volta a ser uma porcaria.

O que pode estar acontecendo é que eu ultrapassei o limite ridículo de 1GB da Claro e eles diminuiriam a velocidade da minha conexão, no entanto acho que ou foi para menos de 128Kbps ou o trafic-shaper é muito mal programado pois dá umas variadas legais.

O 3G da Claro é um quebra galho, e no máximo isso. Caso eu tenha mesmo ultrapassados os 1GB, em menos de 1 semana e meia mostra como é caro, e pequeno esse plano. Caso não tenha passado ainda mostra como a rede é instável.

Em tempo, o modem 3G já travou umas 5 vezes enquanto era utilizado, a solução foi desligar ele da porta USB e ligar de novo.

UPDATE: A conexão continua ruim, e cada vez mais me convenço que é culpa de um trafic-shaper, feito pelo sobrinho do diretor de operações que sabe-tudo-de-computador. As vezes o tráfego chega a 15KBps e em seguida está em 0.