quarta-feira, 1 de janeiro de 2014

BBB - Acessórios

Acessórios

Bom, a primeira coisa que eu tentei fazer foi procurar algo para servir como fonte. Encontrei nas minhas tralhas uma fonte de um conversor SATA/IDE para USB que utilizava para ligar meus velhos HDs IDEs na USB do notebook para utilizá-los como HDs portáteis. Como hoje estão aposentados, resolvi utilizar a fonte para alimentar a placa do Beaglebone. A partir dela consigo tirar até 2A da linha de 5V, o que é mais do que suficiente.

Fonte utilizada para alimentação.
A dificuldade foi para adaptar o plugue que faz a interligação com a placa. Encontrei uma fonte que estava queimada, removi o seu cabo e ví que o plugue dele era o que servia na entrada de 5V da placa do Beaglebone. Fiz uma adaptação na fonte e o resultado não foi lá muito elegante, mas completamente funcional (que é o que importa no fim das contas!).

Adaptação do plugue.

Resultado final: quilômetros de cabos!

No final fiquei com quilômetros de cabo para levar alimentação à placa. Eu queria na verdade era ter aberto a fonte e colocado no lugar do cabo original já o cabo final com o plugue que vai na placa. Mas levando em conta a experiência de se abrir esse tipo de fonte (veja aqui), eu acabei desistindo da ideia e, pelo menos por enquanto, ficar utilizando do jeito que está mesmo.

Para utilizar a saída de vídeo tive que bater muita perna para encontrar um cabo com conector do tipo micro-hdmi. Não consegui achar fácil nas lojas de informática comerciais daqui de Recife. Por sorte resolvi entrar numa loja de conveniência (MultiCoisas) e encontrei um adaptador micro-hdmi para hdmi.

Adaptador micro-hdmi.

Como a placa só disponibiliza uma porta USB (na verdade são duas, mas uma delas fica reservada para interface de desenvolvimento), resolvi comprar um conjunto de mouse/teclado sem fio para testar com a placa. O conjunto que comprei foi o "Wireless 800", da Microsoft.

Teclado + mouse.

Teste

Bom, com os acessórios em mãos fiz o teste de "sanidade" (ver se dispositivo está ligando) ligando a placa numa das entradas HDMI da TV utilizando o conjunto teclado/mouse e sendo alimentado pela fonte que adaptei. Na primeira vez que liguei nenhuma imagem apareceu apesar de os LEDs da placa ficarem acesos indicando atividade. Desliguei a placa, dei um reaperto no cabo HDMI e liguei novamente o conjunto. Dessa vez funcionou!
O conjunto teclado/mouse funcionou perfeitamente, não tive nenhum problema. É satisfatório ver a placa funcionando e tudo acontecendo...

Sucesso!
Bom, não fucei muito ainda. Ainda não sei bem por onde começar... Bom, na verdade sei sim, vou começar a ler este livro, me parece ser um bom ponto de partida (sem falar que ele vem com um capítulo só com python, meu principal interesse aqui...). A distribuição Ängstron que acompanha a placa já vem o versão 2.7.3 pré instalada.

Python 2.7.3 pré-instalado

terça-feira, 24 de dezembro de 2013

BeagleBone Black

Andei bastante tempo lendo sobre essas plataformas computacionais abertas que existem por aí. No momento em que escrevo já há uma penca delas espalhadas mas a principal, ou pelo menos a que foi a pioneira e mais popular, é a Raspberry-pi. Por conta de algumas coisas que eu tenho em mente fazer, decidi comprar uma para tentar brincar um pouco e ver até onde dá pra ir. Entretanto, com tantas opções por aí foi difícil bater o martelo. Resolvi listar algumas coisas que eu achei importante, colocar na balança e, depois de fazer comparações, ver o que mais se adequava às minhas necessidades. 

Verifiquei itens como tamanho (o menor possível, de preferência), consumo (não muito grande, não queria andar com uma fonte de notebook pra alimentar a placa, na verdade gostaria de poder até usar baterias), grande quantidade de pinos de IO (para não limitar as possibilidades de uso), hardware aberto (o principal fator na verdade, gostaria de poder explorar tudo o que eu tivesse vontade, sem limitações) e que tivesse uma grande comunidade de usuários (e consequentemente ter mais fontes de informações disponíveis). Fechei meu leque em três opções: Raspberry-pi, Beaglebone Black ou Cupieboard.

Raspberry-pi
Beaglebone Black

cupieboard

Não vou fazer comparativos entre as placas, isso tem aos montes e a um clique de distância através do google. Mas aqui tem dois que eu gostei de ler, esse e esse aqui. Só não acho válida a comparação que muitos fazem entre um Arduíno e essas placas, são coisas totalmente diferentes e não se comparam. Além disso, o que é melhor para um pode não ser para outro pois há diferenças entre as necessidades de cada um. Na minha visão, para quem deseja de fato usar a placa como um PC, sem dúvida a melhor de todas é a Cupieboard por tudo o que ela oferece. Entretanto, para as minhas necessidades eu optei por comprar a Beaglebone Balck. Aproveitei uma promoção da Farnell em que o frete era "grátis" (bom, não existe almoço de graça, né? ele está embutido no preço do produto, mas mesmo assim ficou mais barato do qeu estava anteriormente). Fiz a compra no dia 19/12/2013 e no dia 23/12/2013 já estava com a placa em minhas mãos, mesmo tendo passado por um fim de semana e estar perto da época do natal. Achei muito bom isso!

Encomenda.
Beaglebone.
O preço que paguei na placa R$220. Ao abrir dá para ver que fizeram muitos esforços para fazer o preço da placa ser o menor possível (U$45 lá fora). Não vem com adicional nenhum, a não se um cabo USB que, a princípio, basta para fazer a placa funcionar no seu computador. Mas isso não é o suficiente. Tive algumas dificuldades para fazer o conjunto funcionar como gostaria. Mais na frente eu escrevo sobre isso.

terça-feira, 17 de dezembro de 2013

Mini-Review - Headset Bluetooth SX-910A

1. COMPRA: Compra feita no Dealextrem. Este é o link para o produto (ativos em 12/2013).

2. ENTREGA: Entrega foi até rápida. Levou praticamente um mês para chegar em minhas mãos (ainda mais com as mudanças que os Correios fizeram nesse período como corte de horas extras, redução de quadro, etc...).



O produto veio embalado num daqueles sacos de papel com forro interno de plástico com bolhas. A caixa interna em que veio o fone estava amassada, já era de se esperar, mas nada demais pois o produto estava inteiro. 

Embalagem encomenda.
Embalagem produto.


3. O PRODUTO: Bom, esse headset não tem nada de diferente dos que já existem por aí, a não ser o formato. Vem com um carregador de parede e um cabo que pode ser ligado a este carregador ou à porta USB de um computador, som de carro, etc. A caixa acompanha um manual em chinês/inglês e mais nada.



4. PRÓS: Achei a qualidade do conjunto bem razoável com um aspecto relativamente robusto, isso foi bom pois eu esperava que fosse pior. A qualidade do som foi muito boa. Por conta do tamanho dos fones ele tem uma reprodução de graves muito boa, já para os agudos achei que podia ser um pouco melhor. Mas isso é uma coisa relativa, se seu aparelho tiver um equalizador isso pode ser alterado e a percepção vai melhorar ou piorar. 
O headset é bastante leve e não incomoda nada quando acomodado na orelha. Dá até pra esquecer que está utilizando. Entretanto sei que isso também é uma coisa pessoal, mas comparando com o S9, que é mais pesado e exerce maior pressão quando na orelha, eu o achei bem mais anatômico. 

5. CONTRAS: Não estou acostumado com o formato dos fones, o S9 possuía fones menores e ficavam na parte interna da orelha. Este possui fones bem maiores e ficam na parte externa. Gostaria que a almofadinha que forra os fones fosse removível pois gostaria de poder fazer limpeza dele e dos fones após uso em corridas. Sei que o suor vai ser um problema pois, apesar das demais partes me parecerem ser bem vedadas, essa espuminha vai acabar "chupando" a umidade do suor para dentro dos fones caso não seja removida e limpa.
Achei os botões um pouco duros, se você apertá-los enquanto estiver utilizando no ouvido você vai ouvir um "clique" bem alto e ainda pode ser que machuque um pouco a orelha pela força que tem que fazer.
O ajuste de volume poderia ser um pouco mais fino. A diferença de volume entre um passo e outro está grande demais, para o meu gosto ele poderia ser menor.
Usar esse fone para escutar áudio de vídeos pode ser meio esquisito. Há um delay de cerca de meio segundo entre o som e que se vê na tela (percebi isso vendo vídeos no youtube). Isso deve ser devido a alguma "bufferização" feita pelo headset (bom na verdade todos fazem isso, mas o S9 que eu utilizava não ficava tão evidente isso...). Para aqueles mais perfeccionistas ou detalhistas, isso causa um incômodo grande.
Por conta do modo como o headset se adapta ao contorno das orelhas vai ser meio complicado utilizar óculos e ele ao mesmo tempo. A mim incomodou bastante o uso simultâneo dos dois.
O plugue USB para recarregar o fone é num formato diferente dos que eu já tinha visto, então isso pode ser uma fonte de chateação caso se perca o cabo que acompanha o produto.

6. RESUMO: Apesar de ter destacado mais pontos contra do que a favor, eu estou muito feliz com o produto. Falta apenas passar no teste de uso contínuo pra ver se vai aguentar o tranco do suor durante as corridas.Mas se você for usá-lo apenas "indoor", eu não tenho dúvidas que irá atender muito bem (levando em conta a relação preço/qualidade do produto).

7. NOTA: Para as minhas necessidades (usar durante corrida), eu ainda tenho minhas dúvidas se irá valer a pena, mas se o uso for algo diferente disso, eu penso que esse produto atende muito bem e por uma pechincha de preço. Ganha um 9,0.

sábado, 7 de dezembro de 2013

Novas atualizações


Depois de um bom tempo sem colocar algo novo aqui vou ver se consigo escrever algumas coisas que estão na minha cabeça. Tenho que terminar o que comecei em relação à geração de sinal PWM utilizando o MSP430. Cheguei a escrever alguma coisa mas não publiquei pelo fato de querer simplificar mais o código.
Há também algumas anotações sobre um analisado lógico clone do Usbee ax que comprei já faz algum tempo . Utilizei ele apenas em alguns testes para entender seu funcionamento e já posso adiantar que ele é uma mão na roda e que funciona muito bem.

Mas provavelmente meu próximo post esteja relacionado a um headset que eu comprei esses dias. Já fazia tempo que estava procurando um no estilo "bom e barato" para substituir o meu Motorola S9 que já estava cansado de guerra. Enquanto eu o usava apenas "indoor", ele estava funcionando satisfatoriamente, mas quando eu passei a utilizá-lo para me acompanhar nas corridas que comecei a fazer, os problemas começaram a aparecer. De repente comecei a ter problemas no pareamento do headset como meu celular e os botões de volume começaram a falhar. Isso aconteceu por conta do meu suor ter começado a infiltrar na "circuitaria" do fone e ter corroído a tinta condutora dos contatos dos botões. Ainda tentei abrir o fone para recuperar alguma coisa (mania de tentar fazer tudo com as próprias mãos), mas não ficou muito legal pois, ao abri-lo, piorei o isolamento que havia entre as partes de borrachas do conjunto e a "circuitaria", facilitando ainda mais a entrada de suor para as partes protegidas. Decidi partir para outra e apostar nesse fone de ouvido que achei no dealextrem.

Fone bluetooth SX-910A


Vou fazer um mini-review do mesmo e deixar aqui.

sexta-feira, 30 de agosto de 2013

Mini-Review - Servidor NAS

1. COMPRA: Os motivos da compra eu já falei aqui nessa postagem. Andei dando uma fuçada por aí e acabei ficando motivado por essa e essa postagem para comprar algo do gênero. Dando uma olhada no dealextrem achei o NAS abaixo e arrisquei comprar para ver se resolvia meus problemas de compartilhamento de arquivos em casa.

NAS Dealextrem tema dessa postagem.

2. ENTREGA: Entrega até que foi relativamente rápida. Vinte dias após a postagem o produto já estava aqui em minhas mãos.Ele chegou numa daquelas embalagens amarelas com plástico bolhas, bem protegido e bem acondicionado. Dentro, numa embalagem de plástico, estava o NAS, fonte de alimentação, um pequeno cabo de rede na cor do módulo (pequeno mesmo, acho que não tem nem 20 centímetros!) e um mini-CD com manual de utilização e alguns programinhas.

Embalagem do NAS.

3. O PRODUTO: O dispositivo veio acompanhado de uma fonte a alimentação, um pequeno cabo de rede, um mini CD e manual do usuario. Usei as informações desse forum para atualizar o firmware que veio com o produto que me foi enviado (http://club.dx.com/forums/forums.dx/threadid.1221812) e a execução deste procedimento não apresenta muitos mistérios. Ela é feita na própria interface web do NAS, bastando apenas apontar o binário com o firmware e esperar o dispositivo reiniciar sozinho.

Ele possui duas interfaces USB, sendo uma exclusiva para impressora e outro para um dispositivo de armazenamento.  Há também um slot para cartão de memória disponível, contudo não se pode fazer uso do mesmo junto com o dispositivo de armazenamento da USB.

Não utilizo tudo o que o produto oferece, na verdade eu só utilizo o SAMBA para poder compartilhar arquivos dentro de minha rede interna junto com a função de compartilhamento de impressora. Utilizei o cliente torrent para testes e comprovar sua funcionalidade e não tive do que reclamar.

Para usar o SAMBA não tem muito segredo, basta entrar na interface web do servidor e configurar rede e usuários. Já o compartilhamento de impressora eu achei meio chato de fazer em cada máquina, mas com ajuda de um tutorial que veio junto com o CD que acompanha o produto acabei fazendo tudo tranquilo.

Testei rapidamente também a sua função de Media Server. Para isso, coloquei alguns arquivos mp3, algumas fotos (em jpeg) e  (filmes em avi e mkv) num pendrive, deixei as pastas desses arquivos como publicas e, através da rede sem fio, tentei acessar todos estes arquivos pela minha TV (minha TV tem wi-fi integrado...). O resultado não poderia ser melhor, tudo funcionou de primeira e de maneira satisfatória. O arquivo mkv que utilizei tinha resolução de apenas 720p e reproduziu muito bem. Não sei se com resolução maior a coisa ainda permaneceria tão fluida. Não me preocupei muito com isso por conta de eu usar um HD plugado na TV para ver meus arquivos e não pretender usar o dispositivo como media server.

Não dá pra esperar muito desse pequeno servidor. Coisas como RAID, regras para backup automático ou outras funções que se encontram nos servidores "de verdade" não estão disponíveis aqui.

4. PRÓS: Não achei nada que represente uma grande  qualidade no dispositivo. Gostei dele por ser simples de utilizar e realmente fazer o que promete.

5. CONTRAS: Nao gostei muito dos leds, preferia que houvesse apenas um para indicar se estaria ligado ou não. Mas isso é coisa boba e também é pessoal. Outro ponto que não agradou muito é o fato de que não é possivel utilizar acesso simultâneo a dispositivo de armazenamento plugado na USB e cartão de memória. Além disso, ele não lê dispositivos formatados em NTFS. Pode ser que haja um outro firmware em que essas pequenas coisas estejam implementadas. Fiz atualização para a versão mais nova no momento em que recebi o produto e posso afirmar que nessa eles não funcionam.
Achei o plugue da fonte esquisito, ele não entra totalmente no case do servidor e fica boa parte para o lado de fora. Veja na foto abaixo como é que ficou.

Plugue da fonte de alimentação do NAS fica com boa parte exposta.

6. RESUMO: Produto é simples mas faz o que promete. Acho que a relação custo benefício é bastante atraente e que, pelo menos para o uso que farei, valeu muito a pena.

7. NOTA: 8,0 por não ter suporte a NTFS.

domingo, 18 de agosto de 2013

Mini-Review - Módulo Bluetooth


1. COMPRA: Comprei no goodluckbuy já faz bastante tempo. Fui procurar a data da compra e ví que mês passado (Julho/2013), fizeram dois anos de aniversário da compra! Dá pra notar que adiei por um bom tempo uma brincadeira com eles. Do mesmo jeito que eu tinha encostado aqui esse módulo, eu devo ter outras coisas também. Quando eu tiver um tempo vou fazer uma varredura nas minhas tralhas.
O link da compra não está mais disponível, possivelmente o vendedor já acabou com o estoque de módulos dele.

2. ENTREGA: Pelo tempo que faz que eu fiz a compra eu já nem lembro mais como é que foi a entrega. Mas deve ter sido o tempo padrão que se leva para as coisas saírem lá da China para chegarem aqui, coisa um mês...

3. O PRODUTO: Já comentei algumas coisas sobre esse módulo em uma série de postagens. Para ler basta clicar nos links a seguir: primeira, segunda e terceira postagens.
A placa do módulo possui dois pequenos chips, um deles é o BC417 que é o core bluetooth em si e o outro é o MX29LV800CBXEC, uma memória flash externa que guarda o firmware carregado pelo módulo e algumas configurações de funcionamento.
Olhando o datasheet do BC417 (veja aqui), dá pra ver que ele é bem poderoso (interface usb, i2c, serial, vários pinos de entrada/saída, etc...). Mas a única coisa que se vai conseguir fazer utilizando o módulo é estabelecer comunicação utilizando uma porta serial RS232 virtual sobre a conexão bluetooth disponibilizada pelo BC417.
Um dos motivos para essa limitação é a versão de firmware que acompanha as placas que eu tenho em mãos. Ele possui um conjunto limitadíssimos de funções ceifam boa parte da potencialidade do conjunto (o que é de certa forma até frustrante...). Fazendo algumas pesquisas pelo google ví que existem outros módulos com outras versões de firmware que dão mais liberdade de configurações.

4. PRÓS: A facilidade de uso é muito grande, não há grandes mistérios para fazer a comunicação entre o módulo e qualquer outro dispositivo utilizando bluetooth. Basta alimentar o módulo e enviar dados pela sua interface serial que o que entra em um lado vai sair no outro. Não é preciso fazer configurações, nenhum setup inicial ou preparação (a não ser que se deseje alterar as configurações iniciais de comunicação serial, claro).
O preço, como de costume para a maioria das coisas xing-ling, é outro atrativo. É bastante barato.

5. CONTRAS: Firmware que limita o acesso às demais funções do módulo. Dá pra brincar muito mais utilizando as versões melhores de firmware do conjunto. Para “hobbysta” como eu, o acesso aos pinos do módulo não é lá muito amigável, é preciso ter um pouco de paciência e destreza se quiser fazer uma coisa que o deixe mais fácil de manipulá-lo. Mas isso também é uma coisa que só se faz uma vez, tendo um ferro de solda com bico fino a coisa não fica muito traumática de se resolver.  Além disso, já existem opções mais amigáveis nesse sentido a disposição a venda.
O que me deixou um pouco frustrado também foi o alcance que consegui utilizando o módulo emparelhado com outro dispositivo. Quando emparelhado com um computador o alcance foi um pouco maior do que em relação a um celular, mas não passou de coisa de uns 5 ou 6 metros sem obstáculos (pra falar a verdade acho até que essa distância é razoável para os bluetooth dessa categoria, já li sobre isso em algum lugar...). Tenho um fone de ouvido da Motorola que costumo emparelhar com o notebook e sair andando pelo apartamento sem perder o link...

6. RESUMO: O módulo é bem legal para fazer algumas brincadeiras, mas a versão do firmware das que eu comprei me deixou um pouco frustrado. Para quem for comprar algum módulo desse, eu recomendo que preste atenção para ver qual é a versão do firmware que vem nele. Há a possibilidade de se fazer mudança desse firmware você mesmo, mas pelo menos eu não tenho saquinho pra isso...

7. NOTA: O módulo realmente faz o que promete e simplifica bastante as coisas. Só que para mim simplificou demais. Vou dar um 8,0.

sexta-feira, 9 de agosto de 2013

MSP430: gerando PWM - Parte I

Por onde começar...

O meu interesse em gerar sinais PWM  (Pulse Width Modulation), é por conta da necessidade de fazer o controle de velocidade dos motores que estou usando para fazer o meu carrinho andar (veja aqui). Não vou entrar muito em detalhes sobre PWM pois não é esse o meu objetivo. Informações sobre o que é PWM, fundamentação teórica, aplicações e mais informações podem ser achadas aos monte no google.
Esse tipo de sinal, por ser filosoficamente digital, é bastante simples de ser gerado por microcontroladores, mesmo os mais simples, bastando para isso que ele tenha um timer em sua arquitetura interna.
Acho que a melhor maneira de aprender como utilizar os recursos do dispositivo é lendo a documentação disponibilizada pelo fabricante. Como estou utilizando o microcontrolador que veio junto com a placa Launchpad MPS430, o MSP430G2553, baixei a documentação do mesmo e pude encontrar tudo o que foi necessário para dar o ponta pé inicial (além de que há muita coisa disponível e já pronta na internet, novamente o google pode ajudar bastante...).
As informações sobre esse microcontroladores são encontradas em dois documentos: o primeiro é um datasheet para o dispositivo em questão e outro trata-se do manual da família à qual o dispositivo pertence. Os dois volumes se complementam, então é necessário ter os dois em mãos. Para o microcontrolador que utilizei, os arquivos são os dos links abaixo:


Gerando PWM

Como falei, para gerar sinais PWM num microcontrolador basta que se tenha disponível um timer em sua arquitetura interna e no MSP430G2553, que vem junto com a Launchpad, temos dois disponíveis.

Arquitetura MSP430G2553 retirada do datasheet do dispositivo.

Toda a informação dos modos de operação dos timers pode ser encontrada no manual da família do dispositivo, no capítulo 12 (Timer A). Para mais informações aconselho uma leitura desta seção.

 

Modo de operação do Timer

Segundo tabela do manual de operação da família, existem 4 modos de operação para o Timer deste dispositivo. Achei o modo "Up" mais interessante pois consigo ter o controle melhor do período do Timer e consigo gerar freqüência desejada mais facilmente (pelo menos no meu modo de pensar e raciocinar...). Neste modo de operação o contador do timer é resetado sempre o valor de TACC0 é atingido (TACCR0 - Timer A Capture/Compare Register 0). Abaixo cópia do trecho específico do manual descrevendo os modos de operação do Timer.

Blocos de Captura/Comparação (Capture/Compare Blocks)

O modo de Captura é utilizado para gravar eventos relacionados a temporização, podendo ser utilizados para contagem de eventos, cálculo de velocidades ou medição de tempo. Já o modo de Comparação é utilizado para gerar interrupções a intervalos regulares de tempo ou gerar sinais PWM. Logo, este é modo de operação que nos interessa aqui.
Cada bloco possui uma unidade de saída (output unit) que é utilizada para gerar sinais de saída como PWM, por exemplo. Essa saída pode operar nos 8 modos descritos no manual da família e reproduzido abaixo.

Output modes para os módulos de captura/comparação.

Escolhi operar no modo Reset/Set e por conta disso teremos algo parecido com o que mostra a figura seguinte como sinal geral pelo timer.

Sinal PWM gerado usando as configurações descritas.


No MSP430G2553 temos 3 blocos de Captura/Comparação. A minha idéia é utilizar o bloco 0 para estabelecer a freqüência de dois sinais PWM (TACCR0), e os outros dois módulos para gerenciar o duty-cycle de maneira independente desses dois sinais (TACCR1 e TACCR2).

Codificando...


Bom, com o básico do funcionamento do hardware apresentado já dá pra codificar e fazer a coisa acontecer. Esse é o tema do próximo post sobre esse assunto.