Palmtops mit dem Computer synchronisieren

Aus LinuxUser 09/2004

Palmtops mit dem Computer synchronisieren

Von der Hand in den Computer

Wer auf der Höhe der Zeit ist, notiert Termine und Telefonnummern im PDA. Besitzer eines solchen Taschencomputers mit PalmOS übertragen ihre Daten mit grafischen Programmen leicht auf den Linux-PC.

PalmOS basierte PDAs (Personal Digital Assistents) erfreuen sich großer Beliebtheit. Ein bis zwei Jahre alte Geräte sind günstig zu kriegen und entsprechend weit verbreitet. Hat man auf dem Palm Adressen und Termine gesammelt, stellt sich die Frage, wie man sie auf den PC bekommt. Für Windows bringt der Palm eine Software zur Synchronisation schon mit. Für Linux existiert freie Software, die diese Aufgabe übernimmt. Tatsächlich gibt es eine Vielzahl von Lösungen, die den Rahmen des Artikels sprengen würde. Er beschränkt sich deshalb auf die Programme KPilot[1],Gnome-Pilot[2] und J-Pilot[3].

KPilot fügt sich, wie es der Name vermuten lässt, in KDE ein. Gnome-Pilot synchronisiert Palm und Gnome-basierten Anwendungen, und J-Pilot ist eine Applikation, die sich am Look and Feel der offiziellen Palm-Windows-Software orientiert.

Kommandozeile als Basis

Alle drei Programme benutzen die unter [4] zu findende Toolsammlung pilot-link und haben daher einen vergleichbaren Funktionsumfang. Sie unterscheiden sich hauptsächlich in ihren Möglichkeiten, die synchronisierten Daten auch an andere Applikationen wie KOrganizer [5] oder Ximians Evolution [6] weiterzugeben. Der Artikel geht deshalb zuerst kurz auf Pilot-Link ein, bevor er erklärt, wie man unter KDE, Gnome oder mit J-Pilot Palm und PC in Einklang bringt.

Softwarebeschaffung

Normalerweise sollten alle aktuellen Distributionen Binärpakete der hier erwähnten Programme mitbringen. Wer dennoch die Handarbeit vorzieht, findet die Quellen von Pilot-Link unter [4] und die von J-Pilot auf [3]. GPilot [2] setzt viele Gnome-Entwicklungspakete voraus, was die manuelle Übersetzung etwas schwieriger macht. Das gleiche gilt für KPilot [1], das Teil des kdepim-Pakets ist, das auch den KOrganizer [6] enthält. Unter Suse heißt das GPilot-Paket gnome-pilot. Evolution gibt es im Quellcode, wie auch als Binärvariante unter [5]. Besser ist es in jedem Fall, ein Paket zu verwenden, das speziell für die eigene Distribution kompiliert wurde.

Pilot-Link ist eine Sammlung von Shell-Programmen, die Linux-PC Palm miteinander sprechen lässt, egal ob über die serielle Schnittstelle [7], Infrarot [8] oder USB [9]. Da es neben Coldsync [10] die meistbenutzte Applikation dieser Art ist, dürfte es wohl in den meisten Linux-Distribution enthalten sein. Da die hier besprochenen Programme ausschließlich auf Pilot-Link basieren, wird sich der Artikel auch darauf konzentrieren. Außerdem unterstützt die aktuelle stabile Version von Coldsync laut keine PalmOS5-Geräte. Eine Liste der von Pilot-Link unterstützten Handhelds findet sich unter [11].

Wenn Sie ihren Palm mit dem PC verbunden haben und die entsprechende Gerätedatei /dev/pilot existiert (siehe Kasten “Palm mit dem PC verbinden”), kann es losgehen. Es ist ratsam, zuerst eine Sicherungskopie des Datenbestandes anzulegen. Dafür verwenden Sie das erste Tool des Pilot-Link-Paketes. Zuvor sollten Sie noch die Bitrate der Übertragung etwas höher setzen, denn standardmäßig verwendet Pilot-Link den sicheren, aber langsamen Modus mit 9600 Baud. Laut der entsprechenden Manual-Seite (man pilot-link) lässt sich dieser Wert durch Setzen der Umgebungsvariable PILOTRATE ändern. Wenn Sie eine Bash-Shell verwenden, geben Sie dafür export PILOTRATE=115200 ein. Verwenden Sie hingegen eine tcshell, hilft setenv PILOTRATE 115200 weiter. Das beschleunigt den Datentransfer zwischen PC und Palm deutlich: Der Abgleich eines Backups von 2,4 MByte Daten dauert bei 9600 Baud fast 45 Minuten, bei 115200 Baud dagegen nur noch knapp fünf Minuten. Haben Sie mit mkdir ~/.meine_palm_sicherung ein Sicherungsverzeichnis auf dem PC angelegt, starten Sie das Backup mit pilot-xfer -b ~/.meine_palm_sicherung/. Das Programm wartet dann darauf, dass Sie entweder den Sync-Knopf an der Cradle betätigen, oder aber die Synchronisation über die entsprende Palm-Applikation auslösen. Wollen Sie irgendwann das soeben erzeugte Backup auf den Palm zurückspielen, geht das mit pilot-xfer -r ~/.meine_palm_sicherung/. Einige weitere interessante Parameter von pilot-xfer führt Tabelle 1 auf, eine vollständige Liste zeigt man pilot-xfer. Die Manpage listet außerdem weitere kleine Programme, die das Paket mitbringt.

Tabelle 1: pilot-xfer: wichtige Parameter

Parameter Bedeutung
-p Device-File Spezifiziert den zu verwendenden Device-File (Standard: /dev/pilot)
-b Verzeichnis Sorgt dafür, dass ein Backup des Palms in dem angegebenen Verzeichnis erzeugt wird
-u Verzeichnis Ersetzt alte Daten eines Backups (im Verzeichnis) durch neue vom Palm
-s Verzeichnis analog zu -u, nur, dass Daten, die auf dem Palm gelöscht wurden nun auch auf dem PC gelöscht werden
-r Verzeichnis Spielt ein Backup aus dem Verzeichnis auf den Palm zurück
-i Datei Installiert PalmOS-Dateien (Dateiendungen prc, pdb, pqa) auf den Palm

Der Klon: J-Pilot

Von den drei vorgestellten Programmen sieht J-Pilot der Windows-Applikation am ähnlichsten. Es ist nicht, wie der Name suggeriert, in Java geschrieben, sondern in der Programmiersprache C, und benutzt das Gtk-Toolkit. Das J steht nämlich für den Vornamen des Entwicklers Judd Montgomery bzw. dessen Frau Jacki. Nach dem Start mit jpilot öffnet sich das Hauptfenster ( Abbildung 1).

Abbildung 1: Sieht fast aus wie das Original: J-Pilot.

Abbildung 1: Sieht fast aus wie das Original: J-Pilot.

Wie schon erwähnt, sollten Sie vor dem Synchronisieren die maximal mögliche Übertragungsrate einstellen. Dazu benutzen Sie das Konfigurationstool unter DateiEinstellungen Die Felder für die Übertragungsparameter finden sich im Karteireiter Einstellungen, wo Sie auch das das Theme einstellen, das das Aussehen des J-Piloten bestimmt. Eine Übersicht der Einstellungen gibt das Handbuch unter [12]. Die Option DateBk Felder unterstützen ermöglicht, die erweiterten Felder der kostenpflichtigen DateBk-Software zu synchronisieren, die mehr Funktionen bietet als der normale Palm-Kalender [13].

Abbildung 2: Einstellungen in J-Pilot.

Abbildung 2: Einstellungen in J-Pilot.

Haben Sie die Übertragungsparameter eingestellt, klicken Sie im Hauptfenster auf den Knopf Sync um den PC in Lauerstellung zu versetzen. Aktivieren Sie den HotSync auf dem Palm oder der Cradle, und der Datenabgleich beginnt. Sie können auch ein Backup anlegen, indem sie den entsprechenden Knopf im J-Pilot-Hauptfenster verwenden.

Ist die Synchronisation abgeschlossen, sollten die Palm-Daten auf dem PC liegen. Um auf die vier Datenklassen Termine, Kontakte, Aufgaben und Merkzettel zuzugreifen, genügt ein Klick auf das Icon im J-Pilot-Hauptfenster.

GPilot für Gnome

Zwar ermöglicht auch J-Pilot mit entsprechenden Erweiterungen [14] die Synchronisation zwischen Palm und Gnome-Applikationen, doch GPilot [3] ist dafür die bessere Alternative. Herzstück des Programms ist das Serverprogramm gpilotd, das im Hintergrund läuft und wartet, bis der Palm die Synchronisation startet. Um den Server zu konfigurieren, tippen Sie in der Konsole gpilotd-control-applet ein oder benutzen den entsprechenden Eintrag im Gnome-Menü. Existiert noch keine Konfiguration, startet der der dafür zuständige Wizard.

Nach einer kurzen Begrüßung gelangen Sie zum Einstellungsdialog. Dort stellen Sie Kommunikationsparameter ein, wie das korrekten Device und die Geschwindigkeit. Im nächsten Dialog geben Sie die Zugangsdaten ein. Wurde der Palm bereits vorher synchronisiert , existiert normalerweise schon ein Benutzername. In diesem Fall wartet GPilot nach einem erneuten Klick auf den Vor-Knopf darauf, dass der Palm den Abgleich startet. Ist das nicht der Fall, können Sie mit der zweiten Option des Dialoges einen neuen Namen anfordern. Der nächste Klick auf den Vor-Knopf öffnet einen Dialog, der nach dem Datenverzeichnis fragt. Ein anschließender, letzter Klick auf Vor führt zu einem Infofenster, das Sie mit dem Knopf Anwenden verlassen. Damit ist das gröbste an Einrichtungsarbeiten erledigt und es folgen die Details.

Dazu verwenden Sie den in Abbildung 3 dargestellten Dialog, der nach dem Beenden des Einstellungswizards von selbst startet. Übrigens öffnet sich dieser Dialog auch, wenn Sie bereits einmal den Wizard durchlaufen haben und erneut gpilotd-control-applet starten. Der Dialog besteht aus drei Karteireitern. Unter Piloten wird der Name des Palms (hier MyPilot), die ID des Nutzers (hier 3330) und der entsprechende Nutzername (hier hoepfner) aufgelistet. Über einen den Bearbeiten-Knopf ergänzen oder veränderen Sie diese Daten. Der zweite Karteireiter Geräte listet die vom Wizard übernommenen Verbindungseinstellungen auf und ermöglicht ebenfalls nachträgliche Änderungen.

Termine in Evolution

Abbildung 4 zeigt den dritten Karteireiter für Einstellungen zur Synchronisation mit externen Programmen. Besonders interessant sind die drei Einträge EAddress, ECalendar und EToDo, die die Anbindung von Evolution an GPilot ermöglichen. Um diese Funktionalitäten zu aktivieren, wählene Sie den entsprechenden Eintrag in der Liste aus und klicken den Knopf Aktivieren. Die Standardeinstellungen ändern Sie unter Einstellungen.

Abbildung 3: Anbindung von Evolution an GPilot

Abbildung 3: Anbindung von Evolution an GPilot

Für den Adressabgleich legen Sie mit EAddress fest, welche Art der Synchronisation das Programm verwendet: Disable, Synchronize, Copy from pilot oder Copy to pilot. Dabei können Sie auswählen, ob GPilot in Zukunft immer oder nur dieses eine Mal (Einmalige Aktion) diese Synchronsationsart verwendet. Die Variante Disable schaltet die Synchronisation ganz ab, Synchronize gleicht Palm und PC ab, Copy from pilot kopiert nur die Adressen vom Pilot zum PC und Copy to pilot beschränkt sich auf die andere Richtung. Darüber hinaus legen Sie hier fest, ob GPilot private Adressen synchronisiert und unter welcher Kategorie (Business, Home, Other) Evolution die Adressen einordnet.

Das Plugin für die Termin-Synchronisation stellen Sie auf ähnliche Weise ein wie den Adressabgleich. Die Checkbox Split Multi-Day Events sorgt dafür, dass Termine, die sich über mehrere Tage erstrecken, auf dem Palm als fortlaufende Einzeltermine eingetragen werden. Dies ist notwendig, da zumindest der Originalkalender des im Test verwendeten Palm Vx keine tagesübergreifenden Einträge unterstützt, während dagegen unter Evolution derartige Termine möglich sind. Aus einem Termin vom 21.05.2004 / 8.00 Uhr bis 22.05.2004 / 9.00 Uhr werden beim Synchronisieren zwei Termine (21.05.2004 8.00 bis 0.00 Uhr und 22.05.2004 0.00 Uhr bis 9.00 Uhr). Leider kam der Test-Palm mit diesem Aufteilung nicht zurecht, denn eigentlich versteht er keine Mitternachtstermine. So zeigt er Termine mit einer Endzeit von 0.00 Uhr falsch an.

Tricks für Termine

Das dritte Evolution-Plugin lässt sich ähnlich anpassen. Neu ist nur die Standardpriorität für synchronisierte Aufgaben. Der Palm unterstützt fünf Prioritätsstufen, Evolution ist aber auf vier (Hoch, Mittel, Niedrig, Unbekannt) beschränkt. Beim Synchronisieren wird nun aus Hoch die Priorität 1, aus Mittel wird 3 und aus Niedrig wird 4. Wurde in Evolution keine Priorität angegeben (Unbekannt), verwendet das Programm die Standardpriorität.

Die Screenshots zeigen, dass GPilot auch unter KDE läuft und nicht unbedingt ein komplett laufendes Gnome benötigt. Verwenden Sie ohnehin Gnome, sollten Sie einen Blick auf die Abbildung 4 werfen. Sie zeigt, wie Sie das Palm-Applet ins Gnome-Panel einbauen. Das gezeigte Menü öffnen Sie mit der rechten Maustaste. Das Applet blendet beim Synchronisieren eine Verlaufsanzeige ein. Mit einem Rechtsklick auf das Applet starten und stoppen Sie außerdem den GPilot-Daemon.

Abbildung 4: Der Weg zum Palm-Sync Applet im Gnome-Panel

Abbildung 4: Der Weg zum Palm-Sync Applet im Gnome-Panel

KPilot steuert KDE an

Wie schon erwähnt, laufen sowohl GPilot als auch J-Pilot unabhängig von einem Fenstermanager bzw. einer Desktopumgebung. Wer aber unter KDE komfortabel synchronisieren will, sollte KPilot verwenden, das die Vorteile von GPilot und J-Pilot vereint. Im Hintergrund werkelt wie bei GPilot ein Daemon, der wartet, dass der Palm die Synchronisation startet, und die Oberfläche (siehe Abbildung 5) bietet bereits umfangreiche Funktionen zum Umgang mit den synchronisierten Daten.

Abbildung 5: KPilot die Schaltzentrale

Abbildung 5: KPilot die Schaltzentrale

Nach dem Start von KPilot mittels kpilot oder übers Menü läuft im Hintergrund der KPilot-Daemon, und das KPilot-Hauptfenster öffnet sich. Es enthält Menüpunkte für die Anzeige synchronisierter Aufgaben und Adressen. Des weiteren zeigt es unter Allgemeine Datenbankanzeige Zusatzinformationen über die vom Palm geholten Dateien. Zu Beginn stellen Sie unter EinstellungenKpilot einrichten die Übertragungsgeschwindigkeit ein. Beim ersten Start fehlt vermutlich noch der Pilot-Benutzer, den auch KPilot beim ersten Synchronisieren automatisch ermittelt.

Arten der Synchronisation

Im Karteireiter Abgleich stellen Sie die Art der Synchronisation ein, beispielsweise ob KPilot eine Sicherungskopie anlegt. Hier legen Sie auch die Konfliktlösungsstrategie fest, wobei die Standardeinstellung (Benutzer fragen) die beste Wahl sein dürfte.

Im Karteireiter Anzeigeprogramme stellen Sie das Verhalten des KPilot-Hauptprogramms ein. Dort legten Sie beispielsweise fest, ob es Einträge editieren darf, oder es ob die Daten nur anzeigt. Im Karteireiter Sicherung tragen Sie ein, welche Datenbanken (Palm-Dateien) KPilot nicht synchronisiert bzw. auf dem Rückweg nicht wieder herstellt. In der Standardeinstellung umfasst das die Datenbanken Arng (Arranger), PmDB (HanDBase), lnch (Anwendungsdatenbanken) und AvGo (AvantGo). Diese vier Typen werden nicht synchronisiert, da deren Datenbanken beschädigt werden können. Mit dieser Methode halten Sie KPilot auch davon ab, andere Datenbanken zu synchronisieren. Hierfür genügt es, die entsprechende ID der Liste hinzufügen. Die geschieht über den Knopf mit der Bezeichnung “…” Im folgenden Dialog fügen Sie beispielsweise addr hinzu und wählen anschließend die entsprechende Checkbox aus. Beim nächsten Synchronisieren ignoriert KPilot dann die Addressdatenbank. Eine Liste derartiger Creator-IDs bietet [15].

Nachdem nun erst einmal die grundlegenden Einstellungen getätigt wurden, kann der erste Synchronisationslauf erfolgen. Ausgelöst wird dieser, wie bei GPilot, durch die entsprechende Applikation auf dem Palm oder den HotSync-Knopf der Cradle. KPilot dokumentiert den Ablauf im Hauptfenster.

Nun wäre es sicherlich sinnvoll, wenn die synchronisierten Daten auch durch die eigentlich dafür vorgesehenen KDE-Programme angezeigt und bearbeitet werden könnten. Kommen wir daher gleich zur Anbindung von KDE-Applikationen an KPilot. Unter EinstellungenAbgleichprogramme einrichten … ist die Liste der unterstützten Applikationen zu finden (vgl. Abbildung 6). Aufgrund der vielzahl von Möglichkeiten können wir hier nicht alle erläutern, sonder überlassen es dem Leser, ein wenig zu experimentieren. Die, aus unserer Sicht wichtigsten drei, betrachten wir aber etwas näher.

Abbildung 6: Synchronisation mit KDE-Programmen via KPilot

Abbildung 6: Synchronisation mit KDE-Programmen via KPilot

Zuerst sollen die Notizen (auf dem Palm Memos) mit knotes synchronisiert werden. Dazu muss das entsprechende Plugin KNotes/Memos durch Anklicken der Checkbox eingeschaltet werden. Das wars auch schon. Nach dem nächsten Synchronisieren erscheinen die Notizen in Knotes.

Ähnlich einfach ist es, Termine mit dem KOrganizer abzugleichen: einfach das Plugin aktivieren und synchronisieren. Die Plugins sind selbstverständlich an den individuellen Bedarf anpassbar. Aktivieren Sie ein Plugin, ändert sich der rechte Teil des Einstellungsfensters und zeigt weitere Optionen. Für den KOrganizer wählen Sie hier beispielsweise eine andere KOrganizer-Datei und die gewünschte Konfliktlösungsstrategie. Das Plugin “Aufgabenlisten für KOrganizer” bringt die auf dem Palm gespeicherten Aufgaben auf den Desktop, bei den Adressen hilft “Adressbuch”.

Palm mit dem PC verbinden

Pilot-Link unterstützt so ziemlich alle Möglichkeiten, einen Palm mit dem PC zu verbinden, solange entsprechende Hardware-Treiber von Linux bereitgestellt werden. Der getestete Palm Vx kann entweder über einen seriellen Port oder über Infrarot an den PC angeschlossen werden. Das einfachste ist die Verwendung der Docking-Station (Cradle) die an der seriellen Schnittstelle hängt. Fehlen nur noch ein symbolischer Link auf das entsprechende Device-File und Lese- und Schreibrechte für den Nutzer. Für den ersten seriellen Port legen Sie als Administrator den Link mit ln -s /dev/ttyS0 /dev/pilot an. Beim zweiten seriellen Port lautet der Gerätename ttyS1 statt ttyS0. Die Rechtevergabe hängt von der Distribution ab. Unter SuSE genügt es, den Nutzer mit YaST2 in die Gruppe uucp einzutragen. Unter anderen Distributionen kann etwas Handarbeit erforderlich sein. Im schlimmsten Fall muss man als Root mit chmod +rw /dev/ttyS0 (bzw. ttyS1) allen Nutzern Lese- und Schreibrechte auf das Device geben.

Analog dazu ist das Vorgehen, wenn Sie einen Infrarot-Port benutzen. Sollte diese Schnittstelle nicht schon eingerichtet sein, hilft [8] weiter. Anschließend führen Sie als Administrator testweise das Startskript /etc/init.d/irda start aus. Danach sollte die Gerätedatei /dev/ircomm0 existieren. Zusätzlich gibt findchip darüber Auskunft, ob im PC ein IrDA-Chip steckt, den Linux unterstützt. Sind diese Voraussetzungen erfüllt, geht es wie bei der seriellen Schnittstelle weiter: einfach mit ln -s /dev/ircomm0 /dev/pilot den symbolischen Link erzeugen und Rechte vergeben. Neuere Palm-Modelle benutzen die wesentlich schnellere Anbindung via USB. Die Gerätedatei heißt in diesem Fall /dev/ttyUSBx, wobei x wieder die laufende Nummer der vorhandenen Schnittstellen ist, also zum Beispiel /dev/ttyUSB0 für die erste. Bei Problemen mit der USB-Anbindung hilft [9] weiter.

Der Autor

Hagen Höpfner ist wissenschaftlicher Mitarbeiter am Institut für Technische und Betriebliche Informationssysteme der Fakultät für Informatik an der Otto-von-Guericke-Universität Magdeburg. Was er dort so alles treibt, kann http://wwwiti.cs.uni-magdeburg.de/~hoepfner/ entnommen werden. In seiner Freizeit spielt der begeisterte Vater Gitarre in der Rockband “Gute Frage” (http://www.gutefrage.de/).

Infos

[1] KPilot Homepage: http://www.slac.com/pilone/kpilot_home/

[2] Gnome-Pilot Homepage: http://www.gnome.org/projects/gnome-pilot/

[3] J-Pilot Homepage: http://www.jpilot.org/

[4] Pilot-Link Homepage: http://www.pilot-link.org/

[5] Evolution Homepage: http://www.ximian.com/products/evolution/

[6] KOrganizer Homepage: http://korganizer.kde.org/

[7] Synchronisation über RS232 (seriell): http://www.redbug.uklinux.net/palm/pc-connect.html

[8] Synchronisation über Infrarot: http://howto.pilot-link.org/irdasync/

[9] Synchronisation über USB: http://pilot-link.org/README.usb

[10] Coldsync, eine potentielle Alternative: http://www.coldsync.org/

[11] Palm Device Matrix: http://wiki.pilot-link.org/title/Palm+Device+Matrix

[12] Henrik Becker: J-Pilot Handbuch: http://www.henrikbecker.de/jpilot/jpilot-manual-de.html

[13] Pimlico Software, Inc.: http://www.pimlicosoftware.com/index.htm

[14] J-Pilot und GnomeCard synchronisieren: http://spsc.inw.tugraz.at/christian/feld_pub/sync.html

[15] Liste von Creator IDs: http://www.bbst.de/pda/software/creatorid.htm

[16] David H. Silber: Palm OS Desktop HOWTO: http://www.faqs.org/docs/Linux-HOWTO/PalmOS-HOWTO.html

LinuxUser 09/2004 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben