Spice XT300 - Jornada de Recuperação do Android

Imprimir
Categoria: Diversos
Publicado em Quinta, 30 Junho 2011 Escrito por Renê de Souza Pinto

Este artigo mostra o passo-a-passo para recuperar seu celular Motorola Spice XT300 com um sistema de arquivos corrompido, seja devido a uma atualização falha ou alteração/remoção de arquivos da raiz do android, principalmente se o RSDLite não funciona para gravar uma nova ROM no celular...

 

Não custa nada lembrar:

AS INFORMAÇÕES CONTIDAS NESTE TUTORIAL SÃO APENAS UM ESTUDO DE CASO, NÃO ME RESPONSABILIZO POR QUAISQUER DANOS QUE O USO DESTAS INFORMAÇÕES POSSAM CAUSAR NO SEU CELULAR. USE POR SUA CONTA E RISCO!

Para ir direto ao assunto, gotoTutorial ;)

BEGIN estorinha:

Há uns 5 meses atrás (Fev/2011) eu deixei para trás meu Motorola E398 que muito bem me serviu durante anos. Rodava um firmware customizado nele, com várias alterações para expandir as funcionalidades do celular. Aliás, para quem ainda tem esse modelo, o site http://www.e398mod.com/ é fonte mais do que recomendada, o E398 é muito customizável, inclusive cheguei a gravar um firmware nele que quase "matou" o celular, nem ligava mais... testpoint com dois pinos curto-circuitados e pronto! Lá estava o bootloader para gravar o firmware correto. Mas depois de tanto tempo eu decidi partir para o mundo dos smartphones. Comprei um Motorola Spice XT300, optei por ele pelo preço e pelos reviews que eu li/assisti na época. Depois de tanto "fuçar" no meu celular antigo decidi que seria apenas usuário do Android.... eu bem que tentei, mas alguns dias atrás fui rodar o Skype nele e o áudio do meu microfone ficava horrível, aliás, praticamente sem áudio e com som "picotado". Só funciona no viva-voz ou com o fone de ouvido conectado. Perguntando pro Google, descobri que era um BUG na libaudio.so da ROM do Spice. Okay, pesquisando mais um pouco, fui afobado e baixei uma libaudio.so compilada com o BUG concertado. Acontece que não era pra versão do meu Android... fiz cópia de backup, mas mesmo assim, depois que copiei o arquivo novo, o celular travou geral e quando eu resetei, adivinhem.... cai no tão temido M da Morte...... pra quem não sabe o M da Morte é quando você liga seu celular e ele não sai do símbolo da Motorola (M).

END estorinha.

Tutorial:

Vários tutoriais na internet utilizam o RSDLite para gravar uma nova ROM (arquivo no formato .sbf) para o Spice corrompido. Entretanto, apesar do RSDLite reconhecer meu Spice, na hora de gravar a ROM acontece o seguinte erro: "Unable to retrieve interface handle. (0x7027)". Testei diversas versões do Driver da Motorola e do RSDLite, inclusive em versões de Windows diferentes também: Win7 e XP. Todos apresentavam o mesmo erro.

Eu já tinha feito atualização pelo Software da Motorola, então meu Android ainda era o 2.1 mas com algumas correções de BUGs. Tinha feito também um dump da minha ROM com o romdump, então eu tinha pelo menos os arquivos:

boot.img

recovery.img

system.tar.gz

Obtidos com o romdump. Após meu Spice ter sido corrompido, eu ainda conseguia entrar nos modos de fastboot/recuperação dele:

Entrando em modo fastboot:

1) Com o celular desligado, pressione as teclas VolumeUP e Power

2) Mantenha ambas as teclas pressionadas até o celular ligar e entrar em uma tela azul (tela do fastboot)

3) Você verá uma tela como esta:

Spice XT300 fastboot

Entrando no modo de recuperação:

1) Deslize o celular para acessar o teclado

2) Pressione a tecla X e a tecla Power

3) Mantenha ambas as teclas pressionadas até o celular ligar e entrar no modo de recuperação

4) Você verá uma tela como esta:

Spice XT300 Recovery

5) Se quiser pressione Alt+L para entrar no menu do modo de recuperação

No modo de recuperação é necessário um arquivo update.zip (assinado digitalmente) para fazer a atualização do sistema. Seria muito simples se existisse um update.zip na internet para o Spice.... cansei de procurar e não achei nenhum que funcionasse... como a atualização pelo RSDLite não funcionava a única maneira era utilizar o fastboot para gravar as imagens boot.img e system.img.... acontece que eu não tinha a imagem system.img, tinha apenas o system.tar.gz, que é simplesmente a raiz do sistema compactada.

Pesquisando mais um pouco, vi que a partição do sistema é formatada em YAFFS2, um sistema de arquivos de alta performance, utilizado em memórias NAND... então baixei o utilitário yaffs2 utils e gerei um system.img a partir da minha raiz extraída com o romdump. Gravei a imagem com o fastboot, mas não funcionou.

Quase perdendo a esperança, descobri este link. É por isso que amo Software Livre... vale lembrar que quando uma empresa inclui software licensiado pela GPL em seus produtos comerciais, ela é obrigada a divulgar pelo menos a parte aberta utilizada em seus produtos. A Motorola faz isso, e o link citado contém parte do código da ROM do Spice XT300. No meio dos arquivos disponíveis para download, está o yaffs2.tgz (http://sourceforge.net/projects/xt300.motorola/files/XT300/SESLA_U3_01.72.0/yaffs2.tgz/download), baixei ele, porém o mesmo não compilava. Fiz pequenas alterações no código, compilei ele, gerei a imagem a partir da minha raiz extraída com o romdump, gravei com o fastboot e funcionou! Consegui ressuscitar meu Spice XT300.

Então se seu Spice está na mesma situação, segue abaixo o passo-a-passo para a recuperação:

Material necessário:

0) Conhecimentos básicos de Linux

1) Computador com Linux (usei o Gentoo x86-64, mas deve funcionar sem problemas em outras distros)

2) Cabo micro-USB para ligar seu celular na USB do computador

3) Software fastboot para Linux, que você pode baixar aqui.

4) Software yaffs2 para o Spice. Você pode baixar a versão que eu modifiquei e que compila: código-fonte ou a versão compilada (para x86-64).

5) Se preferir, as minhas imagens prontas (boot.img, recovery.img e system.img) podem ser baixadas aqui.

Preparando a imagem system.img

Se você quiser utilizar (por sua conta e risco) o system.img gerado a partir da minha ROM, os passos a seguir não são necessários, se você já tem o boot.img e o system.tar.gz da sua ROM, basta preparar a imagem system.img:

1) Para compilar o yaffs2:

# tar -xvjf yaffs2_SpiceXT300.tar.bz2

# cd yaffs2_SpiceXT300/utils

# make

Note que dois executáveis serão gerados, o mkyaffs2image é o que deverá ser utilizado.

2) Extraia a raiz compactada para uma pasta (utilizei romfs, e não esqueça o parâmetro -p para preservar as permissões dos arquivos ao descompactar):

# mkdir romfs

# sudo tar -xpzf system.tar.gz -C romfs/

3) Gere a imagem system.img com o mkyaffs2image:

# sudo ./mkyaffs2image romfs/ system.img

4) Pronto, você já tem seu system.img.

Gravando as imagens no celular

Com os arquivos boot.img e system.img prontos, basta proceder a gravação no celular:

1) Coloque seu celular em modo fastboot

2) Conecte o cabo USB no computador

3) Utilize o fastboot como root (pois provavelmente seu usuário não terá acesso ao dispositivo /dev/ttyUSB0):

# sudo ./fastboot devices

Se a saída for algo assim:

????????????    fastboot

É porque ele já reconheceu seu celular. Basta proceder com a gravação das imagens:

# sudo ./fastboot erase boot

# sudo ./fastboot erase system

# sudo ./fastboot flash boot boot.img

# sudo ./fastboot flash system system.img

Note que aqui fizemos a gravação de ambas as imagens, se o problema for apenas o corrompimento do sistema de arquivos, você pode gravar apenas o system.img. Os dois primeiros comandos são para limpar as partições atuais.

Se tudo deu certo (ele respondeu OK), reinicie o celular:

# sudo ./fastboot reboot

4) Pronto! Seu Spice está vivo novamente! Note que é normal a primeira inicialização demorar um pouco, seja paciente e aguarde até que o celular inicie normalmente.

 

Notas finais:

Este artigo relatou apenas a minha experiência na recuperação do meu Spice XT300. O intuito é ajudar quem estiver passando pelo mesmo tipo de problema. Não conheço muito de Android, então se escrevi alguma besteira, por favor, os comentários com sugestões, críticas, opiniões, etc, são muito bem vindos. Não deixe de comentar também se este tutorial também funcionou para seu Spice XT300.

Buy cheap web hosting service where fatcow web hosting review will give you advices and please read bluehost review for more hosting information.
Copyright © 2017 Renê de Souza Pinto. Todos os direitos reservados.
Joomla! software livre. Licença GNU GPL.
Free Joomla Templates designed by Web Hosting Top