ubuntuusers.de

PocketPC

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Achtung!

Eine aktuellere Anleitung zum gleichen Thema findet sich hier.

Achtung!

  • Die Nutzung von SynCE kann zum vollständigen Datenverlust führen!

  • Bitte vorher ein Backup des PDA-Systems anfertigen und auf einem sicheren Medium speichern.

Einführung

In diesem Artikel wird erklärt, wie man einen PDA mit Windows CE als Betriebssystem dazu bringt, mit Evolution zu synchronisieren. Zu beachten ist, das dies NICHT mit Windows Mobile 5.0 und auch nicht mit dem MDA funktioniert, da synce diese Geräte noch nicht unterstützt! In diesem Fall kann Archiv/FinchSync Abhilfe schaffen. Archiv/FinchSync arbeitet, anders als synce, über eine Netzwerkschnittstelle und eignet sich zur Synchronisation mit Mozilla Software wie Thunderbird oder Sunbird.

Installation

Pakete installieren

Folgenden Pakete müssen installiert [1] werden:

  • gawk

  • librra0 (universe, [2])

  • librra0-tools (universe)

  • libsynce0 (universe)

  • synce-dccm (universe)

  • synce-multisync-plugin (universe)

  • synce-serial (universe)

  • libmultisync-plugin-evolution (universe)

Achtung!

Fremdpakete können das System gefährden.

Danach benötigt man noch die folgenden Pakete:

Diese müssen heruntergeladen und manuell installiert werden [5].

Udev-Regel erstellen

Jetzt muss eine udev-Regel erstellt werden, damit man nicht jedesmal "synce-serial-start" im Terminal eingeben muss, wenn man den PocketPC synchronisieren will. Diese Regel sorgt dafür, dass die Verbindung automatisch hergestellt werden kann, wenn der PPC in die Docking Station gelegt wird. Hierzu öffnet man die Datei /etc/udev/rules.d/60-ipaq.rules in einem Editor mit-Root-Rechten (wenn die Datei nicht vorhanden ist, dann einfach erstellen) [4]. Dort muss folgender Inhalt eingefügt werden:

# udev rules file for SynCE
BUS!="usb", ACTION!="add", KERNEL!="ttyUSB*", GOTO="synce_add_end"
# Establish the connection
#RUN+="/usr/bin/syncpda.sh"
RUN+="/usr/bin/synce-serial-start"
LABEL="synce_add_end"

Dazu macht es noch Sinn, "synce-trayicon" (siehe unten) in den Autostart [6] zu setzen.

Konfiguration

Verbindung konfigurieren

Jetzt kann man den PDA das erste Mal mit dem PC verbinden. Im Terminal [3] zeigt der Befehl

dmesg | tail    # alternativ das '| tail' weglassen 

ob und als was der PDA erkannt wurde. Zum Beispiel:

[17185999.440000] usb 2-1: new full speed USB device using uhci_hcd and address 24
[17185999.580000] ipaq 2-1:1.0: PocketPC PDA converter detected
[17185999.580000] usb 2-1: PocketPC PDA converter now attached to ttyUSB0

Interessant ist hier die letzte Zeile. Die Ausgabe ttyUSB0 sollte man sich merken, denn dies ist die Geräteadresse. (Es wird hier ab sofort mit dieser Beispieladresse gearbeitet!)

Mittels

sudo synce-serial-config /dev/ttyUSB0 

kann man die Verbindung konfigurieren. Jetzt kann man PC und PDA mit synce-serial-start verbinden.

Die erste Verbindung

Nun führt man mit Alt + F2 den Befehl

synce-trayicon 

aus. Wenn man den PDA jetzt mit dem PC verbinden, sollte das Trayicon nach kurzer Zeit "hell" werden.

Wenn dies zutrifft, dann war die Verbindung erfolgreich. Funktioniert dies nicht, sollte man noch einmal überprüfen, ob synce-serial-config der richtige Parameter übergeben wurde.

Desweiteren ist es wahrscheinlich nötig auf Grund eines Fehlers, die Datei libgtop-2.0.so.2 mit der neusten Version zu verlinken, da "Trayicon" sonst wahrscheinlich nicht startet. Das geschieht durch die Eingabe im Terminal [3]:

sudo ln -s /usr/lib/libgtop-2.0.so.7 /usr/lib/libgtop-2.0.so.2 

wobei die Datei libgtop-2.0.so.7 auch eine andere Version sein kann.

Jetzt muss ein device-pairing vorgenommen werden. Dies geschieht wieder im Terminal [1]:

synce-matchmaker create 1 

Wenn eine Fehlermeldung kommt, den Befehl mit vorangestelltem "sudo" ausführen. Wenn das geklappt hat, kann man versuchen den PDA erstmals mit Evolution zu synchronisieren.

Konnte die Partnerschaft nicht erstellt werden, so muss eventuell eine der beiden überschrieben werden. Dies geht mit

synce-matchmaker replace 1 

Genaueres findet man unter SynCE and MultiSync FAQ 🇬🇧 .

Synchronisation mit Evolution

Achtung!

Achtung, vorher ein Backup der in Evolution gespeicherten Daten, und des PocketPC-Systems anfertigen!

Eine Alternative des hier verwendeten und veralteten Multisyncs ist Archiv/OpenSync.

Nachdem das Backup erstellt wurde, mit Alt + F2 den Befehl

multisync 

aufrufen. Dort mit einem Klick auf "new" eine neues Synchronisation Pair einrichten.

Bei "First Plugin" muss "Ximian Evolution 2" eingestellt werden. Dann auf "Options" dahinter klicken. Hier müssen der richtige Kalender, das richtige Adressbuch und die richtige Taskliste ausgewählt werden. Als Standard verwendet Evolution "Persönlich". Bei "Second Plugin" muss dann SynCE Plugin ausgewählt werden.

Unten bei "Data types to synchronize" alle zu synchronisierenden Anwendungsteile auswählen. Die Einstellungen in den anderen Reitern können nach persönlichem Geschmack angepasst werden. Mit "OK" werden die Einstellungen dann bestätigt. Mit einem Klick auf "sync" im Hauptfenster kann endlich das erste Mal synchronisiert werden. Im Log kann man nachvollziehen, wieviele Einträge synchronisiert wurden.

Der Nachteil ist, dass man nach dem Einstecken des PDAs multisync selbst starten und vor Abziehen des PDAs im Trayicon "Disconnect from PocketPC" wählen muss. Wer dies ändern mag, kann das Skript im nachfolgenden Abschnitt nutzen.

Erweiterung der Funktionen

Folgendes Skript startet nach erfolgreicher Verbindung mit dem PDA automatisch multisync und beim Abziehen des PDAs wird dieses auch wieder beendet.

Zunächst fügt man den synce-trayicon dem Autostart [6] hinzu, damit die Anwendung nach dem Anmelden zur Verfügung steht. Dann öffnet man einen Editor mit Root-Rechten [4] und fügt folgenden Text ein:

#!/bin/sh
sleep 3
if [[ $(dmesg | gawk -f /usr/bin/ipawk) == "verbunden" ]];
then
        /usr/bin/synce-serial-start && sleep 2 && DISPLAY=:1.0 su BENUTZERNAME in -c  "/usr/bin/multisync"
#       echo "Connected" >> ~/Desktop/pda.log
#       echo $(date)  >> ~/Desktop/pda.log
else
        for pid in $(pidof multisync); do kill ${pid}; done
        su BENUTZERNAME -c "killall -HUP dccm"
        su BENUTZERNAME in -c "/usr/bin/dccm"
#       echo "Disconnected" >> ~/Desktop/pda.log
#       echo $(date)  >> ~/Desktop/pda.log
fi

Der BENUTZERNAME muss natürlich entsprechend verändert werden. Zusätzlich muss man das XServer-Display in der Zeile

        /usr/bin/synce-serial-start && sleep 2 && DISPLAY=:1.0 su BENUTZERNAME in -c  "/usr/bin/multisync"

noch anpassen. Auf welchem Display der XServer läuft, findet man mit dem Befehl

env | grep DISPLAY 

im Terminal [3] heraus. Diese Datei speichert man nun als syncpda.sh im Verzeichnis /usr/bin/ und macht sie mittels

sudo chmod 700 /usr/bin/syncpda.sh 

ausführbar. Zusätzlich wird in /usr/bin noch die Datei ipawk benötigt (wieder in einem Editor mit Root-Rechten zu erstellen):

/PocketPC/ && $8~/attached/ || $8~/disconnected/ {
if ($8 == "attached")
   status = "verbunden"
if ($8 == "disconnected")
   status = "getrennt"
}
END{ printf(status)}

Zum Schluss muss noch eine winzige Änderung an der Datei /etc/udev/rules.d/60-ipaq.rules gemacht werden

# udev rules file for SynCE
BUS!="usb", ACTION!="add", KERNEL!="ttyUSB*", GOTO="synce_add_end"
# Establish the connection
RUN+="/usr/bin/syncpda.sh"
#RUN+="/usr/bin/synce-serial-start"
LABEL="synce_add_end"

Also vor der Zeile

RUN+="/usr/bin/syncpda.sh"

wird die # weggenommen und die Zeile

#RUN+="/usr/bin/synce-serial-start"

wird mit # auskommentiert. Nun ist es nicht mehr nötig die Verbindung über das Gnome-Systray zu beenden!

Diese Revision wurde am 13. Februar 2020 10:19 von Heinrich_Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Hardware, Kommunikation