Evidemment pour que cette HOWTO vous serve à quelques choses, vous devez être en poséssion :
La configuration de test est une debian testing (SARGE) avec un kernel 2.6.10 et une carte USB2 LaCie.
Evidemment cela aurait été trop simple de juste faire des apt-get. Vous devez modifier le fichier /usr/src/linux/drivers/usb/serial/ipaq.c à la ligne 920. Vous devez juste modifier le retour de la fonction, pour qu'elle retourne toujours zéro. Un fix devrait voir le jour prochainement mais en attendant:
# vi +920 /usr/src/linux/drivers/usb/serial/ipaq.c
- return usb_reset_configuration (serial->dev);
+ return 0; /* return usb_reset_configuration (serial->dev)*/;
PS: cherchez la ligne préfixé par le '-' et remplacez la par la ligne préfixé par +. Les puristes aurait préféré un patch mais bon pour une ligne...</flemme>
Une fois l'étape 1 effectuée, vous devez mettre en module quelques fonctionnalités du noyau:
Compilez et installez les modules :
# cd /usr/src/linux
# make modules && make modules_install
# update-modules.modutils
Il faut spécifier des options au module IPAQ. Pour cela, ouvrez avec votre éditeur favori le fichier /etc/modprobe.conf et rajoutez :
options ipaq vendor=0x049f product=0x0003
Ensuite chargez les modules suivants, à condition que vous avez déja la couche USB de lancée (EHCI/OHCI|UHCI). Verifiez avec un lsmod qu'ils sont bien chargés.
# modprobe ipaq
# modprobe ppp_generic
# modprobe ppp_async
# lsmod
# dmesg
Avec dmesg, vous devriez avoir des logs kernel du type :
[..]
drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
drivers/usb/serial/usb-serial.c: USB Serial support registered for PocketPC PDA
drivers/usb/serial/ipaq.c: USB PocketPC PDA driver v0.5
ipaq 4-2:1.0: usb_probe_interface
ipaq 4-2:1.0: usb_probe_interface - got id
ipaq 4-2:1.0: PocketPC PDA converter detected
usb 4-2: PocketPC PDA converter now attached to ttyUSB0
usbcore: registered new driver ipaq
[..]
Synce est un ensemble de bibliothèques et d'outils permettant de se connecter à des périphériques de type Windows CE, Windows Mobile. Pour plus d'informations allez sur : synce.sourceforge.net
Installez Synce à partir des paquets Debian (0.9.0). Et suivez les instructions de debconf. Si vous ne savez pas, laissez les paramètres par défaut.
# apt-get install libsynce0 synce-dccm synce-serial librapi2-tools hotplug
Tout d'abord il faut lancer le démon de gestion des connexions ActiveSync (c). Pour cela, lancez le en tant qu'utilisateur :
$ dccm
Maintenant, si hotplug n'a pas fait son travail, initialisons la connection ActiveSync (c) en tant que root :
# synce-serial-start
Votre téléphone devrait indiquer qu'il est connecté dans l'interface ActiveSync (Démarrer 9 7). Vous pouvez également vérifier si vous êtes connecté via la commande synce-pstatus
$ synce-pstatus
Version
=======
Version: 4.21.1088 (Unknown)
Platform: 3 (Windows CE)
Details: ""
[..]
Memory for storage: 1572864 bytes (1 megabytes)
Memory for RAM: 22671360 bytes (21 megabytes)
$
Si vous avez la malchance d'avoir un :
pstatus: Unable to initialize RAPI: An unspecified failure has occurred
Cherchez des erreurs dans dmesg et/ou dans les logs système. Si vous voyez des :
pppd[21318]: LCP terminated by peer
pppd[21318]: Connection terminated.
pppd[21318]: Connect time 0.1 minutes.
Cela signifie que la connexion PPP a été tenté mais qu'elle s'est immédiatement fermée parce que le SPV C500 est planté. Il faut killer le processus pppd initié, vous trouverez le PID dans les logs système (attention à ne pas killer votre connexion ADSL ;) . Déconnectez le SPV c500 de l'USB. Rebootez le! Puis recommencez la manipulation.
Si ca ne fonctionne toujours pas, lisez la FAQ de SYNCE de Synce.
Pour transfèrer les fichiers via la connexion PPP, vous devez utilisez des outils spécifiques qui sont des commandes du type synce-pXXXXXX. Où XXXXXX est le nom de la commande, comme ls, rm, mkdir, rmdir, mv, cp. Pour des raisons de commodités vous pouvez créer des liens symboliques afin de racourcir le noms des commandes, en effet Debian a rajouté le préfixe synce- alors que les commandes SYNCE des releases (sources) n'ont pas ce préfixe. Néanmoins pour des raisons de clarté, je donnerais les noms de commande Debian.
Voici quelques exemples, à exécuter en tant qu'utilisateur et non pas en root :
Pour lister le contenu de "My Documents", il suffit de faire:
$ synce-pls
Pour lister le contenu de la racine:
$ synce-pls "/"
Pour lister le contenu d'un répertoire, il faut impérativement le "trailing slash". C'est à dire le '/' comme caractère de fin après le nom du répertoire.
$ synce-pls "/Storage/"
Soyez vigilement, la syntaxe de synce-pcp est particulière et pas très intuitive. Il est impossible en une seule commande de copier un répertoire ou un groupe de fichiers, les wildcards [*,?] ne sont pas supportés ce qui ne rend pas la copie aisée. A retenir le ":" signifie la resource distante donc le SPV ET il est indispensable de donner un chemin absolu !
Pour downloader un fichier (du SPV vers le PC)
$ synce-pcp ":/Storage/My Documents/My Photos/IMAGE_037.jpg"
ou
$ synce-pcp ":/Storage/My Documents/My Photos/IMAGE_037.jpg" AUTRE_NOM.jpg
Pour uploader un fichier (du PC vers le SPV)
$ synce-pcp star_1 ":/Storage/My Documents/My Videos/starwars3.mp4"
Pour copier tout les fichiers d'un répertoire (du SPV vers le PC)
$ for i in `pls "/Storage/My Documents/My Photos/" | awk '{print $8}'` ; do pcp ":/Storage/My Documents/My Photos/$i" ; done
Les autres commandes de base sont assez simples, comme créer un répertoire, le supprimer ou la suppression de fichier, etc. Toutes ces commandes doivent toujours utilisés des chemins absolues.
Quant aux commandes de gestion d'applications (synce-run, synce-install-cab), la HOWTO ne couvre pas (encore) cette partie.
Il est toujours préférable de fermer une connexion proprement, pour cela il suffit de killer dccm.
$ killall -1 dccm
Dans le cas ou la connexion persiste (état instable) vous pouvez toujours utiliser la manière brutale :
# synce-serial-abort
To be completed
To be completed
Voici les liens des différents formats de cette howto
Les liens utiles: