Se, depois de ressetar para as configurações de fábrica, o Wei Dream acusa “IMEI inválido” e não conecta mais às telecoms, pode ter perdido os números IMEI, que são os números de série únicos para cada slot de chip do sistema de telefonia celular. Se estes números não forem corretos, as telecoms não fornecem linha. Eles servem para se pedir o bloqueio de aparelhos roubados.
Para verificar os IMEI, disca-se para *#06#. Devem aparecer dois números IMEI, um para cada chip. Estes números devem ser os mesmos impressos dentro do aparelho, embaixo da bateria. Se não forem, recupera-se os IMEI. Os passos são os seguintes.
Copia-se num papel os números IMEI do aparelho, recoloca-se a bateria e liga-se o aparelho.
Instala-se, pelo Google Play, um aplicativo emulador de terminal como o Terminal Emulator. Roda-se o aplicativo. Aparece uma tela azul com o caracter de prontidão “$”, que é a interface por linha de comando (CLI) do Linux. Para se gravar o IMEI do slot 1, digita-se:
$ echo 'AT+EGMR=1,7,"35182904XXXXXXN"' >/dev/pttycmd1
Onde “35182904XXXXXXN” é o número IMEI único, que, evidentemente, varia de aparelho para aparelho. Este número deve estar entre aspas duplas, e o comando AT completo deve estar entre aspas simples. Deve-se tomar cuidado com as aspas.
Para o IMEI do slot 2, substitui-se 7 por 10:
$ echo 'AT+EGMR=1,10,"35182904XXXXXXN"' >/dev/pttycmd1
Feito isto, desliga-se e religa-se o celular (como o aparelho está rooted, digita-se o comando “su” para entrar como usuário root e depois usa-se o comando “reboot”, que é mais rápido). Depois do boot, se o chip não fez a conexão automaticamente, deve-se forçar a conexão à mão: abre-se a barra de avisos, toca-se no aviso de falha de conexão, e depois escolhe-se a operadora.
Outra opção, em vez do Terminal Emulator, é pelo ADB (Android Debug Bridge):
- Baixe o ADB para Windows: adb_for_windows
- Descompacte em alguma pasta. Por exemplo, “c:\adb”
- Entre no Windows shell “Executar > cmd”
- Mude para a pasta: “cd C:\adb”
- Ligue o cabo USB no celular
- Habilite o modo debug: “Configurações > Aplicativos > Desenvolvimento > Depuração USB”.
- No shell, digite o comando: adb shell echo 'AT+EGMR=1,10,"35182904XXXXXXN"' >/dev/pttycmd1
Teoria
O comando Linux “echo” envia uma string de texto com o que parece ser um comando AT de modem (“AT+EGMR”) para o dispositivo “/dev/pttycmd1”. Suponho que o dispositivo seja o modem GPRS do celular. O parâmetro 1 significa gravar, o parâmetro 7 significa o slot de chip 1, o parâmetro 10 é o slot de chip 2, e o terceiro parâmetro é uma string — entre aspas duplas — com o IMEI do slot. Assim, o modem do aparelho cuida de codificar e gravar o IMEI no arquivo de configuração correto. Simples e esperto.
Outra maneira de se configurar isto, que encontrei pela internet mas não testei, é se gerar um arquivo texto com os IMEI, com o nome de “pttycmd1”:
AT+EGMR=1,7,"35182904XXXXXXN" OK AT+EGMR=1,10,"35182904XXXXXXN" OK
e copiá-lo para o cartão SD, depois copiá-lo pelo gerenciador de arquivos, como root, para o diretório /dev, sobrescrevendo o arquivo pttycmd1 existente — na verdade, o dispositivo pttycmd1: sistemas tipo Unix tratam dispositivos como se fossem arquivos. Isto equivaleria a mandar as strings para o dispositivo /dev/pttycmd1. Tente este método primeiro, que pode ser mais fácil. O celular só precisa estar rooted.
O caminho difícil
Se os procedimentos acima não funcionarem, há uma maneira difícil de fazer as coisas.
O aparelho deve estar rooteado, isto é, deve ter instalado algum programa de acesso ao usuário root como o aplicativo Superuser, e deve também ter instalado o Busybox. Baixe ambos no Google Play. Ou baixe aqui e instale o aplicativo GingerBreak-v1.20.apk, que já instala todo o necessário (está zipado com o Seven Zip).
Para isto, gere novo arquivo de IMEI. Isto pode ser feito no site Online MTK65xx IMEI-file generator ou com o Gerador de IMEI para celulares baseados no MT6516 (versões para Linux ou Windows). É um programa para linha de comando. No Windows, você deve abrir o shell executando o comando “cmd”:
imei-y803.exe <imei_1_15_digitos> <imei_2_15_digitos>
Coloque os dois números IMEI do seu celular, que estão impressos dentro do aparelho, abaixo da bateria.
Copie o arquivo gerado para o diretório raíz do cartão SD.
Depois, entre no console do Linux Android. Veja neste site como entrar. Se este site estiver desativado, baixe o Tutorial de como entrar no shell do Android. O tutorial está no formato MHT, que é lido pelo Infernet Exploder — ou Firefox com o plugin Mozilla Archive File Format.
No shell do Android, use os comandos:
su cp /sdcard/MP0B_001_NEW /data/nvram/md/NVRAM/NVD_IMEI/MP0B_001 chmod 650 /data/nvram/md/NVRAM/NVD_IMEI/MP0B_001
O aparelho deve estar rooted e ter o busybox instalado. O programa Superuser e o busybox estão no Google Play. Lá também há outros programas que fazem isto. Qualquer um serve. Se tiver dúvida, procure na internet como fazer root no Android.
Ao digitar o comando SU (superuser, igual a administrador no Windows), o celular pode solicitar permissão, dependendo do programa superuser que você instalou. Conceda permissão, ou o comando SU vai falhar e aparecerá “Permission denied” no terminal.
Este gerador de IMEI é uma versão hackeada por mim baseada num gerador postado pelos usuários f_mulder e pvsurkov do site russo forum.china-iphone.ru.
Como eu não podia compilar o programa em linguagem C, fiz a troca do byte 0x57 por 0x55 e do byte 0xDB por 0x8B diretamente nos executáveis. Estes bytes estão próximos, antes de bytes 0x8B. Esta troca é necessária para compatibilidade com o IMEI original do Y803 (Wei Dream). No código fonte, comentei a maneira que o IMEI é calculado.
Referências
- Backup and Restore Mediatek based phone’s IMEI. http://www.android-db.net/119946/TOOLTUTBackup-and-Restore-Mediatek-based-phones-IMEI.html
- [GUIDE]Chinese phone CPU MTK6516 based Windows Mobile Android. <http://forum.xda-developers.com/showthread.php?t=1528264&page=2>
Eu quero aqui também agradecer pelos seus conhecimentos que foram compartilhados na internet, e dizer que eu passei algum stress com meu aparelho, quando vi IMEI INVALIDO aparecendo na tela, mas com esta ótima ajuda de configuração ele voltou ao normal. Obrigado!
ALTO PADRAO RESOLVE MESMO MUITO OBRIGADO
É muito bom ter pessoas que compartilham seus conhecimentos.Pois com sua ajuda resolveu meu problema,estou muito satisfeito com o seu conhecimento.
agora sei onde tirar minhas duvidas.
Obrigado.
Valeu o prestígio, fernando!
alto nivel, coloquei meu celular pra funcionar, te agradeço por isso… vale muito a pena quebarr a cabeça….
Legal saber disso, Rodolfo!
Temos que agradecer ao hackers russos, que pegam informações dos hackers chineses, e ao Google que permite traduzir tudo isto! 🙂
Consegui da seguinte forma em um celular C110
1-baixar a sdk do android e instalar
2-abrir o prompt de comando cmd.exe
3-acessar o diretorio pelo prompt C:\Program Files\Android\android-sdk\platform-tools
4- executar o comando adb shell
5- executar as linhas
echo ‘AT+EGMR=1,7,”35182904XXXXXXN”‘ >/dev/pttycmd1
echo ‘AT+EGMR=1,10,”35182904XXXXXXN”‘ >/dev/pttycmd1
6-desligar e ligar o aparelho
Atenção só funcionara se tiver com o driver instalado no meu caso mt65xx com BusyBox1.17.1.apk instalado rodando em segundo plano este libera acesso root, no aparelho habilitaR opção em desenvolvimento DEPURAÇÃO USB, PERMANCEER ATIVO E PERMITIR LOCAIS FICTICIOS.
Espero ter ajudado.