domingo, novembro 27, 2011

Mega Tutorial Galaxy S II - GT-I9100 - Root - Custom Roms - Reviews

http://brasildroid.com.br/galaxy-s-ii-i9100-geral/1958-mega-tutorial-galaxy-s-ii-gt-i9100-root-custom-roms-reviews.html

Vejo que os usuários tem muitas dúvidas sobre esses temas, então resolvi criar um tópico específico para o S II. Caso os moderadores considerem desnecessário sintam-se a vontade para remover/mover o tópico.

Todas as fotos foram feitas com o aparelho. Não tenho muito cuidado, assim é possível ver que algumas fotos estão tortas, bolhas na película de um dos aparelhos... Ainda assim é possível ver a qualidade da câmera, melhor que uma câmera da sony que tenho aqui em casa (exceto no escuro). Todas as fotos foram feitas dentro do meu apartamento, portanto a luminosidade não é a ideal.

Vou explicar os princípios básicos sem me aprofundar demais, tentarei ensinar apenas o que vai ser usado pela maioria dos usuários.

Em primeiro lugar, recomendo a leitura da faq. Tem muita coisa importante, se você assimilar 10% já vai ter aprendido muita coisa.
http://brasildroid.com.br/showthread...87-FAQ-Android

Agora vamos aprender algumas coisas básicas sobre o aparelho, existem 3 modos de boot:

1- Boot normal: esse é o modo que todos conhecemos, o aparelho carrega o sistema operacional android.

2- Modo Recovery: Esse modo permite que você retorne o celular para as configurações de fábrica (wipe data/factory reset). Caso você tenha configurado uma senha para seu android ela vai ser solicitada para entrar nesse modo. As outras opções não são muito importantes, não se preocupe com elas. Para acessar esse modo ligue o celular pressionando as teclas Home + Volume pra cima + Power. Mantenha as 3 teclas pressionadas até aparecer a tela abaixo.



3- Modo Download: Esse modo permite que você instale as custom roms. Para acessar esse modo ligue o celular pressionando as teclas Home + Volume pra baixo + Power. Mantenha as 3 teclas pressionadas até aparecer a tela abaixo.



Esse aviso informa que instalar custom roms pode causar sérios problemas ao seu aparelho. Caso queira prosseguir pressione volume pra cima, caso queira cancelar pressione volume pra baixo. Confirmando o modo download, temos a tela abaixo.



Reparem que em custom binary download aparece no. Isso significa que nenhuma custom rom (ou kernel) não oficial foi instalada nesse aparelho. Sim, a samsung permite que você instale o que quiser, mas existe um contador "dedo duro" que indica quantas vezes você instalou uma custom rom (ou kernel). Ninguém pode afirmar o porquê desse contador existir, mas muita gente acredita que essa informação possa ser utilizada para ter sua garantia negada. Repito, oficialmente não existe nenhuma informação, apenas especulações. Segue a tela de um aparelho que já sofreu uma modificação:



Reparem que o contador está em 1 e o current binary é custom, não mais samsung oficial. É possível zerar esse contador através de um jig usb, segue o tópico:
http://brasildroid.com.br/showthread...as-custom-roms.

Nos firmwares mais novos (KIx em diante) existe um novo bootloader que não permite zerar o contador através do jig. Veja nas considerações finais como resolver. Se você utilizar o link desse tópico para baixar a rom verá que a maior parte das roms KIx tem uma observação de bootloader modificado, nesse caso o JIG irá funcionar. Se utilizar roms do samfirmware vai precisar seguir os passos descritos nas considerações finais.

Muito bem, aprendemos sobre os modos de boot, então chegou a hora de aprender a instalar roms (custom ou originais).

É bom lembrar que apesar de ser quase impossível brickar seu aparelho através desses procedimentos isso pode acontecer. Execute esses procedimentos por sua conta e risco, uma pessoa em cada mil consegue danificar o aparelho, esse pode ser você.

Em primeiro lugar, até o dia de hoje todos os aparelhos são iguais, portanto esses procedimentos funcionam em QUALQUER aparelho. Você pode instalar qualquer rom que exista e seja compatível com o GT-I9100, nosso querido Galaxy SII. Então vamos aprender a instalar roms e kernels no formato do odin (arquivos .tar)

ATENÇÃO, POR SEGURANÇA SEMPRE TENHA A BATERIA COM NO MÍNIMO 80% DE CARGA QUANDO FOR FLASHEAR QUALQUER ROM OU KERNEL.

1- Baixe e instale o kies no seu computador.
http://www.samsung.com/br/support/mo...OFTWARE.MANUAL

2- Reinicie o seu computador

3- Baixe a rom ou kernel de seu interesse (créditos ao usuário Intratech, do XDA):

Roms sem operadora: http://forum.xda-developers.com/show....php?t=1075278
Roms com operadora: http://forum.xda-developers.com/show....php?t=1113928

MUITO IMPORTANTE - As roms podem estar compactadas, em alguns casos é necessário descompactar com o programa 7zip, não winrar. Descompacte a rom até obter o(s) arquivo(s) com extensão .tar. Os arquivos .tar podem ser abertos com o winrar, não faça isso.

Existem 2 possibilidades, existirá apenas 1 arquivo .tar



Ou 4 arquivos, sendo 3 .tar e 1 pit.



4- Baixe o odin.
http://www.multiupload.com/1RTGSE061G

5- Abra o odin (tenha certeza absoluta de que nenhum processo do kies esteja aberto), caso sua rom tenha apenas 1 arquivo .tar selecione o mesmo em PDA.



Caso sua rom tenha os 4 arquivos, descarte o .pit e selecione os 3 .tar em seus respectivos campos (modem/radio - phone ; CSC-CSC ; o que sobrou em PDA).

As únicas opções a serem marcadas são auto reboot e f. reset time. Re-partition só deve ser marcada quando você utilizar o arquivo pit, o que NUNCA deverá ocorrer. Essa opção e arquivo só devem ser utilizados caso exista algum problema com as partições, sendo assim repito que NUNCA devem ser utilizados.

6- Faça um wipe factory reset (modo recovery, (ctrl+f, modo recovery)). NÃO ignore esse passo, é muito importante. Caso o wipe não seja feito seu celular pode entrar em bootloop, num caso mais leve diversos programas vão dar FC (force close).

7- Inicie seu celular em modo download, conecte o mesmo ao pc.

8- Aguarde um pouco, o odin deve reconhecer seu aparelho (em amarelo).



9- Pressione start e aguarde até aparecer PASS em verde e seu celular reiniciar completamente.



10- Parabéns, você instalou uma nova rom em seu celular! Nesse caso foi instalada a zto original, sem as porcarias das operadoras.

Algumas observações importantes:

- Após instalar uma custom rom ou um custom kernel através do odin, durante o boot vai aparecer um triângulo amarelo de alerta. Ele não atrapalha absolutamente nada, portanto não se preocupem.
- O contador de custom roms NÃO é iniciado caso a rom flasheada com o odin for original. Sim, como utilizei a rom original nesse exemplo o contador de custom roms não foi iniciado e o software continua sendo reconhecido como original samsung. Nesse caso o triângulo amarelo não aparece durante o boot.
- Por padrão os últimos caracteres definem o lançamento da rom, logo uma KG2 é mais nova que uma KG1. Essa analogia também pode ser feita com a última letra, logo uma KG1 é mais nova que uma KF1.

Muito bem, você tremeu de medo, se arrependeu profundamente durante o processo mas agora que deu certo quer é tentar novas coisas correto? Então vamos partir pro root!!!.

Em primeiro lugar, o que é acesso root? Imagine o computador do seu trabalho, existe o perfil de administrador que pode fazer o que quiser e o seu perfil, com várias limitações correto? No android é a mesma coisa, você é um usuário comum, com o acesso root você pode fazer modificações mais profundas no seu aparelho.

Mas qual a utilidade disso? Bem, são inúmeras, entre as mais comuns é a possibilidade da fazer o backup de todos os seus aplicativos (com o Titanium Backup por exemplo), instalar custom roms, bloquear as propagandas dentro dos aplicativos gratuitos...

Para rootear o celular é preciso flashear um kernel com essa funcionalidade. Mas o que diabos é o kernel? Bem, eu lhe pergunto, você leu a faq? Leia!!!!!!! A grosso modo o kernel é quem faz a comunicação do hardware com o software. Existem partes do android "travadas", que o kernel original não dá acesso. Para fazer o root instalamos um kernel que permite esse acesso, sua instalação faz modificações na parte "travada" do android liberando o acesso root. Como as modificações são feitas no sistema operacional (não é o kernel que tem o acesso root) você pode instalar o kernel original depois de conseguir esse acesso, sem perder o root.

Bem, chega de papo e vamos aprender a rootear o aparelho.

1- Baixe o kernel nesse tópico (créditos ao usuário Chaifire do XDA).
http://forum.xda-developers.com/show....php?t=1103399

Não olhe apenas o primeiro post, as versões estão espalhadas por diversos posts na primeira página. MELDELS, existem milhares de versões, qual vou instalar???????????

Qualquer um.

Você tá maluco??? Se o cara fez milhares de versões devo ter que utilizar a correta, vou brickar meu celular!!! Leia o que escrevi sobre o kernel. Sua função é basicamente entender as instruções do software e transmitir ao hardware. Sendo assim, teoricamente não existe nenhum problema em você utilizar um kernel diferente do original, contanto que ele seja compatível com o GT-I9100, vulgo Galaxy S II. A única precaução que você poderia tomar seria com as versões do android, por exemplo, caso a versão do seu android seja 2.3.3 não instale um kernel versão KG já que esses são originalmente desenvolvidos para o android 2.3.4. Ainda assim, os kernels KG devem funcionar no android 2.3.3, para provar minha teoria instalei o kernel KG1 na rom stock (android 2.3.3) zto. Você não precisa fazer isso, por segurança procure a versão mais próxima da sua (leve em consideração apenas as letras (KE, KF) e os números após essas letras). Por exemplo, se o seu kernel é KE4, instale o KE2 ou KE7 caso não encontre o KE4.



2- Extraia o arquivo .tar, no caso do kernel sempre será um arquivo único.

3- Utilize o odin para flashear o kernel que você baixou e extraiu, caso não saiba como utilizar o odin leia acima o procedimento de como instalar roms através do odin (ctrl+f, instalar roms e kernels). O kernel irá em PDA, siga exatamente os passos descritos para instalar roms. No caso do kernel não é preciso fazer o wipe factory reset.

4- Após seu celular reiniciar ele estará rooteado, nos seus aplicativos aparecerão esses ícones:



Parabéns, seu celular tem acesso root!

Algumas observações importantes:

- Ao instalar um kernel não original (como os do chainfire) o contador de custom roms será iniciado. Durante o boot aparecerá um triângulo amarelo alertando que seu celular está rodando um kernel/rom não original. Como expliquei antes, isso não interfere em nada no funcionamento do aparelho, aparece apenas durante o boot.
- Se ainda estiver desconfiado/tiver problemas você pode utilizar o odin para flashear o kernel original, o acesso root será mantido e o triângulo irá sumir. A única coisa que pode ser perdida é a funcionalidade do CWM (ClockworkMod, utilizado para instalar custom roms de forma alternativa ao odin). O kernel original pode ser encontrado nos links de roms citados no começo do tópico. Flashear o kernel original não vai zerar o contador de custom rom.
- Todos os programas que precisam de acesso root (superuser) solicitarão sua autorização.
- Caso não tenha lido acima leia sobre o jig usb (ctrl+f, jig).

-----------------------------------------------------------------------------------------------------------------------------------------
Instalando custom roms.

Apesar de não ser obrigatório, recomendo fortemente que agora que você tem o acesso root seja feito o backup da pasta EFS. Os procedimentos necessários estão descritos no post 3. Caso não queira fazer o backup é só seguir os procedimentos abaixo.


Muito bem, agora temos o celular com uma rom stock (sem operadora) e rooteado com o kernel do Chainfire. Se repararem, além do ícone de superusuário foi criado um ícone chamado CWM (ClockworkMod). É através desse programa que podemos instalar custom roms e personalizações. Para acessar o CWM basta clicar no ícone criado e escolher a opção "Reboot in ClockworkMod", outra opção é ligar o celular com o combo de teclas Home + Volume pra cima + Power. O seu modo recovery original foi substituído pelo modo CWM.



Reparem que esse modo recovery possui mais opções que o recovery original. A navegação no ClockworkMod é feita com a tecla de volume (assim como o recovery normal) mas o enter pode ser a tecla Home ou a tecla Power, depende da versão do programa. Sendo assim, se você não está conseguindo selecionar as opções desejadas com uma determinada tecla tente com a outra.

Muito bem, esse programa é muito importante porque a maioria esmagadora de custom roms e kernels devem ser flasheados através do CWM, então vamos aprender a usá-lo.

1- Baixe a custom rom de seu interesse, algumas opções do XDA:
http://forum.xda-developers.com/forumdisplay.php?f=1058
http://forum.xda-developers.com/forumdisplay.php?f=1204

Recomendo que leia sobre a rom, muitas tem algumas limitações como o browser original com lag, aplicativos nativos removidos, funções que ainda não foram adaptadas corretamente, etc.

2- Copie o arquivo zip (não extraia, por mais estranho que pareça) para a raiz da memória interna do seu aparelho. Não copie para o cartão sd externo já que algumas vezes esse procedimento não funciona como deveria. A forma mais fácil de copiar o arquivo é ir em configurações -----> aplicações ------> desenvolvimento e ativar a depuração usb. Aparecerá um aviso, confirme clicando no sim.



Conecte seu celular ao pc e expanda a barra de notificações, clique em USB conectado.



Agora é só clicar em "Ligar armazenamento USB" e seu celular funcionará como um pendrive. Novamente, copie a rom de sua preferência na memória interna do aparelho, não no cartão sd (caso você tenha um).



Clique em "Desligar armazenamento do PC" e desconecte seu celular do pc.

3- Entre no modo CWM (pelo programa ou ligando o celular através do combo de teclas para o modo recovery).

4- No modo CWM, use a tecla volume para navegar até advanced, home para confirmar.



5- Selecione wipe Dalvik Cache. Aparecerá um monte de no, navegue até o yes e confirme.



6- Volte ao menu inicial e selecione wipe data/factory reset (também aparecerá um monte de no por segurança).

7- No menu inicial, selecione install zip from sdcard, depois choose zip from sdcard.



8- Selecione a rom que você copiou para a memória interna do seu celular (no meu caso Leomar) e confirme.



Agora é só aguardar o término do processo. Parabéns, seu celular está com a custom rom de sua escolha instalada!

Algumas observações importantes:

- Quando você instala alguma coisa pelo CWM o contador de custom roms não é acionado, portanto você pode flashear quantas roms/kernels quiser sem alterar o contador.
- Nessa versão do CWM (laranja) o enter é a tecla Home, a tecla Power tem a função de voltar. A versão azul tem os comandos invertidos.
- Após a instalação da rom ou kernel você pode apagar o arquivo zip da memória interna do seu celular.
- Esse procedimento funciona para flashear custom kernels, temas e outras atualizações disponíveis pra rom que você escolheu. No caso de kernel e temas não é preciso realizar nenhum wipe, basta escolher o arquivo zip através do CWM e mandar instalar.
- Caso você tenha algum problema (como bootloop) e não consiga resolver fazendo os wipes e flasheando uma nova rom através do CWM utilize o odin para flashear uma rom stock.

Esta parte abaixo é muito importante, pois o backup da pasta efs é exssencial, nela está guardada informações do seu telefone como imei e base band

Pasta EFS

Essa pasta é de suma importância para o seu celular, é nela que estão armazenados dados como o IMEI, Mac adress e código do produto. Se essa pasta for alterada e você não tiver um backup seu aparelho só voltará a ter sinal se passar por alguma assistência técnica. Para fazer o backup é preciso ter acesso root.

Vamos utilizar o seguinte aplicativo (créditos ao usuário HellcatDroid do xda):

http://f.lui.li/get_99_f13d.html

Imagem do aplicativo:



Para fazer o backup basta clicar em backup EFS, aparecerá um arquivo .img na memória interna do seu telefone:



Esse arquivo é o seu backup, guarde com muito cuidado.

Mas como essa pasta pode ser alterada? Basta uma distração no odin (marcar a opção clear EFS) e pronto, seu aparelho não tem mais sinal. Além disso, um arquivo zip mal feito pode apagar o conteúdo da pasta. Acredite, isso pode acontecer com você apesar de ser uma situação bastante rara, faça o backup.

Devido a importância dessa pasta não fique brincando de restaurar o backup. Apenas utilize o aplicativo para fazer o backup e torça para nunca precisar restaurar (opção restore EFS do aplicativo).


Qual Kernel utilizar?

Essa é uma pergunta sem resposta. Muitos falam maravilhas de determinados kernels, nem sempre você vai perceber todas as vantagens anunciadas. O ideal é você testar (praticamente todos podem ser flasheados através do CWM) e tirar suas próprias conclusões. Algumas funções que custom kernels propiciam:

- Possibilidade de undervolt para economia de bateria. Todos os processadores são únicos, cada um tem uma capacidade própria e um custom kernel permite que você teste essa capacidade. Por exemplo, o meu processador pode ser capaz de rodar a 1200 MHz com uma alimentação de 1175 mV, enquanto o seu pode precisar de 1250 mV. É claro que o fabricante precisa definir um valor que seja seguro para todos os processadores, então por padrão o nosso aparelho consome 1300 mV rodando a 1200 MHz. Com o custom kernel você pode testar e descobrir quais são os valores limites para o seu aparelho, economizando bateria. Por padrão o undervolt não danifica o aparelho, mas pode deixá-lo instável caso você exagere na dose.

- Possibilidade de overclock. Mesma caso do undervolt, todos os processadores são capazes de rodar a 1200 MHz, mas alguns podem chegar a até 1600 MHz de forma 100% estável. Eu NÃO recomendo essa prática, o Galaxy S II já é extremamente rápido, não existe nenhum programa que ele não rode liso. Além de não existir essa necessidade, o overclock pode danificar o seu processador por super aquecimento. Mesmo assim alguns usuários consideram seguro fazer um overclock menor, permitindo que o aparelho rode a 1400 MHz.

- BLN. Como nosso aparelho não tem um led de notificação, desenvolveram o BLN. Nossas teclas capacitivas viram o led de notificação, mas isso pode drenar bastante a bateria. Existem aplicativos que tem a mesma função mas utilizando a tela como o NoLed.

- Acesso root, CWM, melhorias em desempenho...

Impossível relacionar todas as características disponíveis, leia, teste e tire suas próprias conclusões. Aqui estão os kernels mais famosos:
http://forum.xda-developers.com/forumdisplay.php?f=1058

É importante notar que certas funcionalidades são acessíveis apenas com a ajuda de determinados aplicativos. Por exemplo, o kernel nimphetamine só permite overclock e undervolt através do programa setcpu. Já o Lulz kernel tem suporte através do Tegrak, portanto é muito importante se informar antes de flashear o kernel.

-----------------------------------------------------------------------------------------------------------------------------------------

Algumas considerações finais:

1- Wipe data/Factory reset.

Sei que é uma saco perder todas as suas configurações e aplicativos a cada rom flasheada, mas é um mal necessário. Algumas vezes é possível instalar a evolução da rom sem fazer o wipe (por exemplo, você tem a versão 1.0 de uma determinada rom e é lançada a versão 1.1) mas mesmo assim recomendo os wipes (Dalvik e Factory reset). Essa é a forma mais segura de não ocorrer o bootloop (celular fica reiniciando continuamente) e dos aplicativos não ficarem provocando FCs (force close) continuamente.

Uma forma de amenizar essa situação é o programa TitaniumBackup, existe um tópico muito esclarecedor desenvolvido pelo nosso amigo fixbob:
http://brasildroid.com.br/showthread...TitaniumBackup

2- Outro problema é a configuração de widgets e ícones nas telas iniciais. Alguns launchers tem a opção de backup, pessoalmente utilizo o launcherpro. Ele consegue fazer o backup da maioria das definições do usuário, a única coisa que ele não consegue restaurar são os widgets de terceiros.

3- Muita gente tem dúvidas sobre os diferentes tipos de modem e seu desempenho. O Modem segue a mesma lógica do kernel, você pode testar outros flasheando através do odin. Pessoalmente acho besteira, já testei muitas versões e nunca reparei um desempenho superior em determinada versão. Muitas vezes é flasheado um novo modem e a melhora percebida está na rede (todos sabemos que a rede não tem desempenho constante), mas fique a vontade para testar novas versões.

4- Não mencionei mas é possível remover o triângulo amarelo (após o root) flasheando um stock kernel após a instalação do CF-kernel, extraindo o arquivo zimage do CF-kernel e flasheando esse arquivo através do CWM (aplicativo, opção flash kernel). Não recomendo esse procedimento, isso não vai zerar seu contador de custom roms e você tem um trabalho desnecessário apenas para não ver um triângulo por 3 segundos.

5- A samsung percebeu a falha relacionada ao jig resetar o contador de custom roms. Nos firmwares a partir de setembro (KIx) está incluído um novo bootloader, nesse caso o jig não zera mais o contador. Para resolver basta extrair o arquivo .tar (usando o programa 7zip) abaixo, e flashear através do odin (pda ou bootloader, tanto faz). Créditos ao usuário Intratech do XDA.

http://www.multiupload.com/LQQBRQVJUD


Como expliquei antes, esse tópico ainda está em construção.

Espero que seja útil, muita informação ainda está por vir.


FAQ:

1- Como sempre antes de fazer as modificações eu pesquiso muito e vi alguns métodos diferentes no youtube usando um programa chamado SuperOneClick e Insecure Kernel. Qual seria a diferença para esse método que está descrito aqui no fórum?

O método superoneclick foi o primeiro procedimento para se conseguir o root no S II. Instala-se o insecure kernel KDD e utiliza-se o superoneclick para conseguir o acesso root. Com o tempo os desenvolvedores criaram kernels que já tem o acesso root habilitado, poupando o trabalho de utilizar o superoneclick. Hoje não faz sentido algum utilizar esse método.

2- Já baixei a FW i9100UHKG7 e também o Kernel CF-Root-SGS2_UH_MUL_KG7-v4.1-CWM4.zip no xda forum. Como vou flashear os 2 arquivos?

A rom já vem com o kernel embutido, você não precisa baixar o kernel separado. O arquivo só está lá para caso alguém flashear um custom kernel ter a possibilidade de reflashear apenas o kernel original.

3- Posso flashear com o Odin a ROM stock por cima da que eu já tinha feito o ROOT? E se for uma custom rom?

Você sempre pode utilizar o odin para flashear qualquer rom (exceto as roms em .zip feitas para serem flasheadas com o CWM), não importa qual rom você está utilizando ou se já tem acesso root. O único porém é que se você já tiver o acesso root ele será perdido (no caso das roms stock). Para resolver basta reflashear algum kernel que libere esse acesso, nesse tutorial recomendo os CF-kernels.

4- E as roms .zip (instalação pelo CWM), preciso flashear antes a versão da rom pelo Odin antes de instalar pelo CWM?

Não, você pode flashear qualquer rom (que deva ser instalada pelo CWM) independente do kernel ou rom que já esteja utilizando. Como explicado na pergunta 2, a rom já traz um novo kernel, depois da instalação da rom basta flashear o kernel de sua preferência.

sábado, novembro 26, 2011

galaxy sii s2 i9100 instalando rom oficial

http://brasildroid.com.br/galaxy-s-ii-i9100-desenvolvimento/2600-tutorial-instalando-2-3-4-oficial-samsung-no-galaxy-sii-atualizado-08-11-2011-a.html

Atualizado com a versão atualizada da ROM 2.3.4 KI1 - 08/11/2011

Como vira e mexe temos pessoas com dúvidas sobre o procedimento de instalação do GingerBread 2.3.4 no Samsung Galaxy SII resolvi fazer esse tutorial.
Vou exagerar nas telas para facilitar bem. Não se assuste com o tamanho do post, o procedimento é muito fácil. Ficou grande porque eu quis detalhar tudo nos mínimos detalhes!

Vale dizer que esse procedimento é para a utilização da ROM OFICIAL da Samsung sem customizações de operadoras. Com essa ROM, não haverá incidências de Triângulo Amarelo e nem de contador de ROM's Customizadas "dedurando" alteração não autorizada do aparelho.

Vamos precisar:
ODIN v1.83 - Anexado no tópico.
Drivers do SGSII para Windows - Hotfile.com: One click file hosting: SAMSUNG_USB.rar OU o KIES (escolha um dos dois)
ROM Oficial Samsung para SGSII - GingerBread 2.3.4 - http://www.multiupload.com/JPMBM0IKGX ou http://www.megaupload.com/?d=A2LPHS3U
WinRAR ou outro descompactador de arquivos RAR. Versão 32bits - Versão 64bits
Bateria do aparelho totalmente carregada!

Sugestões:
* Fazer o procedimento de um Notebook com bateria carregada. Se houver um pico de luz durante o procedimento, pode inutilizar o aparelho.
* Leia duas vezes o procedimento antes de tentar.
* Tem dúvidas?!?!? Pergunte!!!!
* Não esqueça, bateria do aparelho totalmente carregada!
* Faça backup do seu aparelho. Tem vários aplicativos para tal. Se você não possui sua lista de contatos sincronizada com o Google, será necessário fazer o backup da mesma! Minha sugestão http://brasildroid.com.br/blogs/lior...eus-dados.html Junto com o MyBackup. Ambos no Market.
* Kies pode estar instalado, mas deve estar FECHADO.

Primeiro passo.
Se já tiver o programas Samsung KIES instalado no seu computador, pule esse passo.
Instalar os drivers do SGSII no Windows.
Você pode instalar através do arquivo SAMSUNG_USB.RAR citado acima ou instalar o Samsung KIES.

Segundo passo.
No computador
Descompacte o arquivo GT-I9100_ZTO_I9100UHKI1_I9100UHKI1_I9100ZTOKI1.exe em um diretório do seu computador que você lembre nos passos posteriores. Dentro do RAR tem um arquivo TAR de mesmo não. Salve o TAR no disco.


Terceiro passo.
Colocar o SGSII em Download Mode.
Desconecte o aparelho do carregador ou USB. Desligue o aparelho. Espere ele desligar completamente. Para não haver dúvidas, retire a bateria e recoloque-a.

Com o aparelho Desligado Pressione AO MESMO TEMPO E MANTENHA PRESSIONADAS as teclas
Abaixar Volume + Menu + Ligar/Desligar


Na tela de Warning!, pressione a tecla Aumentar Volume


Irá entrar no modo download / download mode / odin mode



Quarto passo.
No computador
Descompacte o conteúdo do Odin3.zip na mesma pasta que você descompactou a ROM (para facilitar, não é mandatório, pode descompactar em outra pasta).


Execute o "Odin3 v1.85.exe"


Conecte o SGSII, que está em download mode, na USB do micro.
Deverá acontecer algumas instalações de drivers, aguarde essas terminarem.
Quando o Windows tiver terminado de instalar os drivers, o aparelho irá aparecer no ODIN

* a porta COM pode variar. Onde está "0:[COM4]" dentro do quadrado amarelo, pode ser COM1, COM2 e etc.
Se não aparecer, conforme mostra as setas, reveja a instalação dos drivers, tente trocar a opção de drivers que fez. Se instalou via Kies, tente via o SAMSUNG_USB.rar e vice-versa. Verifique se o KIES está rodando em background.

aperte o botão PDA do Odin e aponte para o arquivo TAR que vc salvou no Segundo Passo.


CONFIRA SE TODOS OS CHECKBOXES ESTÃO IGUAIS AOS DA IMAGEM ACIMA.
Desmarcados: Re-partition, FlashLock, Phone EFS Clear, Phone Bootloader Update
Marcados: Auto reboot, F.Reset Time

CONTINUA NO PRÓXIMO POST!!!!

EDIT: GALERA, RECOMENDO FORTEMENTE A KI1. O GPS está excelente, o consumo da bateria está menor e vem com o Polaris Office. Mas só descobri isso tudo depois do WIPE.
http://www.multiupload.com/JPMBM0IKGX ou http://www.megaupload.com/?d=A2LPHS3U

[HOWTO] reset custom binary counter in download mode galaxy s2 sii

Default [HOWTO] reset custom binary counter in download mode
http://forum.xda-developers.com/showthread.php?t=1068522
 

Managed to find the solution to this today, all by accident.

Using the magical USB jig used on the sgs to put it into download mode.

Video below shows it

http://www.youtube.com/watch?v=poH6TMbuj3E


It resets the counter and says that the binary is default, but it is still the custom kernel.

It also removes the warning symbol at the bottom of the screen on each boot.



How did i find it?

Well, you know the download mode jig you can make to put the sgs into download mode. I make them and sell them on ebay to make a few quid. (not too great, too many others doing it)

I thought "it worked on my sgs, will it work on this?"

powered off the sgs II plugged the jig in and encountered a sceen saying "erasing download information succeeded" and now it says I have no custom binaries and my current binary is "samsung official", when its chainfires.

It also removes the triangle warning on first boot because it thinks its genuine. But I still have my root privelages.

I call this a warranty solution. All thanks to a resistor and u micro usb plug.

Where Can I Get One?


Guide to make the jig

MOD EDIT: No selling

segunda-feira, novembro 14, 2011

Problems loading Firebird UDF

Invalid token.
invalid request BLR at offset ...
function ... is not defined.
module name or entrypoint could not be found.

My solution was to change firebird.conf as follow

 UdfAccess = Restrict UDF

This makes firebird to look UDF folder and load.

This configuration is for linux only.

Tracking Down Firebird Crashes on Linux

When something very weird happens on firebird, always is HARD to find the problem.
Here is some helpfull links.

Tracking Down Crashes on Linux

By Alex Peshkov, May 2008
Note
Also works for other POSIX systems
One of the most efficient ways to track a crash of any program on Linux is to get a core dump of it at the moment of the crash. Using it you can easily create a stack backtrace, which in many cases makes it possible for developers to solve your problem. Or (if you using Firebird debug binaries) the whole core file can be sent to the developers for deeper analysis.
This document describes the process of how to get a core dump of the Firebird server on Linux and then analyzing it with gdb, using Firebird's debuginfo package. Depending on OS version (and other issues) the file with the core dump may be named simply “core” or “core.PID”, where PID is a number of the process which of which the core was dumped. Always use the actual name of the core file rather than “core” in examples below. Getting a core dump

Firebird 2.0.4 or higher

You should set parameter BugcheckAbort=1 in the firebird.conf file. Do not forget to restart superserver after you modify the firebird.conf. Resulting core dump will be found in the /tmp directory.

Firebird 2.0.3 or earlier

The first thing you should consider if you are using an old version of Firebird is to upgrade it. The Firebird development team regularly fixes various bugs in the code base, therefore it's quite possible that your problem has already solved. But if you do need to get core dump of an old Firebird version. You will need to perform the following actions:
To get dump of process's core you should satisfy the following requirements:
1.Set ulimit's RLIMIT_CORE value big enough to to allow it to handle the dump of the Firebird server (its even simpler and better to make it unlimited). This is what the command “ulimit -c unlimited” normally does. 2.Make the working directory of Firebird server writable for the server process – the core file is always created in current directory.
Note: Just typing
# ulimit -c unlimited
at the shell prompt does not affect this setting for any daemon, running on your system – this includes Firebird. So here is how you get a core file for both Superserver and Classic.

Superserver

To make RLIMIT_CORE to unlimited, you should edit /etc/init.d/firebird file. This is the startup script for Firebird, however it's exact location may differ for on various versions of Linux, but in most cases it usually is in /etc/init.d directory. See your OS documentation for exact location of the startup script. Script contents may also differ much depending on Linux version. In all files you can find a line starting with:
export FIREBIRD=
or
FIREBIRD=
(followed by FbRoot directory, usually /opt/firebird). Add right after this command:

ulimit -c unlimited
and restart Firebird.
Superserver always sets it's working directory to /tmp, which is normally writable to everyone. You Should find the core dump in /tmp after next crash.

Classic server

The Classic server is normally started using xinetd, but there is no easy way to separately configure ulimit for services, started in this manner. The only way to is to set ulimit for xinetd itself. To do this, you should modify startup the script for xinetd. These scripts differ for the various Linux versions, but in most cases adding:
ulimit -c unlimited
near the beginning of the script should work. Do not forget to restart xinetd after modifying the startup script.
Classic server has / (root) as it's working directory, which is normally writable only to root user. Therefore if you are not running Firebird as root, you will not get core dump.
To solve this problem do one of the following:
use restoreRootRunUser.sh script to temporarily run firebird as root (to revert back to the Firebird runuser, user changeRunUser.sh). There is a slim possibility that some crashes may not be reproducible when running as root. make / writable for user firebird. This is probably the best solution for systems with ACLs support.

Analyzing a core dump with gdb

To analyze the core dump you should download the debuginfo package from the main Firebird download pages (for non normal Firebird project supplied packages or OS's where the debuginfo packages are not available you may need to contact the package maintainer for the debuginfo package). Debuginfo package is not an install – just untar it in the root of your filesystem. After if you may use:
# gdb /opt/firebird/bin/.debug/fb_inet_server.debug core
Then use the following gdb command:
(gdb) thread apply all bt
to analyze core dump of classic server or:
# gdb /opt/firebird/bin/.debug/fbserver.debug core
Then use the following gdb command:
(gdb) thread apply all bt
to analyze core dump of superserver.
Firebird's debuginfo before 2.5.0 has one problem – all binaries in it are linked as runtime, not debug. This is not critical for superserver, but can cause problems for classic. To analyze classics's core properly, do:
# mv /opt/firebird/lib/libfbembed.so.1.5.5 /opt/firebird/lib/libfbembed.so.1.5.5.runtime
# mv /opt/firebird/lib/.debug/libfbembed.so.1.5.5.debug /opt/firebird/lib/libfbembed.so.1.5.5
After analyzing core, rename the files back.
The sample is provided for Firebird 1.5.5, but if you substitute your version number, it's correct for any Firebird version.
For Firebird versions starting with 2.5.0 you do not need to rename the files - just use gdb as normal, abnd it will pick up the debuginfo automatically.

quarta-feira, novembro 09, 2011

Dropbox init script to use with systemd

#!/bin/sh
# chkconfig: 345 85 15
# description: Startup script for dropbox daemon
#
# processname: dropboxd
# pidfile: /var/run/dropbox.pid
# config: /etc/sysconfig/dropbox
#

### BEGIN INIT INFO
# Provides: dropboxd
# Required-Start: $local_fs $network $syslog
# Required-Stop: $local_fs $syslog
# Should-Start: $syslog
# Should-Stop: $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start up the Dropbox file syncing daemon
# Description: Dropbox is a filesyncing sevice provided by dropbox.com
# This service starts up the dropbox daemon.
### END INIT INFO

# Source function library.

. /etc/rc.d/init.d/functions

# To configure, add line with DROPBOX_USERS="user1 user2" to /etc/sysconfig/dropbox
# Probably should use a dropbox group in /etc/groups instead.
#DROPBOX_USERS="renato"

[ -f /etc/sysconfig/dropbox ] && . /etc/sysconfig/dropbox
prog=dropboxd
lockfile=${LOCKFILE-/var/lock/subsys/$prog}
config=${CONFIG-/etc/sysconfig/dropbox}
RETVAL=0
DAEMON=.dropbox-dist/dropbox

start() {
 echo -n $"Starting $prog"
 if [ -z $DROPBOX_USERS ] ; then
  echo -n ": unconfigured: $config"
  echo_failure
  echo
  rm -f ${lockfile} ${pidfile}
  RETURN=6
  return $RETVAL
 fi

 for dbuser in $DROPBOX_USERS; do
  HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
  if [ -x $HOMEDIR/$DAEMON ]; then
   echo
   echo -n "daemon --user $dbuser /bin/sh -c \"$HOMEDIR/$DAEMON&\"  "
   daemon --user $dbuser /bin/sh -c "$HOMEDIR/$DAEMON&"
  fi
 done
 
 RETVAL=$?
 echo
 [ $RETVAL = 0 ] && touch ${lockfile}
 return $RETVAL
}

status() {
 for dbuser in $DROPBOX_USERS; do
  dbpid=`pgrep -u $dbuser dropbox | grep -v grep`
  if [ -z $dbpid ] ; then
   echo "dropboxd for USER $dbuser: not running."
  else
   echo "dropboxd for USER $dbuser: running (pid $dbpid)"
  fi
 done
}

stop() {
 echo -n $"Stopping $prog"
 for dbuser in $DROPBOX_USERS; do
  killproc ~$dbuser/.dropbox-dist/dropbox
 done
 RETVAL=$?
 echo
 [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
}

# See how we were called.
case "$1" in
 start)
  start
 ;;
 status)
  status
 ;;
 stop)
  stop
 ;;
 restart)
  stop
  start
 ;;
 *)
echo $"Usage: $prog {start|status|stop|restart}"
RETVAL=3
esac
exit $RETVAL