2011-05-26

Android and Motorola ATRIX, Pinguino 8 bits say Hello!

I made a small test with Android, USB OTG cable, a modded USB hub and Pinguino 8bits board.

It uses a small .pde sample:


#define PIC18F4550

int counter = 0;
void setup(){
    Serial.begin(9600);
    Serial.print("Hello Android!");
}

void loop(){
char str[50];
char numstr[10];

str[0]=0;
delay(500);

strcat(str,"From Pinguino: Hello Android: c=");

counter++;
uitoa(counter,numstr,10);
strcat(str, numstr);
strcat(str,"\r\n");

CDC.print(str,strlen(str));

if(counter>10000)
 counter = 0;

}


The Pinguino 8bits board:


Atrix detects Pinguino and loads CDC driver, that phone already have CDC driver... I think it is because Google wants use ADK project too, but yes We did it before! :P


Now I want to see that working...

Man! this works! nice not? 




2011-05-25

Usando a rede do PC Linux via USB no Android (ATRIX)

Bom vamos lá então... rede do cel para o PC por USB ...

Como Eu falei na lista Android-Brasil, para fazer o inverso do tether, e acessar a internet via USB/PC e que o tether deveria funcionar em mão dupla aqui vai um guia rápido, para celulares rootados, testei no meu ATRIX:

Após conectar o celular pela USB, deixe o modo de conexão da USB em nenhum!

1- Baixe e instale o programa http://code.google.com/p/android-wired-tether/ (versão mais nova que tiver lá!)

2- Instale o programa Android Terminal Emulator e o Busybox pelo Market

3- Desligue o WIFI e a Conexão de dados do Celular, assim não vai tentar gastar seu pacote 3G, nem usar o wifi ...

4- No PC! Habilite o roteamento de pacotes no PC (Ubuntu LINUX), precisa de acesso root no PC também (pode usar sudo, os comando abaixo estão sem o sudo, suponho ainda que a rede de saída para internet em seu PC é eth0):

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

5 - Abra o programa WIRED-TETHER

6 - No programa wired-tether ative o tether via USB.... ainda não vai funcionar

7- No PC, aguarde uns segundos até que o PC (Ubuntu LINUX) conecte e digite o comando:

ifconfig usb0

Anote o endereço IP da rede em USB0 aqui é: 172.20.23.253

Se a rede em usb0 não estiver com endereço IP ative-a com (use sudo, se não estiver como root):
dhclient usb0

rode o ifconfig usb0, novamente e anote o IP

7 - Abra o Android Terminal Emulator, (pode ser feito pelo adb shell)
su -
ifconfig usb0

Verifique se há IP e se está na mesma faixa do IP anotado no PC

No celular adicione o PC como roteador para seu celular:

route add default gw IP_ANOTADO

Aqui ficou assim:
route add default gw 172.20.23.253

8- Ainda no celular, é só configurar um DNS ou não encontra os servidores e não navega ...
setprop net.dns1 8.8.8.8
echo "nameserver 8.8.8.8" > /etc/resolv.conf

Testei aqui e funcionou, isso ai é mais ou menos o mesmo que Eu fazia no PalmOS lá no Palm m130... 
Me bati no pondo do DNS pois nem sabia desse comando setprop do Android... 

P.S. Meu ATRIX só tá rootado e esta com ROM retail, não tem mais nada de especial e não instalei nenhum modulo no kernel nem nada... 

Cabo USB OTG (host mode) para ATRIX, Fácil? - DIY!

Aqui vamos, na verdade quem tem um ATRIX já deve possuir uma base que faz isso, mas o legal é fazer na unha (DIY).

Diferente do Xoom o ATRIX precisa de energia no pino 1 do cabo USB OTG, reparem no fio branco ele fornece energia da fonte para o pino 1 da USB.


ALERTA:  Verifique se a fonte do seu USB hub é regulada, ou irá queimar o seu aparelho!


OBS: Para verificar isso use um multimetro, se a medição for por volta de 5V pode usar, se for 7V ou mais é fria, compre outra fonte, ou localize o regulador de tensão para 5V na PCB do USB hub.



Adaptador fêmea-fêmea, mesma coisa, como ainda não chegou meu cabo microUSB para USB A fêmea... preciso deste adaptador. :-P

Pen Kingston 16GB detectado!

Resultado dos comandos "lsusb" e "uname -a", precisa do Busybox, (É isso mesmo BASH no ATRIX e com Advanced Shell do Gentoo/Linux!)

Bagulheira ligada ao USB hub, modificado, reparem nos leds do hub, significa dispositivos detectados.

A bagulheira ai funciona nos mesmo moldes das bases do Atrix, o USB hub modificado continua a funcionar no Xoom, mesmo porque há hubs que fornecem energia sem precisar da ponte lá...

Pronto, agora o próximo passo é ligar uma placa PIC32 (Pinguino32X) ao ATRIX e XOOM! ;-)

2011-05-24

Cabo USB OTG (host mode) para Xoom, Fácil! - DIY!

Eis um passo a passo de como construir um cabos USB OTG (host mode).
OBS: Requer Android 3.1 HoneyComb!
1- Desmonte um cabo micro USB, usei um da Nokia que tinha aqui... usei um estilete para remover a borracha do cabo e abrir a proteção metálica.


 2- Solde os pinos 4 e 5, conforme pinagem na figura 3, mais a frente... pouco espaço? é difícil mesmo... tem de ser só um pingo de solda, clique na foto para um visão melhorada.

 3- Pinos USB os cabo micro USB que têm por ai e vêm com os celulares (by wikipedia)
 4- Depois use um adaptador USB fêmea/fêmea, com ele você conecta um HUB USB e pluga um monte de trecos...


 5- Só plugar no Motorola Xoom....


6- Detecta na hora, como um USB hub! (é isso mesmo instalei o bash no xoom e com os recursos do Gentoo/Linux!)
O cabo sem mais nada é detectado como um USB hub!

7- Só plugar um pendriver e pronto...

8- Como meu pen, é formatado em ext3, montei na unha:
mount -t ext3 -o rw /dev/block/sda1 /mnt/usbOTG

9- HUB USB com fonte externa, Teclado USB e Mouse wireless

10- Temos até um cursor do mouse, e o conjunto funciona em alguns jogos...

2011-05-04

Pinguino32X by OLIMEX.com

Just received my new 2 develop sample Pinguino32X boards, that boards uses a PIC32MX440.
80MHz, 256K of Flash.