sábado, 20 de abril de 2013

Como turbinar seu tablet Genesis GT-1230


Observação: Os passos aqui descritos foram efetuados com sucesso por mim em dois aparelhos distintos. Entretanto, execute-os por sua própria conta e risco. Embora foram originalmente escritos para o GT-1230, deve servir em outros aparelhos desde que se substitua o arquivo de ROM por um adequado ao modelo.

Dos tablets genéricos que atulham o mercado, o que encontrei com a melhor reputação e com a melhor razão custo/benefício foi o Genesis GT-1230.
Ele tem uma tela de 10 polegadas, multi touch, uma autonomia de bateria razoável, além de ter uma boa GPU e reproduza vídeos em full HD com saída HDMI.
Só quebrei um pouco a cara porque entendi que tinha GPS, mas é somente um D-GPS baseado nas localizações de redes WiFi do Google. Eu esperava poder usa-lo no carro como um GPS com telão...

Depois de usar um pouco o aparelho, observei que embora ele tenha um bom clock, muitos processos ficam lentos demais. O browser costumava travar frequentemente, me irritando com a mensagem "não respondendo... aguardar ou fechar?"

Mas aí, como eu sempre digo, não é uma caixinha preta dessas que vai ganhar de mim... Parti para a luta até otimizar ao máximo a performance do aparelho. E olha que ficou muuuuito bom!

Aqui, compartilho o que eu fiz, passo a passo, juntando as referências que busquei em fóruns e espalhadas pela net. Os passos, basicamente, são:
  1. Trocar o firmware;
  2. Instalar um gerenciador de ROM/boot;
  3. Otimizar o Android;
  4. Otimizar o sistema de arquivos;
Muito do que está aqui se encontra no fórum http://forum.genesiseries.com, mas tive que buscar mais informações espalhadas.

Atenção: Faça tudo isso sempre com a bateria totalmente carregada. Se faltar energia no meio de alguma tarefa crítica, bucke you seatbelt Dorothy because Kansas is going bye-bye... Seu tablet pode travar e ele morrerá para sempre.


Atualização: Leitores reclamaram que muitos dos arquivos não estão mais disponíveis nos locais citados. Assim, a Neocortex Sistemas Embarcados gentilmente cedeu espaço em seu servidor de ftp para hospedar os arquivos.
Está tudo num único arquivo zip, aqui, de 394.7Mb.





1 - Troca do firmware
Baixe o firmware original do tablet clicando >>>aqui<<<.
Numa máquina com windows, baixe o LiveSuit 1.07 e instale-o.
Execute o LiveSuit. na primeira janela, escolha YES, depois FORMAT, em seguida NEXT e por final, YES:


Escolha o arquivo com extensão .img do firmware que foi baixado.
Com o tablet desligado, conecte-o via USB ao PC.
Segure o botão VOL- apertado por alguns segundos e, sem solta-lo, pressione o botão power.
O LiveSuit quase instantaneamente irá iniciar o processo de atualização da ROM.
No final, seu tablet reiniciará automaticamente. Feche o LiveSuit clicando na figura do homenzinho à direita.


2 - Gerenciador de ROM/boot (ClockworkMod Recovery)
O CWM Recovery é um aplicativo que fica "antes" da interface gráfica do sistema operacional e é usado basicamente para gerenciar e atualizar ROMs, patches e updates. Ele contém um módulo de debug via USB já habilitado e compatível com o SDK do Google. Para instala-lo, você precisará ter acesso root ao tablet e um gerenciador de scripts.
Com a ROM atualizada, instale:
Baixe o arquivo de scripts do CWM >>>aqui<<<.
Conecte o tablet no PC com o cabo USB. Extraia os arquivos na raiz da unidade de disco montada no PC.


Rode o Script Manager. Se já não estiver, navegue até a pasta /mnt/sdcard.
Toque UMA VEZ no arquivo install-recovery.sh.  Marque as opçoes SU e Is Script.
Toque no botão RUN. Abrirá uma pequena tela de terminal. Aguarde até que apareça a palavra DONE nesse terminal. Feche o ScriptManager.

Baixe o CWMRTools. Se baixou no PC, copie para o tablet e instale-o.

Execute o CWMR Tools:


Existem várias funções importantes nele, mas a que usaremos agora é simplesmente o modo Recovery. Garanta o acesso "root" quando for requisitado pelo SuperUser.


Na tela do CWM, pode-se mover o cursor usando os botoes Vol+ Vol- e o ENTER é o botao de ligar/desligar. Com o cursor na primeira linha, pressione nessa sequência Vol+, Vol-, Vol+. Se fizer corretamente, aparecerá a mensagem "back menu button enabled" no canto inferior esquerdo da tela.
Navegue até advanced, clique ENTER. No próximo menu, escolha fix Permissions. Volte ao menu principal e clique em reboot system now.
Lembrando, o Android é baseado em linux. Depois de mover e copiar arquvos pra la e pra ca nas pastas de sistema, é bom reajustar as permissoes dos arquivos. Isso evita instabilidades futuras.


3 - Otimizar o Android
3a. Para isso, utilizei o excelente patch WTI Tweaks 2.8.6 final Hotfix do WilliansTI. Ele traz várias melhorias e ajustes ao sistema operacional e aplicativos.
Para instalar, copie o .zip para o tablet usando a conexao USB com o PC.
Entre no modo Recovery pelo CWMR Tools, habilite o botao back como descrito acima e escolha install zip from sdcard. Depois, escolha choose zip from sdcard from internal sdcard e selecione o arquivo zip. Escolha YES e aguarde.
No final, retorne ao menu inicial e escolha reboot system now.
Obs: Se ao voltar você não conseguir mais ver a barra de status, é porque a janela entrou em fullscreen. Vá em configurações, exibir e coloque o modo fullscreen em "smart".

3b. Outra opção é simplesmente ajustar alguns parâmetros do sistema. Para isso, utilize o Root Explorer. Navegue até a pasta /system e localize o arquivo build.prop. Abra-o em algum editor de texto.
Abaixo, o que se pode alterar para melhorar a performance:


- Melhora total na qualidade dos JPEGs - linha já existente, modificar
ro.media.enc.jpeg.quality=100
- VM Heap; valor de memória virtual deslocada para o Dalvik. Use 16, 24, 32, 48 ou 64. Cuidado!
dalvik.vm.heapsize=48m
- Gerar a UI com a GPU; dá um descanso pra CPU usando a GPU pra criar a interface, como menus etc.
debug.sf.hw=1
-Max Events; melhoras significativas na rolagem
windowsmgr.max_events_per_sec=150
-Permitir modo hibernação da bateria; poupa enorme de bateria
pm.sleep_mode=1
ro.ril.disable.power.collapse=0
- Aumentar a resposta de toque geral
debug.performance.tuning=1
video.accelerate.hw=1
- Aumentar a qualidade de gravação de fotografia e vídeo
ro.media.dec.jpeg.memcap=8000000
ro.media.enc.hprof.vid.bps=8000000
- Corrigir alguns problemas de aplicação
ro.kernel.android.checkjni=0
- Desativar a animação de boot; faz com que o tablet inicie mais rápido sem mostrar aquele android ridículo dando tchau...
debug.sf.nobootanimation=1
- Desabilitar Dithering; diminui bem pouco a qualidade da imagem (bem pouco mesmo), mas melhora a fluidez do sistema
persist.sys.use_dithering=0
- Possíveis melhoras com 3D; dá uma diferençazinha
ro.opengl.off=0
- Força aceleração por hardware
ro.config.disable_hw_accel=false
- Melhoras no Streaming; deixa o Youtube um pouco mais rápido pra carregar
media.stagefright.enable-meta=true
media.stagefright.enable-scan=true
media.stagefright.enable-http=true
media.stagefright.enable-record=true


4 - Otimizar sistema de aquivos
O Android  utiliza sistema de arquivo ext4. Este, assim como o NTFS do windows, possui um recurso chamado journaling que funciona como uma área de rascunho do disco, como um método de segurança contra falhas de gravaçao durante queda de energia, dificultando o corrompimento dos dados em HDs.
O problema é que em aparelhos como smartphones, tablets e outros que utilizam memórias flash e possuem alimentação por bateria, esse recurso além de não fazer muito sentido traz sérios problemas de performance para o sistema e também contribui para o desgaste das flashs devido a um overhead de leituras e gravações.
Assim, desabilitando o journaling ganha-se em performance e aumenta-se a vida útil da memória. A desvantagem é aumentar a chance de corrompimento do sistema em casos de falha de energia.
Se quiser desabilitar o journaling nas partições do GT-1230, siga os passos conforme Cecell do forum:
Instale os drivers para acesso de debug no PC clicando >>aqui<<. Unzipe.
Baixe o gerenciador de journaling >>aqui<<.
Entre no modo Recovery e conecte o tablet ao PC. Quando o windows pedir os drivers, aponte para a pasta adb que você unzipou.
Unzipe os aquivos do gerenciador no pc e, via terminal (Iniciar - executar - cmd) execute o .bat do gerenciador.

O programa é auto-explicativo, mas vamos lá:
Clique "1" para verificar se está tudo ok.
Estando OK, clique "2" para ver se o journaling está habilitado.
Se estiver, aparecerá has_journal na lista de features do sistema de arquivos.
Escolha "3" e espere.
Pronto!!!