Aggiornare firmware Android su HTC Dream G1 Tim (Android 1.6 + CyanogenMod)

AVVISO: ho pubblicato una guida aggiornata per Android 2.1 + CyanogenMod 5.x

Questo lunedଠmi è arrivato l’HTC Dream marchiato Tim che in questi giorni si trova scontato al Mediaworld (289 euro, di listino sta a 349).
Purtroppo, come spesso capita con gli smartphone che montano un software modificato dagli operatori, la versione è vecchia, non più mantenuta e spesso priva di alcune applicazioni “strategiche” (google talk, chat, sincronizzazione contatti gmail).

Con Tim inoltre, non è possibile accedere nativamente come utente root e poter riflashare liberamente il proprio Android.
Quindi, prima di poter aggiornare il software, è necessario sfruttare una qualche falla per potere accedere come utente privilegiato.

Girovagando per la rete, ho scoperto una comunità  italiana Android in cui, oltre ad un blog, mettono a disposizione un wiki con diverse istruzioni sul come aggiornare il proprio droid, incluso il mio.
Peccato che le immagini Android che mettono a disposizione sian piuttosto obsolete e anche le istruzioni mi son sembrate, con il senno di poi, più complesse del dovuto.

Cercherò qui di ricostruire i passi da effettuare per poter mettere una versione di Android decentemente aggiornata e funzionale.

Hardware:

  • HTC Dream Tim
  • Cavetto USB (in dotazione)

Software:

Le SDK contengono software e documentazione necessaria a chi vuol sviluppare sia Android che applicazioni per Android. Fastboot è una utility per bypassare il caricamento dell’immagine di presente sulla memoria e passarne una “volante” tramite USB (puoi scompattarlo all’interno della cartella tools dell’SDK)

Riepilogo

  1. Abilita USB Debugging
  2. Fastboot
  3. Installazione cm-recovery
  4. Installazione Android 1.6 + CyanogenMod

Abilita USB Debugging

Menu -> Impostazioni -> Applicazioni -> Sviluppo -> Debug USB
$ ./tools/adb devices List of devices attached HT935NG08417 device
Se il vostro device viene riportato, siete pronti per poter utilizzare Fastboot

Fastboot

$ wget http://blog.scorpionworld.it/wp-content/uploads/2009/11/boot.zip $ unzip boot.zip
Accendi il telefono utilizzando il tasto Power + Camera
$ ./tools/fastboot boot boot.img
Attendi il caricamento di Android…
$ ./adb shell
Adesso sei collegato al tuo Android con privilegi di root:
# id uid=0(root) gid=0(root)

Passiamo il filesystem /system da sola lettura a lettura/scrittura, e creiamo una copia della shell però con il flag setuid attivo (che ci permetterà  di avere una shell root senza esser root)
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system # cat /system/bin/sh > /system/bin/su # chmod 4755 /system/bin/su # exit

Adesso siamo pronti per poter flashare il nostro device con un versione di Android custom.
Cosଠa naso, sembra che il miglior Android mantenuto dalla comunità  è CyanogenMod, e anche qui c’è un nutrito wiki con la procedura per installarlo (upgrade da firmware con root).

Installazione cm-recovery

Scarica la più recente versione della Recovery Image CyanogenMod (sostituisce il sistema minimale di recovery, sarà  utilizzato per poter installare facilmente Android+CyanogenMod)

Scompatta e copia la prima immagine direttamente nella cartella principale della tua memoria SD (con il telefono collegato al pc, seleziona l’avviso che esce fra le notifiche in alto del device e fai Connetti) e riapri una shell:
$ ./tools/adb shell # su # flash_image recovery /sdcard/cm-recovery-1.4.img # exit

Installazione Android 1.6 + CyanogenMod

Scarica l’ultimo firmware marcato “recovery image” qui
Scarica l’ultima immagine ufficiale di Android 1.6 denominata recovery image.
Scarica l’ultima release di CyanogenMod (contiene il mod Cyanogen, il nome del file è del tipo update-cm-$versione-signed.zip).

Adesso copia i due files zip nella cartella principale della tua memoria SD (non li scompattare!)

Procediamo con la reinstallazione del sistema: completa entrambi i passi, non riavviare.

Puoi accedere al sistema di recovery appena installato accendendo il telefono tramite Home + Power.
Seleziona ‘Apply any zip from SD’ e poi signed-dream_devphone_userdebug-ota-14721.zip (Android 1.6)
Seleziona nuovamente ‘Apply any zip from SD’ e poi update-cm-4.2.5-signed.zip (CyanogenMod)
Premi Home + Back per riavviare.

Al successivo riavvio, se tutto è andato come previsto, vedrete apparire il logo in blu che identifica la CyanogenMod.

A questo punto in cui sarete colti da immensa felicità , ricordatevi di installare anche l’applicazione Cyanogen Updater che trovate nel Market, cosଠche con due click potrete facilmente aggiornare all’ultima versione di CyanogenMod (prevalentemente bugfix ma spesso arrivano anche nuove features) senza nemmeno dover usare il proprio pc.

Unica nota di demerito: la tastiera pare esser con layout americano, nessun problema per le lettere, solo i tasti secondari sono messi fuori posto. Non ho ancora voluto indagare perchè alla fine si fa prima ad imparare il nuovo layout (:P), ma se qualcuno ha la soluzione sarei più che felice di integrarla in questa guida.

About gionn

IRC: gionn @ irc.freenode.com
This entry was posted in Hardware, it_IT and tagged , , , , , , , . Bookmark the permalink.

50 Responses to Aggiornare firmware Android su HTC Dream G1 Tim (Android 1.6 + CyanogenMod)

  1. Stefano says:

    Ciao, a me è arrivato oggi il mio HTC DREAM, vorrei però poter aggiornare il firmware…. Avrò la possibilità di trovarti in MSN e mi guideresti passo passo perchè io veramente non so da che parte iniziare…. Grazie comunque.

  2. Scorp says:

    Se non sei sotto minaccia fisica, direi di lasciar perdere se dubiti fortemente delle tue capacità a sta maniera.

  3. Androea says:

    Ciao Scorp, però hai sbagliato.. è androidiani.com non .it :P

  4. Scorp says:

    Pardon, corretto! :P

  5. Andrea says:

    Ciao, complimenti per la guida, però avrei un problema:
    quando mando il comando:
    c:\sdk\….\tools> fastboot boot.img
    mi arriva questo errore:
    downloading boot.img … FAILED<command write filed>
    io il boot.img l’ho già scaricato da http://www.androidiani.com/tim/boot.zip, ed ho estratto il contenuto all’interno della cartella Tools dell’sdk…..potresti darmi una mano?
    ps:(visto che uso windows vista potresti dirmi i comandi specifici per windows di:
    $ wget http://www.androidiani.com/tim/boot.zip
    $ unzip boot.zip
    sono un pò ignorante in materia)
    pps:il contenuto della cartella boot.zip va messa all’interno di tools?

  6. Scorp says:

    Penso ci sia qualche inghippo con Windows, documentato in una pagina del wiki di Androidiani
    http://www.androidiani.com/wiki/Guida_all%27uso_di_ADB/Fastboot

    Comandi per windows non ne servono, si tratta solo di scaricare il file e unzipparlo.

    Facci un giro!

  7. Andrea says:

    …. non funzionano…… mi sa che la procedura la faccio da mio zio (che ha un mac), come si chiama il prompt dei comendi del mac?

  8. Andrea says:

    sono riucito a fare tutto, è bastato usare un pc con windows xp (evidentemente vista ha dei blocchi…..)
    Grazie ancora per tutto!!!!!

  9. Scorp says:

    Credo sarebbe fattibile e anche comodo utilizzare un live-cd Ubuntu (se proprio non si vuole installarlo) e tenersi l’sdk per linux su chiavetta usb, disco esterno o sulla partizione di windows:
    non ci sarebbero beghe di driver non funzionanti / periferiche non riconosciute come su windows.

  10. Andrea says:

    si ma è lento da suicidio…..

  11. Marco says:

    Io devo aver sbagliato qualcosa…
    ora mi carica il logo tim, poi quello di CyanogenMod e poi lo schermo diventa nero (rimanendo però acceso) e per spegnerlo è necessario togliere la batteria :(((((
    E’ comunque possibile accedere alla Fastboot e alla Recovery mode e il pc lo riconosco…

    Come posso risolvere???

    Aiuto please :(

  12. Scorp says:

    Hai riprovato? C’è qualche passo che ti è sembrato poco chiaro?

  13. NiK says:

    Succede la stessa cosa anche a me… c’è solo la barra delle notifiche in alto!

  14. Riccardo says:

    Ciao Scorp, avrei una domanda da farti.
    Ho seguito le tue istruzioni, ma al momento di installare la recovery 1.6 ufficiale HTC la procedura si interrompe a causa del SPL non compatibile. Ho l’originale HBOOT-1.38.0000 (DREA20000).
    Devo prima installare l’HARD-SPL ?
    Tu quale hai ?
    Grazie.

  15. Scorp says:

    @Riccardo: anche io stesso SPL, e conviene che lasci quello perchè col mio funziona tutto e aggiornare SPL è l’unico modo sicuro per brickare l’htc dream.
    Per inciso, non esiste nessuna recovery 1.6 di htc.
    Non riesci ad installare l’immagine recovery cm-recovery o non ti fa installare il firmware base di android 1.6?
    L’errore preciso è?

    @NiK @Marco: io non ne ho avuto bisogno, ma probabilmente fare un bel ‘wipe data/factory reset’ (Alt+W) da recovery (Home+Power) aiuta parecchio. Ovviamente con backup fatti.

  16. Griffo says:

    Scusa la domanda, ma “Recovery Image” che cosa dovrebbe fare? Fa un backup del G1? Se si dove lo trovo questo backup? Se qualcosa dovesse andare storto come faccio a ristabilire il cell come era prima??
    Grazie!!!

  17. Griffo says:

    Ah scusa, ma dov’è il link del firmware 1.6???

  18. Scorp says:

    I nomi sono fuorvianti perchè identici, ma non è colpa mia :P

    La cm-recovery è un sistema android minimale, puoi usarlo sia per effettuare un backup dell’immagine android completa che hai desso (tramite l’utility nandroid), sia per reinstallare il sistema se qualcosa va storto o se decidi di installare un altra versione android.

    L’immagine android del sistema vero e proprio, è quella al passo successivo, e sul sito developer.htc.com viene etichettata come “Recovery Image”, non perchè sia l’immagine di recovery succitata, ma perchè è l’immagine completa del sistema da utilizzare se si vuole effettuare un recupero completo della versione originale.

    Ho aggiornato il link della “Recovery Image”, ora dovrebbe esser più complicato non vedere il file corretto da scaricare ;)

    Se vuoi effettuare un backup tramite nandroid non solo del sistema completo, ma anche dell’immagine di recovery, devi avviare il sistema con l’immagine cm-recovery tramite il fastboot (altrimenti se la installi sovrascrivi quella di ora e quindi niente backup). Per la procedura dettagliata dai un occhio qui http://www.androidiani.com/wiki/Root_su_HTC_Dream#Si_inizia.21_Mettiamo_la_recovery_modificata.21

  19. Griffo says:

    Scusami io a quel link vedo una tabella con dei nomi tipo:
    signed-dream_devphone_userdebug-ota-14721.zip
    l’inzio del link quale sarebbe? :(

  20. Scorp says:

    Gulp!

    Sarebbe quello, ma il link al file è stato tolto, che sia in aggiornamento la pagina?

    Google propone questo: http://www.mediafire.com/?1gqtzgzmdw4