Contenu | Rechercher | Menus
Selon les tags présents sur cette page, les informations qu'elle contient n'ont pas été vérifiées depuis Ubuntu 10.04 LTS.
Apportez votre aide…

Comment synchroniser Ubuntu avec les PDA et smartphones sous Windows™ Mobile 5/6 ou Windows Phone7 ? (mode synchronisation RNDIS)

La synchronisation est désormais possible en local avec les PDA/Smartphones sous Windows mobile 5/6 ainsi que sous Windows Phone 7. Si vous cherchez une méthode de synchronisation locale et à distance, tournez vous vers funambol.

L'ancien mode de synchronisation série USB est documenté sur la page Comment connecter un PDA sous Windows Mobile 5 en USB.

Ce sujet évoluant rapidement, les indications de cette page peuvent être rapidement dépassées. N'hésitez pas à vous reporter aux liens à la fin de cette page.

Faire communiquer Ubuntu avec l'appareil mobile

  • La communication avec le pda se fait avec SynCE. Il existe 2 implémentations de dcmm permettant de se connecter pour le système RNDIS : synce-hal et odccm (obsolète). synce_hal devrait faire tout ce que faisait l'implémentation odccm, mais d'une façon plus simple et plus propre.
  • La synchronisation se fait avec la librairie d'exécution OpenSync qui nécessite une interface utilisateur pour la configurer : en ligne de commande (Msynctool) ou avec une interface graphique.
  • La navigation dans les fichiers de l'appareil mobile est possible sous gnome avec synce-gvfs.

Pré-requis

SynCE utilise le mode de synchronisation RNDIS d'ActiveSync. Le périphérique doit être réglé pour utiliser ce mode sinon cela ne marchera pas. Sous WM5/6, l'appareil est normalement déjà configuré en RNDIS. Si ce n'est pas le cas, procéder comme suit :

  • Sous WM5 : Démarrer → Paramètres → Connexions → Mode ActiveSync : choisir "Mode sync RNDIS".
  • Sous WM6 : Démarrer → Paramètres → Connexions → Paramètres USB : choisir "ActiveSync".

Installation sous Jaunty, Intrepid, Hardy, Karmic, Lucid, Maverick

Des dépôts contenant les dernières versions sont disponible à cette adresse :

deb http://ppa.launchpad.net/synce/ubuntu jaunty main
deb-src http://ppa.launchpad.net/synce/ubuntu jaunty main
deb http://ppa.launchpad.net/synce/ubuntu intrepid main
deb-src http://ppa.launchpad.net/synce/ubuntu intrepid main
deb http://ppa.launchpad.net/synce/ubuntu hardy main
deb-src http://ppa.launchpad.net/synce/ubuntu hardy main
deb http://ppa.launchpad.net/synce/ubuntu karmic main
deb-src http://ppa.launchpad.net/synce/ubuntu karmic main
deb http://ppa.launchpad.net/synce/ubuntu lucid main
deb-src http://ppa.launchpad.net/synce/ubuntu lucid main
deb http://ppa.launchpad.net/synce/ubuntu maverick main
deb-src http://ppa.launchpad.net/synce/ubuntu maverick main

Il semble que Lucid possede une nouvelle version de SWIG, ce qui entraîne des changements dans la façon dont python est gérée. En attendant que le bug soit fixé, il est nécessaire de suivre les instructions suivantes données ici: https://bugs.launchpad.net/ubuntu/+source/opensync/+bug/584997. Testé par mes soins, completement opérationnel (Asus P552 Windows Phone 7 & Lucid sur Dell Precision M4400).

Pour importer la clé :

gpg --keyserver keyserver.ubuntu.com --recv-key D246C25D && gpg --armor --export D246C25D | sudo apt-key add - 

Installez les paquets suivants :

Pour SynCE
  • synce-trayicon : permet de surveiller quand le périphérique Windows CE est connecté, de gérer les partenariats, les programmes installé, l'état du périphérique…

Il faut ajouter le programme synce-trayicon au démarrage de la session Gnome (Système>Préférences>Sessions) sauf si vous utilisez la dernière version des dépôts ppa qui se lance automatiquement au démarrage mais qui n'apparait qu'au branchement du PDA.

Pour OpenSync

Il n'existe pas encore de plugin de synchronisation pour thunderbird dans les dépôts. Si vous êtes intéressé par son développement, allez voir ce site. Une solution alternative pour thunderbird consiste à passer par funambol.

Pour l'interface utilisateur de Opensync
  • multisync0.90 : interface graphique, pour gnome (Applications>Accessoires>Multisync-gui)

ou

msynctool [options]
Pour la navigation dans les fichiers du PDA
Il faut ouvrir les ports locaux dans le pare-feu si nécessaire
sudo ufw allow from 169.254.2.0/24 to any

Le système doit être redémarré pour une meilleur prise en compte des modifications.

Cas particuliers

Ajout et compilation de rndis (noyau Linux < 2.6.24-19)

Les manipulation de cette partie ne sont nécessaire que si la version de votre noyau Linux est antérieure à la 2.6.24-19.

Votre version en cours est vérifiable par la commande :

 uname -a 

On va chercher et compiler le nouveau pilote rndis. Tout d'abord bien décharger tous les modules chargés par défaut dans le noyau :

sudo rmmod rndis_host cdc_ether usbnet

Ensuite, suppression des anciens pilotes pour que le noyau ne les recharge pas au prochain amorçage :

sudo rm /lib/modules/`uname -r`/kernel/drivers/net/usb/{rndis_host,cdc_ether,usbnet}.ko

Compilation des nouveaux pilotes :

sudo apt-get install usb-rndis-source cdbs
sudo module-assistant auto-install usb-rndis
Problème de connexion (ne devrait pas se poser pour les versions d'Ubuntu > Hardy)

Si vous utilisez un gestionnaire de connexion tel que network-manager ou WICD il se peut que vous perdiez votre/vos connexion(s) a(ux) reseau(x). Pour remédier a cela il suffit d'identifier quelle est l'interface utilise par synce pour communiquer avec le pda/smartphone.
Tapez dans un terminal :

/sbin/ifconfig -a | grep 80:00:60:0f:e8:00  | cut -d " " -f 1

le résultat de la commande vous renvoie directement l'interface réseau concernée. Il suffit alors d'ouvrir le fichier /etc/network/interfaces et d'ajouter les lignes suivantes :

iface <interface du pda> inet dhcp

(en ayant au préalable remplacé "<interface du pda>" par le résultat de la commande ci dessus et de sauvegarder le fichier.

Afin de redistribuer convenablement les adresses IP des différentes connexions, il est nécessaire de redémarrer manuellement le réseau :

sudo /etc/init.d/networking restart

Premier Test

Branchez votre joli PDA/smartphone et taper un petit :

synce-pls

dans un terminal. Le résultat de la commande doit retourner la liste des fichiers présents dans le répertoire « Mes Documents » de l'appareil mobile. Il est probable que cette commande vous renvoie une erreur du type

 ** Message: Device /org/freedesktop/Hal/devices/net_80_00_60_0f_e8_00 not fully set in Hal, skipping
** Message: Odccm is not running, ignoring
synce-pls: Could not find configuration at path '(Default)' 

On va donc lui donner un fichier de configuration pour y remedier; pour cela; entrez dans un terminal:

 sudo gedit /etc/synce-hal.conf 

Puis rajouter les lignes

[general]
loglevel: debug

Sauvegardez le fichier; fermez gedit; Rebranchez votre terminal; et cette fois le problème devrait être résolu.

Il semble que, avec la version du paquet synce-hal proposée dans ubuntu, il faut créer un fichier /etc/dbus-1/system.d/synce-hal.conf avec le contenu suivant:

<!DOCTYPE busconfig PUBLIC
 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

  <!-- This configuration file specifies the required security policies
       for synce-hal to work. -->

  <!-- Allow anyone to invoke methods on the Synce interface -->
  <policy context="default">
    <allow send_destination="org.freedesktop.Hal"
       send_interface="org.freedesktop.Hal.Device.Synce"/>

  </policy>

</busconfig>

source : http://forum.ubuntu-fr.org/viewtopic.php?id=315034

La synchronisation

La gestion de la synchronisation peut se faire par des interfaces graphiques. Choisissez en une qui correspond à votre environnement de bureau.

Si vous avez un décalage horaire (décalage entre l'heure locale et l'heure UTC) entre un événement créé sur le PDA et l'évenement synchronisé sur votre ordinateur, la solution consiste à mettre la variable "AppendDefaultTimezone" à 1 dans le fichier ~/.synce/config.xml.

Synchronisation pour GNOME

ActiveSync demande de créer des partenariats avant de pouvoir synchroniser deux éléments. Il y a une limite de deux partenariats pour windows mobile.

Les partenariats

Les partenariats peuvent être configurés en ligne de commande ou graphiquement.

Méthode graphique :

Cliquez droit sur synce-trayicon, sélectionnez le PDA et cliquez sur "View device status". Une fenêtre s'ouvre, choisissez l'onglet "Partners". Cliquez sur "Create". Entrez un nom de partenariat et sélectionnez tous les items que vous désirez synchroniser notamment "Calendar", "Contacts" et "Tasks". Cliquez sur valider. Pour le supprimer : "remove".

Méthode en ligne de commande :
synce-create-partnership "<nom_du_partenariat>" "<éléments_à_synchroniser"

Les éléments que l'ont peut synchroniser sont à choisir parmi la liste suivante : Contacts,Calendar,Tasks,Files. Ils doivent être séparés par un virgule dans la commande précédente.

Pour supprimer un partenariat :

synce-delete-partnership

Utilisation

Une fois le partenariat établi, il faut créer un groupe et choisir les éléments à synchroniser.

Méthode graphique :

Lancez Multisync-gui dans Application>Accessoire puis ajouter un groupe. Allez dans modifier puis "Add Member" : choisissez deux éléments : synce-opensync-plugin dans tous les cas et le plugin correspondant à votre client mail (ex : evo2-sync pour évolution si vous avez installé opensync-plugin-evolution). Ensuite utilisez le bouton Actualiser pour lancer la synchronisation.

Méthode en ligne de commande :

Avec multisync-tools

D'abord, il faut lister les plugins disponibles. la commande suivante :

msynctool --listplugins

..devrait vous donner un résultat qui ressemble à ça :

Available plugins:
synce-opensync-plugin
evo2-sync

Si vous utilisez utilisez le gestionnaire de mail de Kde, vous aurez kdepim-sync à la place de evo2-sync.

Il faut ensuite créer un groupe de connexion :

msynctool --addgroup <nom du groupe>

et y ajouter les 2 plugins :

msynctool --addmember <nom du groupe> synce-opensync-plugin
msynctool --addmember <nom du groupe> evo2-sync

(Bien sur, là encore remplacez evo2-sync par kdepim-sync si vous êtes sous KDE).

Et voilà. Pour lancer la synchro,

  1. Commencez par vous assurer que la mémoire tampon de votre terminal est suffisante car cette commande trace énormément;
  2. Fermez votre gestionnaire de contacts/ calendrier pour éviter les verrouillages éventuels.
  3. puis lancez :
msynctool --sync <nom du groupe>

Soyez patient, ça prend un peu de temps.

Au cours de la synchro, si des entrées en conflit existent entre le Pda et votre ordinateur, la console vous présentera les entrées en conflit (dans un format XML assez difficile à lire) et vous demandera laquelle choisir :

Overwriting conflict
Conflict for Mapping 0xb234e3c0: 
Entry 1:
UID: pas-id-48FB3D4B0000001F
<?xml version="1.0"?>
<contact>
  <Revision>
    <Content>20081019T135939Z</Content>
  </Revision>
  <Uid>
    <Content>pas-id-48FB3D4B0000001F</Content>
  </Uid>
  <FileAs>
    <Content>XXXXX</Content>
  </FileAs>
  ...
</contact>

Entry 2:
UID: pas-id-CD512BC3D421FBAD
<?xml version="1.0" encoding="utf-8"?>
<contact xmlns:AS="http://synce.org/formats/airsync_wm5/airsync">
  <FileAs>
    <Content>XXXXX</Content>
  </FileAs>
  ...
</contact>


Which entry do you want to use? [1-9] To select a side, [D]uplicate, Keep [N]ewer:
  • Tapez un chiffre pour choisir une des ressources en conflit (n choisit l'"Entry n");
  • D pour dupliquer les 2 entrées sur le PDA et le PC;
  • N pour ne garder que la plus récente.

Il n'existe malheureusement pas d'option de fusion des entrées en conflit.

Synchronisation pour KDE : SynCE-KPM

Installation

installez le paquet synce-kpm.

Synchro

Dans une console tapez:

synce-kpm

Une fenêtre aux fonctionnalités de ActiveSync apparaît. Vous pouvez choisir les éléments à synchroniser et lancer l'installation de programme (fichier .cab)

Voila vous avez terminé, le dossier "Mes Documents" de votre pda/smartphone est maintenant synchronisé avec le dossier "PDAFiles" de votre home.

NOTE 1.5 : pour ceux qui avait un soucis avec la note 3 le problème devrait être résolu. Vous pouvez verifier en lançant synce-kpm (voir ci-dessous).

Synce-kpm : avec synce-kpm vous pouvez dès à présent installer/désinstaller des logiciels (onglet Software Manager) voir l'état de votre périphérique (état batterie, propriétaire, utilisation d'espace disque….) et générer des partenariats à la manière d'ActiveSync.

Ceci ne fonctionne que dans l'environnement GNOME. Synce peut être interfacé avec le système de fichier GVFS pour être utilisé de manière transparente par les applications GNOME.

Installation

Il faut avoir installer ensuite le paquet synce-gvfs.

<note tip>Sous Lucid, il faut ajouter les dépôts PPA pour Synce et mettre à jour avant d'installer synce-gvfs.

sudo apt-add-repository ppa:synce/ppa ; sudo apt-get update ; sudo apt-get install synce-gvfs 

Lien : https://launchpad.net/~synce/+archive/ppa

Utilisation

Il ne vous reste plus qu'à parcourir le périphérique.

  • si vous avez installé le paquet synce-trayicon et lancé l'application, faites un clic droit sur l'icône de la barre des tâches, puis sélectionner le PDA puis parcourir le périphérique ("explore with filemanager").
  • ou en tapant dans la barre d'adresse de nautilus.
synce:///

Installation de logiciel (.cab)

Vous pouvez bien sûr copier le .cab directement sur le PDA et l'installer ensuite à partir de celui-ci mais aussi l'installer directement : une fois votre fichier téléchargé sur le pc, faites un clic droit sur l'icône de la barre des tâche, puis sélectionner le PDA > "view device status"> Applications > Ajouter.

Sources et liens

—-

Contributeurs : tekman54000, fnx, Id2ndR.


tutoriel/sync_wm5-6.txt · Dernière modification: Le 09/05/2011, 13:20 (modification externe)
Le contenu de ce wiki est sous licence : CC BY-SA v3.0