Tugulab Blog.

Come configurare Openmoko sul NeoFreerunner e utilizzarlo! UPDATED

author avatar

clacla

Nel momento in cui scrivo è uscito da poco la nuova versione di Openmoko la 2008.8, che non è stabilissima, ma porta grandi novità ed è davvero accattivante. Insomma quasi usabile per un telefono da tutti i giorni.
Nel seguente articolo vedremo come flashare, aggiornare, installare e configurare la nuova immagine di Openmoko 2008.8 con un PC ovviamente GNU/Linux ed in particolare Ubuntu 8.04.

Foto di TuxFux.ch

Update: vi consiglio di seguire la mia guida aggiornata su come iniziare ad usare il FreeRunner Openmoko da questo post!

Update: Ho aggiornato il Passo 8 togliendo dalla lista dei programmi da installare il mediaplayer della suite qtopia (non funzionante) e aggiungendo le istruzioni per modificare il tema del mediaplayer gtk, per renderlo utilizzabile

Update: Modificato il Passo 7. I repository che si utilizzavano non sono più affidabili e con l’uscita degli aggiornamenti ufficiali per il 2008.8 non serve più appoggiarsi a quelli di terze parti.

Update: Modificato il Passo 11, poichè il metodo di avere la tastiera completa è cambiato.

»Ma ricominciamo un attimo da capo…

<< Ecco tra le mie mani finalmente il nuovo FreeRunner il primo telefono Openmoko! Dopo circa 10 mesi di ritardi, etc, etc, è qui! Bene… Ma non va praticamente niente…

(qualche minuto di desolazione…)
(6 ore per capire come collegarlo a internet correttamente…)
(un giorno di smanettamenti, flash, installazioni, etc… )

Ma ecco sono riuscito a fare funzionare praticamente tutto! >>

Bene bene allora vi illuminerò e vi farò fare in 1 ora quello che che ci ho messo io 2 giorni :D

Nota: non sono responsabile dei casini che combinerete con il vostro Freerunner o Pc, seguendo questa guida. Quindi a proprio rischio e pericolo.

Cominciamo
Quando vi arriva il FreeRunner avete la vecchia immagine di Openmoko 2007.2, quindi passiamo subito ad aggiornarla alla 2008.8.

Nota: a questo punto non importa che ci sia la SIM e la scheda SD inserite, è la stessa cosa.

»Passo 0

Si da come presupposto che abbiamo un pc con sopra installato una distribuzione GNU/Linux, se avete Ubuntu siete tranquilli che vada.

_»_Passo 1

Date nel terminale i seguenti comandi:
mkdir om-tmp
cd om-tmp/
wget http://downloads.openmoko.org/releases/Om2008.8/Om2008.8.rootfs.jffs2
wget http://downloads.openmoko.org/releases/Om2008.8/Om2008.8.uImage.bin
wget http://downloads.openmoko.org/releases/Om2008.4/dfu-util
chmod a+x dfu-util

_»_Passo 2

Inserite la batteria e collegate il cavo USB solo al Freerunner, non al PC. Poi tenete premuto il bottone AUX (in alto a sinistra) e subito dopo anche POWER (in basso a destra) per qualche secondo fino a quando appare una schermata.
Ora vi trovate nella modalità adatta a fare il flash delle immagini di Openmoko aggiornate. Da questo momento avete 30 secondi per collegare il cavo USB anche al PC e dare il seguente comando nel terminale, altrimenti il telefono si spegnerà e dovrete reiniziare dal Passo 2.

sudo ./dfu-util -a kernel -R -D ./Om2008.8.uImage.bin

Aspettate che il terminale vi restituisca “Done!”, ci vorrà circa 1 minuto.
Ora aspettate 30 secondi e il telefono si spegnerà.

_»_Passo 3

Ora come nel passo 2 dovrete: inserite la batteria e collegate il cavo USB solo al Freerunner, non al PC. Poi tenete premuto il bottone AUX (in alto a sinistra) e subito dopo anche POWER (in basso a destra) per qualche secondo fino a quando appare una schermata.
Ora vi trovate nella modalità adatta a fare il flash delle immagini di Openmoko aggiornate. Da questo momento avete 30 secondi per dare il seguente comando nel terminale, poi il telefono si spegnerà e dovrete reiniziare dal Passo 3.

sudo ./dfu-util -a rootfs -R -D ./Om2008.8.rootfs.jffs2

Anche qui aspettate fino a ché il terminale vi darà “Done!”, ma questa volta ci vorrà circa 10 minuti.
Ora aspettate 30 secondi e il telefono si spegnerà nuovamente.

A questo punto la nuova immagine 2008.8 è stata flashata correttamente sul FreeRunner.

_»_Passo 4

Ora vediamo di condividere la rete internet del vostro PC con il Freerunner. Avviamo quindi il dispositivo, tenendo premuto il pulsante POWER fino a quando lo schermo si accende. Aspettiamo che compaiano le poche icone della nuova Home (schermata principale) e quindi colleghiamo il cavo USB a entrambi i capi.

Nota: se avviate il PC, scollegate il cavo dal Freerunner, poichè si connetterà in automatico al quest’ultimo in maniera non corretta.

Ora scarichiamo lo script che ho scritto per automatizzare un pò le cose. Dovrete utilizzarlo ogni volta che volete collegarvi al FreeRunner condividendo internet.
Quindi da terminale:
wget http://blog.tugulab.org/wp-content/uploads/2008/08/om-internet.sh
chmod a+x om-internet.sh

_»_Passo 4.1

Ora per collegarvi vi basterà ogni volta dare
sudo ./om-internet.sh

Si aprirà una connessione remota con ssh al dispositivo e noterete che siete connessi poiché il prompt non terminerà più con $ ma terminerà con #.

Nota: la prima volta vi chiederà di digitare “yes” per poter aggiungere la chiave di sicurezza e quindi per potervi collegare. Quindi fatelo.

Nota: alcune volte vi apparirà un messaggio di errore del tipo:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
ae:9a:c8:f1:90:fc:d0:34:fb:bd:eb:65:bf:9c:58:e0.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:2
RSA host key for 192.168.0.202 has changed and you have requested strict checking.
Host key verification failed.

Voi andate ad eliminare la seconda riga dal file indicato(/root/.ssh/knownhosts alla riga 2) e ridate il comando sopra citato e tutto funzionerà.
Se non siete capaci, si può utilizzare una soluzione più drastica: eliminare il file indicato. Fatelo con il comando:
_sudo rm /root/.ssh/known_hosts

Bene ora siete collegati. Mi raccomando ora ricordatevi che quando volete staccare il Freerunner dal cavo USB, riavviare il dispositivo, o terminare la connessione con il dispositivo, dovete prima digitare “exit” altrimenti la connessione con il dispositivo di paralizzerà e dovrete chiudere il terminale a forza e se va male riavviare il PC.

_»_Passo 5

Dobbiamo modificare il file che si occupa dell’indirizzo del DNS, quindi indispensabile per navigare su internet.
Dobbiamo aggiungergli una riga, quindi digitiamo (nel terminale collegato al dispositivo, quello che con il # per intenderci):
echo “nameserver 212.147.10.10” > /etc/resolv.conf

Per verificare che funzioni digitate:
ping www.tugulab.org
e vedete se risponde con dei dati oppure no. Se vi da dei dati allo funziona.

Ora il problema è che ogni volta che riavviamo il dispositivo il file viene ripulito quindi o dobbiamo ripetere questo procedimento ad ogni riavvio, oppure continuate con il Passo 6 per farglielo fare in automatico all’avvio.

_»_Passo 6

Aprite un nuovo terminale senza chiudere quello vecchio e digitate:
wget http://blog.tugulab.org/wp-content/uploads/2008/08/dns-repair.sh
sudo scp dns-repair.sh root@192.168.0.202:/etc/init.d/

Ora tornate all’altro terminale quello collegato al dispositivo e date:
chmod a+x /etc/init.d/dns-repair.sh
update-rc.d dns-repair.sh defaults

_»_Passo 7

Ora aggiorniamo l’immagine appena installata con gli aggiornamenti ufficiali (ci vorrà un pò…).
Dal terminale collegato al dispositivo (terminante con #):

opkg update
opkg upgrade

_»_Passo 8

Aggiungiamo un pò di software utile all’utilizzo (media player, browser, navigatori gs, …):
opkg install gpsd openmoko-agpsui tangogps openmoko-mediaplayer2 openmoko-browser2 diversity-nav diversity-wifi gpe-scap illume-config illume-dicts-default illume-keyboards-default illume-keyboards-numbers midori nano om-locations openmoko-calculator2 openmoko-community-repository openmoko-terminal2 qtopia-phone-x11-ringprofile qtopia-phone-x11-textedit task-openmoko-feed vnc wpa-supplicant wpa-supplicant-passphrase x11vnc

Il comando precedente è tutto su una riga!

Poi per applicare le modifiche al gps:
echo “GPS_DEV=\”/dev/ttySAC1\”” > /etc/default/gpsd
/etc/init.d/gpsd restart

Ora modifichiamo il tema del lettore multimediale, in modo tale da renderlo utilizzabile:
wget http://docs.openmoko.org/trac/raw-attachment/ticket/1012/openmoko-mediaplayer-theme.tar.bz2
tar xjf openmoko-mediaplayer-theme.tar.bz2 -C /usr/share/themes/Moko/gtk-2.0
rm openmoko-mediaplayer-theme.tar.bz2

_»_Passo 9

Modifichiamo il tema delle GTK per vedere correttamente TangoGPS e anche le altre applicazioni GTK suppongo…

Da terminale collegato al dispositivo date:

mv /usr/share/themes/Moko/gtk-2.0/gtkrc /usr/share/themes/Moko/gtk-2.0/gtkrc_backup

Poi dall’altro terminale aperto date:

wget http://blog.tugulab.org/wp-content/uploads/2008/08/gtkrc
sudo scp gtkrc root@192.168.0.202:/usr/share/themes/Moko/gtk-2.0/

_»_Passo 10

Ora possiamo riavviare il dispositivo per vedere tutte le modifiche apportate.

Digitiamo prima nel terminale:

exit

La connessione al dispositivo si chiuderà. Staccate il cavo USB e premete per qualche secondo POWER. Una volta spento riaccendete il telefono fino a quando sarà arrivato alla Home.

Ora navigate un pò per le nuove applicazioni e vedete se vi piace :D

Noterete subito che la tastiera inclusa ha il problema che ha l’autocompletamento automatico che non si può disattivare, quindi la maggiorparte delle cose che volete scrivere non ci riuscirete a scriverle…

_»_Passo 11

Se volete una tastiera completa, la Illume Raster’s keyboard , fate ciò che segue.

Aprite un nuovo terminale(su pc) e digitate:

wget http://blog.tugulab.org/wp-content/uploads/2008/09/illume-keyboard.sh
sudo scp illume-keyboard.sh root@192.168.0.202:/home/root/

Ora da un altro terminale, ricollegatevi al dispositivo, come descritto al Passo 4.1, poi digitate:

chmod a+x /home/root/illume-keyboard.sh
/home/root/illume-keyboard.sh

Comincerà a scaricare dei pacchetti e spostare dei file. Ora controllate che nelle preferenze di Illume (cliccando sul disegno della “chiave inglese” che appare nel menu in alto, quando scende, e successivamente su “Keyboard”) che la tastiera sia impostata su “Default”.

A questo punto avrete la tastiera completa a disposizione.
Alcune istruzioni sull’uso di quest’ultima:
-per dare Invio, date un colpo(trascinare la penna) verso il basso sulla tastiera;
-per passare da lettere a numeri, date un colpo verso l’alto;
-per cancellare, un colpo verso sinistra;
-per lo spazio, un colpo verso destra;
(Altre info sul wiki a questa pagina)

Nota: potrebbe capitare che con qualche aggiornamento la tastiera venga sostituita,voi rieseguite il Passo 11 e dovrebbe ritornare a posto

_»_Ora potete godervi il vostro Freerunner funzionante…

Certo le prossime versioni ci porteranno ad avere tutto funzionante con molta meno fatica, ma spero che almeno voi non perdiate 2 giorni come me per far funzionare questa… :D

Nota finale: se vi sono imperfezioni vi prego di segnalarmele. Grazie