##master-page:HomepageTemplate
#format wiki
#LANGUAGE it
<
>
<>
= Introduzione =
Questa guida serve per aiutare a collegare tramite [[http://www.synce.org|Synce]] il vostro palmare WM 5/6/6.1 alla vostra Ubuntu Box tramite cavo USB.
La guida è stata scritta per Ubuntu Hardy Heron 8.04, ma ho aggiunto anche le parti che eventualmente divergono per Intrepid Ibex 8.10 (repository citati, alcuni comandi). Non ho purtroppo idea della compatibilità con le versioni precedenti.
Inoltre spiega anche come sincronizzare contatti, calendario, attività e files con Evolution.
Se poi trovassi anche un modo per sincronizzare la posta ...
= Preparazione =
Innanzittutto il vostro palmare/smartphone deve essere configurato per usare RNDIS
* WM5: Microsoft non fornisce un programma per modificare il comportamento del collegamento che pertanto è già di default con RNDIS. Se si hanno problemi, controllate l'esistenza di un programma per modificare i parametri USB sul vostro apparecchio (alcuni produttori forniscono strumenti di terze parti insieme al vostro device per farlo).
* WM6/6.1: Andate su Start -> Impostazioni -> Connessioni -> USB a PC e verificate che sotto ActiveSync sia abilitato il check per "Attiva le funzionalita' avanzate di rete".
'''ATTENZIONE''': Non è detto che in tutti i device sia esattamente questa la procedura. Per esempio il modello Asus P535 necessita dell'attivazione del ''Turbo Mode'' nelle ''Impostazioni USB''.
Fate quindi riferimento al manuale del proprio device/terminale per sapere come fare.
Quando collegate il terminale al computer, dmesg deve darvi un messaggio simile al seguente:
{{{
[ 156.340020] usb 7-3: new high speed USB device using ehci_hcd and address 4
[ 156.500511] usb 7-3: configuration #1 chosen from 1 choice}}}
Inoltre dovete inserire nel vostro '''/etc/apt/sources.list''' le seguenti righe
{{{deb http://ppa.launchpad.net/synce/ubuntu hardy main
deb-src http://ppa.launchpad.net/synce/ubuntu hardy main}}}
o, per Intrepid
{{{deb http://ppa.launchpad.net/synce/ubuntu intrepid main
deb-src http://ppa.launchpad.net/synce/ubuntu intrepid main}}}
e dare il classico
{{{
sudo apt-get update}}}
per caricare il nuovo repository
= Installazione =
'''Nota Bene : Come detto, sia per WM5 che per WM6/6.1 si userà il modulo ''RNDIS'' e non più il vecchio modulo ''ipaq'', per cui la prima cosa da fare è installare e compilare il modulo ''usb-rndis-host''.
Il sito di Synce riporta che dal kernel 2.6.24 in poi, il modulo è già correttamente installato, ma in realtà funziona solo con alcuni PDA e c'è al momento un bug risolto in attesa di patch (che non è ancora stata implementata nel 2.6.28) che rende veramente compatibile con tutti i PDA i moduli inseriti nel kernel. Vale perciò la pena passare direttamente al passo ''Installazione Librerie'' e solo se il comando {{{synce-pls}}} dovesse dare errori, tornate qui e seguite il passo successivo, perchè il vostro PDA non è compatibile con i moduli presenti nel kernel (HTC in particolare)'''
== Installazione Modulo usb-rndis-host ==
=== Procedura per Hardy Heron ===
0. Per prima cosa provate a rimuovere i moduli che potrebbero già essere installati
{{{
sudo rmmod rndis_host cdc_ether usbnet}}}
Se vi dice che i moduli non erano installati, niente paura e proseguite.
0. Se erano installati, conviene rimuoverli anche fisicamente dal file system.
{{{
sudo rm /lib/modules/`uname -r`/kernel/drivers/net/usb/{rndis_host,cdc_ether,usbnet}.ko}}}
Può essere che vi dia errore. Non è un problema e proseguite.
0. Ora scarichiamo e compiliamo i nuovi moduli
{{{sudo apt-get install usb-rndis-source cdbs
sudo module-assistant auto-install usb-rndis}}}
Al termine, avrete installato il modulo corretto. È utile riavviare prima di proseguire.
=== Procedura per Intrepid Ibex ===
È più semplice ma meno immediata.
0. Dovete installarvi il client di subversion (dovete abilitare il repository Universe) e alcune librerie per la compilazione:
{{{
sudo apt-get install subversion libdbus-glib-1-dev pkg-config libglib2.0-dev python python-all-dev python-pyrex autotools-dev libgnet2.0-dev libhal-dev automake libtool build-essential}}}
0. Da terminale, andate in una cartella nella vostra home in cui vi viene bene scaricare i dati di cui sotto e digitate :
{{{
svn co http://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite}}}
0. Nella cartella usb-rndis-lite appena scaricata, entrate e digitate in sequenza:
{{{sudo ./clean.sh
sudo make
sudo make install}}}
Se vi stupisce l'uso di ''sudo'' davanti a clean.sh e make, il motivo è legato al fatto che clean.sh va a rimuovere i moduli presenti nel kernel per preparare la compilazione e l'installazione dei moduli di Synce. Siccome poi configura anche una parte dei sorgenti, make non ha più diritti per compilarli a meno che non lo lanciate come superuser. Non ho trovato altra soluzione.
Dopo l'installazione, fate un bel reboot e i nuovi moduli sono operativi.
== Installazione Librerie ==
Dal mese di Luglio 2008, Synce ha rilasciato la versione 0.12 di synce-hal che ha risolto molte delle magagne della vecchia versione. Pertanto andremo a usare synce-hal per effettuare la connessione, ma se non vi funzionasse potete sempre installare odccm. I due sono mutualmente esclusivi, pertanto o si installa uno o si installa l'altro. Le dipendenze settate sono in grado di dire ad Apt di installare uno e rimuovere l'altro e viceversa.
Andiamo a installare ''synce-hal''
{{{
sudo apt-get install synce-hal librra0-tools librapi2-tools}}}
== Connessione al palmare ==
A questo punto, se non l'avete già fatto, collegate il palmare, attivate ActiveSync su di esso, tornate al pc, aprite il terminale e digitate :
{{{
synce-pls}}}
Se l'output è una cosa simile :
{{{amministratore@linux-server:~$ synce-pls
Directory 2008-09-16 13:00:12 Immagini/
Directory 2008-09-16 13:00:14 Modelli/
Directory 2008-09-16 13:00:14 Personale/
Directory 2008-09-16 13:00:14 Lavoro/
Directory 2008-09-16 13:00:14 Musica/
Directory 2008-09-16 13:00:14 Suonerie/
Directory 2008-09-16 13:02:10 Video/
Directory 2008-09-16 13:02:12 UAContents/
Directory 2008-09-16 13:02:12 Voci/
Directory 2008-11-13 15:30:06 Chiamate/
Directory 2008-11-17 15:59:54 Condivisione Bluetooth/
...}}}
Complimenti ! Funziona tutto.
In caso contrario, seguono le possibili soluzioni ai problemi più comuni :
== Troubleshooting ==
=== Interfaccia di rete ===
La prima cosa da verificare è che il palmare/smartphone/WM5/6/6.1 sia visto come interfaccia di rete.
Per fare questo basta dare un {{{
dmesg}}}
subito dopo aver collegato il device via USB, per verificare se viene visto, riconosciuto e quale device gli viene assegnato.
E'possibile anche farlo dando il seguente comando {{{
ifconfig -a | grep 80:00:60:0f:e8:00 | cut -d " " -f 1}}} (potrebbe essere necessario avviarlo con ''sudo'' davanti).
Se avete installato il modulo '''usb-rndis-host''', il device sarà quasi sicuramente '''rndis0''', ma un controllo ovviamente non fa mai male.
A quel punto, se in dmesg avete delle righe simili a questa :{{{
[ 158.179058] rndis0: register 'rndis_host' at usb-0000:00:09.2-3, RNDIS device (SynCE patched), 80:00:60:0f:e8:00
[ 168.612010] rndis0: no IPv6 routers present
}}}
siete già a buon punto.
Aprite ''/etc/network/interfaces'' con un editor di testo, e aggiungete una riga come questa {{{
auto rndis0
iface rndis0 inet dhcp}}}
tenendo bene a mente che '''rndis0''' dovete aver prima verificato se è il vostro device oppure se ha un altro nome. Nel caso sostituitelo con il device appropriato.
Riavviate la rete con {{{
sudo /etc/init.d/networking restart}}}
ricollegate il palmare (killando ActiveSync sul palmare prima di ricollegarlo, così siete sicuri) e riprovate con {{{
synce-pls}}}
Potreste aver già risolto.
=== Firewall ===
Come seconda cosa, verificate che il vostro firewall, se ne avete uno, non stia bloccando il passaggio dei dati.
Potrebbero infatti non esserci regole per il device '''rndis0'''.
Disabilitate il firewall per un attimo (è la cosa più veloce da fare) e ritentate il collegamento (usando poi ''synce-pls'' per vedere se vedete i dati).
Se tutto è a posto, il firewall è il problema e pertanto va configurato.
Tenendo a mente che questa guida è solo per sincronizzare i dati fra palmare e computer e non ritiene di usare la connessione a internet sul palmare tramite USB, il mio suggerimento è di aggiungere una regola sul firewall che accetti tutto il traffico in entrata e in uscita sull'interfaccia rndis. Praticamente è come disabilitare il firewall per la connessione del palmare.
Ne consegue che se invece pensate di sfruttare la connessione a internet del computer per navigare con il palmare, una regola così può essere abbastanza pericolosa (teniamo a mente che stiamo usando Windows Mobile ...).
Pertanto vi rimando alla documentazione del vostro firewall (che sia iptables o ufw o quant'altro) per scrivere una regola adeguata a consentirvi il traffico fra pc e palmare ma a bloccare gli ingressi provenienti da internet, a meno che non espressamente richiesti da voi (è il caso dei browser, per esempio)
=== Blacklisting Moduli Precedenti ===
Le prime due operazioni dovrebbero bastare per quasi tutti, ma è possibile che prima di avere un device WM5/6/6.1, voi possedeste un palmare WM2002/2003 e che aveste già tentato (con successo o meno) di collegarlo al computer.
Pertanto, 99 su 100, avrete installato il modulo '''ipaq''' nel kernel. Ma questo va in conflitto con tutto il processo di connessione e pertanto è opportuno blacklistarlo e rimuoverlo.
Per blacklistarlo, basta aprire,con diritti di amministratore, con un editor di testo il file {{{
/etc/modprobe.d/blacklist}}}
e aggiungere la riga {{{
blacklist ipaq}}}
in fondo al documento.
Dopodiché, rimuovetelo dando {{{
sudo rmmod ipaq}}} nel terminale.
= Configurazione =
0. Una volta verificato che il PDA viene letto dal pc, per configurare la sincronizzazione bisogna innanzittutto installare i seguenti pacchetti :
{{{
sudo apt-get install multisync-tools opensync-plugin-evolution opensync-plugin-synce}}}
Se ci sono utenti KDE, possono usare ''opensync-plugin-kdepim'' invece che ''opensync-plugin-evolution''.
0. Il motore di Synce (synce-sync-engine) dovrebbe partire in automatico ogni volta che ci si collega (non ha interfaccia grafica, per cui potete vederlo solo frugando tra i processi attivi), però potrebbe aver bisogno di un file di configurazione. Io personalmente non ne ho avuto bisogno, ma potrebbe essere utile per qualcuno. Per ottenerlo e configurarlo fate :
{{{
mkdir ~/.synce
wget -O ~/.synce/syncengine.conf.xml http://synce.svn.sf.net/svnroot/synce/releases/0.11.1/sync-engine/config/config.xml
nano ~/.synce/syncengine.conf.xml}}}
0. Ora bisogna creare la partnership (o profilo di sincronizzazione) per dire a synce quali sono le parti da sincronizzare.
Windows Mobile supporta fino a due profili, per cui, se avete già delle partnership attive (se avevate o avevate tentato o una configurazione con un WM2003, è probabile che ci siano), il consiglio è di cancellarle (con il comando ''synce-delete-partnership'', a meno che non necessitiate di esse per la configurazione con altri PDA). Nel caso non possiate cancellarle , vi consiglio di usare un nuovo nome per la partnership così non vi confondete.
Per creare la partnership scrivete:
{{{
synce-create-partnership "Linux desktop" "Contacts,Calendar,Tasks,Files"}}}
= Sincronizzazione =
----
CategoryHomepage