Linux Synchronisation mit PDA und Handy |
Die Grundidee ist, dass eine Gruppe aus den Kandidaten gebildet wird, die miteinander synchronisieren. In unserem Beispiel wird die Gruppe aus dem Programm Evolution und einem Symbian S60 Handy bestehen.
$ msynctool --addgroup e90blueDamit ist die Gruppe eröffnet. Es werden nun die Teilnehmer bestimmt. Welche Mitglieder überhaupt in die Gruppe können, wird durch die Plugins bestimmt.
$ msynctool --listplugins Available plugins: kdepim-sync evo2-sync palm-sync syncml-http-server syncml-obex-clientFür die Verbindung zu Evolution wird evo2-sync verwendet. Der Zugriff auf das Mobiltelefon erfolgt über den SyncML-Client, also syncml-obex-client.
Es sind noch weitere Plugins da. Die KDE-PIM-Programme, also Kontact kann verwendet werden. Es gibt ein Plugin für Palm-Geräte und unter dem Namen SynCE gibt es auch Plugins für Windows Mobile Geräte. Auf dieser Maschine ist dieses Plugin allerdings nicht installiert.
Im nächsten Schritt werden die Teilnehmer der Gruppe hinzugefügt. Leider kann man die Teilnehmer nur hinzufügen und nicht wieder löschen. Bei Fehlern müssen Sie die ganze Gruppe löschen.
Der erste Teilnehmer sei Evolution. Zu der Gruppe e90blue wird also das Plugin evo2-sync als erster Teilnehmer hinzugefügt. Der zweite Teilnehmer ist nicht sehr überraschen.
$ msynctool --addmember e90blue evo2-sync $ msynctool --addmember e90blue syncml-obex-clientNun müssen die Teilnehmer konfiguriert werden. Mit evo2-sync haben wir Glück. Da gibt es keine Parameter. Aber zu dem Mobiltelefon muss einiges erzählt werden. Da wir über Bluetooth gehen wollen, müssen wir zwei Parameter vorher bestimmen: Die Bluetooth-Adresse, auch MAC genannt und den Kanal für den Dienst. Mit hcitool erfahren wir die MAC:
$ hcitool scan
Scanning ...
00:17:E4:E6:4B:C4 Nokia 6230i
00:1A:89:C2:34:B3 Nokia E90
00:0E:ED:AF:D3:28 AWCommi
Das Nokia E90 ist unser Kandidat. Wir brauchen noch den Kanal des SyncMLClient-Dienstes.
Um den Channel zu ermitteln, verwenden Sie das Tool sdptool. Es erscheint
eine lange Liste von Diensten. Hier interessiert der SyncMLClient:
$ sdptool browse 00:1A:89:C2:34:B3
...
Service Name: SyncMLClient
Service RecHandle: 0x1000b
Service Class ID List:
UUID 128: 00000002-0000-1000-8000-0002ee000002
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 10
...
Nun kann die Konfiguration beginnen.
Der Befehl hat als ersten Parameter die Gruppe
und als zweites die Nummer des Teilnehmers. Hier ist es die 2.
$ msynctool --configure e90blue 2Der folgende Befehl startet einen Editor mit der XML-Datei, die die Konfiguration enthält.
<config> <bluetooth_address>00:1A:89:C2:34:B3</bluetooth_address> <bluetooth_channel>10</bluetooth_channel> <identifier>PC-Suite</identifier> <version>1</version> <wbxml>1</wbxml> <username></username> <password></password> <type>2</type> <usestringtable>1</usestringtable> <onlyreplace>0</onlyreplace> <onlyLocaltime>0</onlyLocaltime> <recvLimit>10000</recvLimit> <maxObjSize>0</maxObjSize> <contact_db>Contacts</contact_db> <calendar_db>Calendar</calendar_db> <note_db></note_db> </config>Nachdem diese Parameter erfasst wurden, kann die Synchronisation beginnen. Vorbereitend müssen Sie Evolution starten und das Handy zur Hand nehmen, es wird gleich fragen, ob der Zugriff erlaubt ist.
$ msynctool --sync e90blueManchmal klappt es nach einigen Versuchen gar nicht mehr. Dann kann es manchmal sinnvoll sein, den Rechner einmal neu zu starten, damit eine verlässliche Ausgangssituation da ist.
Schnittstelle heißt usb:
Die klassische Methode funktioniert über /dev/pilot. Dabei wird eine serielle USB-Schnittstelle verwendet. Das Modul usbserial und das Modul visor werden dazu verwendet.
In diesem Fall hilft ein Blick in die /var/log/messages. Hier meldet visor, welche Schnittstelle es verwendet:
Dec 10 06:12:50 vostro kernel: [ 4582.241314] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial support registered for Handspring Visor / Palm OS Dec 10 06:12:50 vostro kernel: [ 4582.241330] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial support registered for Sony Clie 3.5 Dec 10 06:12:50 vostro kernel: [ 4582.241340] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial support registered for Sony Clie 5.0 Dec 10 06:12:50 vostro kernel: [ 4582.241362] usbcore: registered new interface driver visor Dec 10 06:12:50 vostro kernel: [ 4582.241365] /build/buildd/linux-2.6.24/drivers/usb/serial/visor.c: USB HandSpring Visor / Palm OS driver Dec 10 06:13:06 vostro kernel: [ 4598.495232] usb 2-1: new full speed USB device using uhci_hcd and address 7 Dec 10 06:13:06 vostro kernel: [ 4598.664282] usb 2-1: configuration #1 chosen from 1 choice Dec 10 06:13:06 vostro kernel: [ 4598.673179] visor 2-1:1.0: Handspring Visor / Palm OS converter detected Dec 10 06:13:06 vostro kernel: [ 4598.673322] usb 2-1: Handspring Visor / Palm OS converter now attached to ttyUSB3 Dec 10 06:13:06 vostro kernel: [ 4598.673362] usb 2-1: Handspring Visor / Palm OS converter now attached to ttyUSB4Hier sind es ttyUSB3 und ttyUSB4. Normalerweise würde visor gern ttyUSB0 verwenden, aber die wird leider schon von meiner UMTS-Karte verwendet. Ein Entfernen des UMTS-Karten kann zu plötzlichen Erfolgen führen.
lsmod | grep visor modprobe visor
| Homepage |
(C) Copyright 2007-2009 Arnold Willemer
|