segunda-feira, 27 de abril de 2015

O poderoso ESP8266

Estou desenvolvendo um projetinho usando o Raspberry Pi (RPi) e preciso de algum dispositivo com um input (on/off), que faça comunicação sem fio com o RPi e funcione por mais de 9 meses com 2 pilhas. Algo tipo um controle remoto.

MAS eu preciso identificar esses dispositivos individualmente. Até encontrei soluções que atendessem essas características, mas nenhuma delas eu consigo identificar individualmente cada sensor.

Não vou entrar em detalhes porque se você se interessa por TI da mesma maneira que eu vai abrir o seu buscador preferido agora e buscar mais informações, mas o ESP8266 é como um Arduino com wifi embutido. Roda seu programa, tem portas GPIO e ainda tem o Wifi.

Eis aqui o link que me apresentou essa maravilha.

O objetivo desse post é ficar como referência para mim e a quem interessar possa, como fazê-lo funcionar. Então irei atualizando esse mesmo post conforme eu for descobrindo mais coisas

A versão do ESP que estou usando é a 12 pois dizem que é a mais estável. Pelo que andei lendo, quanto maior esse número, mais atual, confiável e menos bugado é a utilização do chip. Parece que é como se o fabricante do ESP8266 tivesse lançado o chip sem manual e a cada vez que um conjunto de novos recursos são descobertos ou melhor utilizados algum outro fabricante lança uma nova versão da placa explorando tudo o que foi descoberto até o momento.

O que estou escrevendo aqui é só o MEU entendimento sobre esse chip e pode estar completamente errado. Como eu disse, fique a vontade para usar o seu buscador predileto e tirar as suas próprias conclusões.

Então resumindo, a partir daqui vou tentar mostrar, o mais mastigado possível, como utilizar o ESP-12 que foi a versão que eu escolhi para tentar utilizar no meu projeto.

Só para constar...

Antes de fazer uma nova publicação em alguns minutos, estava relendo o post sobre como compilar o ffmpeg.

Ao reler tudo, cheguei a conclusão que depois vou dar um jeito de sair do Blogger para alguma ferramenta mais moderna como o Wordpress, sei lá.

Não que eu ache esse design aqui ruim mas preciso de alguma maneira fazer com que as linhas de comando fiquem em apenas uma linha ou algo do tipo. Se um usuário novato tentar utilizar as instruções aqui vai se enrolar.

Agora vamos ao próximo post que é sobre o ESP8266.

quinta-feira, 26 de março de 2015

Raspberry Pi: Compilando o ffmpeg

Estava utilizando o avconv (Que pretende ser o substituto do ffmpeg em algumas distros Linux) para converter alguns arquivos de vídeo e áudio, até que precisei usar o avserver e não encontrava material decente na internet de como utiliza-lo, além de uma mensagem dizendo:
WARNING: avserver is unmaintained, largely broken and in need of a complete rewrite. It probably won't work for you. Use at your own risk
Mediante isso resolvi compilar o ffmpeg manualmente pois o ffmpeg que acompanha o Raspbian funciona, mas informa que devo usar o avconv em seu lugar.

Para minha surpresa, após compilar o ffmpeg o mesmo chega a ser 2x ou mais rápido que o avconv rodando no mesmo hardware.

Antes de começar vou postar as 2 fontes que utilizei que dão o passo a passo de como compilar o ffmpeg no Raspberry. Fonte 1 e Fonte 2

Originalmente eu iria utilizar o passo a passo da fonte 2 mas alguns links estão quebrados então utilizei a fonte 1. MAS, a fonte 2 foi necessária pois eu preciso do suporte ao alsa (Advanced Linux Sound Architecture) e a fonte 1 não adiciona esse suporte.

Seguindo os meus passos você também terá o suporte ao filtro drawtext do ffmpeg pois em ambas as fontes acima esse filtro não é adicionado e no meu caso eu também preciso deles.

Se você olhar a fonte 1, perceberá que aqui é basicamente um copiar/colar dele com apenas alguns adicionais do suporte ao alsa e do filtro drawtext.

Mãos a obra.