Daniels Blog
26Apr/120

Android Kontakte und Kalender ohne Google syncen mit Horde 4

Ich wollte meine persönlichen Daten nie Google geben und habe deswegen unter Android bisher auf das Syncen von Kalender und Adressbuch verzichtet. Als Notlösung habe ich regelmässige Backups mit My Backup Pro angefertigt. Schön war das allerdings nicht. Da ich inzwischen auch ein Android-Tablet besitze wurde syncen noch wichtiger. Zum Glück lässt sich das inzwischen komplett mit Open Source Software bewerkstelligen, falls die Android-Geräte "Microsoft Active Sync" unterstützen. Mit dieser Sync-Methode kann man seinen Androiden normalerweise an ein Exchange-Konto anbinden. Die kostenlose Groupware Horde bietet seit Version 4 allerdings auch einen kompatiblen ActiveSync-Server an. Damit steht der Android Synchronisation über mehrere Devices mit dem eigenen Server nichts mehr im Wege.

Grundvoraussetung ist ein eigener Linux-Server mit Apache und MySQL.

Zunächst muss Horde 4 installiert werden:

# Die Paketierung von Horde 4 läuft über PEAR
apt-get install pear

# PEAR auf den neuesten Stand bringen
pear upgrade pear

# Den Horde-Channel dem lokalen Pear bekannt machen
pear channel-discover pear.horde.org

# Horde Installationsverzeichnis konfigurieren
pear install horde/horde_role
pear run-scripts horde/horde_role

# Hier wird nach einem Installationsverzeichnis für Horde 4 gefragt.
# In meinem Beispiel ist es /var/www/horde4

# Horde installieren
pear install -a -B horde/webmail

# Horde Konfiguration umbenennen, um Horde zu aktivieren
cd /var/www/horde4/config
cp ./conf.php.dist ./conf.php

# Dem Webserver Rechte auf alle Horde-Files geben
chown -R www-data /var/www/horde4

Datenbank für Horde in MySQL anlegen:

Horde benötigt eine Datenbank in MySQL. In meinem Beispiel habe ich für Horde mit PHPMyAdmin den Benutzer "horde4" und die Datenbank "horde4" angelegt.

Horde über den Webbrowser konfigurieren:

Horde kann nun über den Webbrowser konfiguriert werden. Dazu öffnet man im Browser http://www.meinserver.de/horde4 . Da noch nicht konfiguriert wurde, welche Authentifizierung Horde nutzt, wird man direkt als Administrator der Installation eingeloggt.

Datenbank konfigurieren:
(Administration -> Konfiguration -> Horde -> Database)

Hier die Daten zur angelegten MySQL Datenbank eintragen:

Horde Authentifizierung konfigurieren:

Horde benötigt ein Backend um den Benutzernamen und das Passwort zu überprüfen. Horde bietet dafür viele verschiedene Möglichkeiten an. Der Einfachheit halber kann man hier das Password-File benutzen (/etc/passwd). Der User muss dann nur im lokalen System angelegt werden:

adduser horde_user

(Administration -> Konfiguration -> Horde -> Authentication)

Datenbanktabellen für Horde anlegen:

Horde konnte bisher die eigenen Datenbanktabellen in MySQL noch nicht anlegen, da wir ihm eben erst die MySQL-Benutzerdaten mitgeteilt haben. Um die Tabellen anzulegen besucht man die Hauptseite der Konfiguration und wählt "Alle DB-Schemata aktualisieren", bis das Ganze so aussieht:

(Administration -> Konfiguration)

Ab sofort sollte man sich in Horde mit dem Benutzer "horde_user" und dem beim adduser-Kommando gewählten Passwort einloggen können.

Apache konfigurieren

Damit Android an Horde syncen kann, muss noch ein Alias in die Apache-Konfiguration eingetragen werden:

#/etc/apache2/httpd.conf
Alias /Microsoft-Server-ActiveSync /var/www/horde4/rpc.php

Das ist notwendig, da Active-Sync Clients automatisiert die URL /Microsoft-Server-ActiveSync aufrufen, wenn sie mit ihrem Server connecten. Horde händelt die Synchronisation allerdings über die Datei rpc.php

Danach muss Apache seine Konfiguration neu laden lassen:

/etc/init.d apache2 reload

Wenn alles geklappt hat, sollte man nun auf seinem Androiden Sync-Konten einrichten können:

Mit diesem Setup Synce ich erfolgreich zwischen Horde, einem Sony Ericsson Xperia Mini Pro und einem Samsung Galaxy Tab.

Fallstricke:

  • Ich hatte zunächst mit doppelten Kontakten und Kalendereinträgen zu kämpfen. Am Besten exportiert man zunächst alle Kontakte und den Kalender aus dem Handy und importiert sie in Horde. Danach löscht man alle Daten auf dem Handy und lässt sie von Horde wieder in das angelegte Active-Sync-Konto auf dem handy schieben. Horde bietet viele verschiedene Möglichkeiten an Daten zu importieren. (Organisieren -> Kalender -> Import/Export) und (Organisieren -> Adressbuch -> Import/Export). Den Kalender bekommt man zum Beispiel aus Android gut mit der App "iCal Import/Export" heraus. Mein SONY bot für den Export der Kontakte selbst die Möglichkeit an, diese in ein VCard-File zu exportieren. Aber auch hier gibt es sicher eine geeignete Lösung bei Google Play.
  • Die Horde Authentifizierung per /etc/passwd sollte wie oben beschrieben funktionieren. Ich habe sie allerdings nur der Einfachheit halber für dieses Howto gewählt und nicht getestet, da ich selbst Horde an meinem IMAP-Server authentifiziere.
  • Als ich angefangen habe die Syncerei zu testen, funktionierte es zuerst nur mit meinem Tablet und nicht mit dem Handy. Nach 1 Stunde frickeln war der Fehler gefunden: Android synct nicht, wenn der interne Speicher zu voll ist. Nachdem ich ein paar Apps auf die SD-Karte verschoben hatte, ging es sofort.
25Okt/100

Milestone flashen unter Linux mit sbf_flash

Ich habe bisher Windows nur noch für eine einzige Sache benötigt: Um mein Motorola Milestone mit neuer Firmware zu beflashen. Dafür waren bisher ein spezieller USB-Treiber und ein Flashtool von Motorola notwendig. Diese gab es nur für Windows und aus VirtualBox heraus haben sie nicht funktioniert. [mbm], ein Android Hacker aus #milestone-modding auf irc.freenode.net hat jetzt eine Binary zusammengebastelt, mit der es auch wunderbar unter Linux funktioniert. Getestet wurde es von mir unter Ubuntu 10.10. Leider gibt es keinen Quelltext zu der App, aber es funktioniert einwandfrei. Viele andere User bestätigen das hier in der offiziellen Bekanntmachung: http://blog.opticaldelusion.org/2010/05/sbfflash.html

Download: Original | Lokaler Mirror

So sieht ein Flashvorgang mit sbf_flash aus:

box-root-18:01:33 /home/ww/Desktop -> ./sbf_flash ./GOT_DACH_GERMANY_2_2_1FULL.sbf 
SBF FLASH 1.08 (mbm)

=== GOT_DACH_GERMANY_2_2_1FULL.sbf ===
00: RDL03 0x82000000-0x8204CFFF 2FC7 AP
01:  CG31 0xB01C0000-0xB01C47FF 24FE AP
02:  CG33 0xD13FB000-0xD1BB783F E479 AP
03:  CG34 0xB03A0000-0xB03A47FF CC19 AP
04:  CG35 0xB07A0000-0xB0A607FF 888E AP
05:  CG36 0xF0B7D000-0xF0BE083F 6799 AP
06:  CG37 0xE4034000-0xE40379BF 9325 AP
07:  CG39 0xD1D64000-0xDADE583F 6DA8 AP
08:  CG40 0xDD2E4000-0xDD2E483F FDFF AP
09:  CG42 0xB06A0000-0xB06DFFFF 73E3 AP
10:  CG45 0xB0B20000-0xB0E207FF 79ED AP
11:  CG47 0xB0EE0000-0xB12A07FF 679E AP
12:  CG53 0xCFD80000-0xCFD807FF FDFF AP
13:  CG61 0xB0640000-0xB06607FF 6C74 AP

Milestone found.
 >> uploading RDL03
Uploading: 100% OK
 >> verifying ramloader
 -- OK
 >> executing ramloader
Milestone found.
 >> sending erase
 >> uploading CG31
Uploading: 100% OK
 >> uploading CG33
Uploading: 100% OK
 >> uploading CG34
Uploading: 100% OK
 >> uploading CG35
Uploading: 100% OK
 >> uploading CG36
Uploading: 100% OK
 >> uploading CG37
Uploading: 100% OK
 >> uploading CG39
Uploading: 100% OK
 >> uploading CG40
Uploading: 100% OK
 >> uploading CG42
Uploading: 100% OK
 >> uploading CG45
Uploading: 100% OK
 >> uploading CG47
Uploading: 100% OK
 >> uploading CG53
Uploading: 100% OK
 >> uploading CG61
Uploading: 100% OK
 >> verifying CG31
 -- OK
 >> verifying CG33
 -- OK
 >> verifying CG34
 -- OK
 >> verifying CG35
 -- OK
 >> verifying CG36
 -- OK
 >> verifying CG37
 -- OK
 >> verifying CG39
 -- OK
 >> verifying CG40
 -- OK
 >> verifying CG42
 -- OK
 >> verifying CG45
 -- OK
 >> verifying CG47
 -- OK
 >> verifying CG53
 -- OK
 >> verifying CG61
 -- OK
 >> rebooting

veröffentlicht unter: Android, Linux, Ubuntu keine Kommentare
9Jul/100

Motorola Milestone – Ein Support-Horrortrip

Vorgeschichte:

Ich habe mein Meilestone nun seit ca. einem halben Jahr und es war bisher eine Haßliebe. Die Freude an den wirklich unglaublich guten Internetfunktionen wurde mir leider durch üble Verarbeitungsfehler vermiest.

Mein Gerät hat zwei schwere Probleme. Zum einen hat die Kopfhörer-Buchse einen Wackelkontakt, so dass man in Bewegung keine Musik hören kann. Es knackst andauernd oder einer der Kanäle verschwindet. Dies scheint ein Produktionsfehler bei den Geräten zu sein den leider sehr viele Käufer beklagen. http://www.android-hilfe.de/motorola-milestone/13227-wackelkontakt-kopfhoereranschluss.html (19 Seiten Thread)

Der erste Fehler war schon nervig, der zweite machte mein Gerät allerdings über die Zeit hinweg unbenutzbar. Mein Gerät leidet auch an sehr schlechter Sprachqualität. Meine Gespärchspartner fragen bis zu 2x in der Minute ob ich das zuletzt gesagte nicht wiederholen könne. Die Qualität entspricht ungefähr einem 70er-Jahre Wählscheibentelefon über eine Satelitenverbindung. Auch dieser Fehler ist bekannt und sehr viele Leute haben ihn mit ihren Geräten. http://www.android-hilfe.de/motorola-milestone/11655-motorola-milestone-gespraechsqualitaet-miserabel.html (81! Seiten Thread) Motorola schweigt dieses Problem leider tot und behauptet es würde nicht existieren. Die Community hat inzwischen herausgefunden woran es liegt. Das zweite Mikrofon zum erkennen und herausfiltern von Hintergrundgeräuschen oder dessen Steuersoftware/chip hat bei vielen Geräten einen Fehler und filtert die Stimme des Sprechenden gleich mit heraus. Eine echte QA-Katastrophe für ein Gerät dieser Preisklasse.

Nach dem Update auf Android 2.1 wurde es so schlimm, dass ich nun nur noch über ein zweites Handy telefoniert habe. Das Milestone wurde für seine "Hauptfunktion" unbenutzbar.

Deshalb habe ich mich dazu entschlossen es in Reperatur zu schicken, obwohl ich mir auch da nicht viele Hoffnungen machte. In den oben genannten Threads haben einige Leute das Gerät 5x! weggeschickt, ohne Besserung.

Nach Rücksprache mit meinem Händler ging mein Stein dann also auf die Reise zu http://www.datrepair.de , einer der beiden deutschen Vertragswerkstätten von Motorola. Zumindest ihr Imagefilm sah vielversprechend aus 😉

1.7.2010
Gerät per DHL eingeschickt. Ich wurde gebeten das Gerät mit einer ausführlichen Fehlerbeschreibung einzusenden:

2.7.2010
Gerät ist bei dat repair angekommen. Das Reperaturtracking von dat repair hat mir gut gefallen, leider konnte das Reperaturergebnis nicht ganz mithalten.

8.7.2010
Das Gerät ist wieder "repariert" in meinen Händen.

Ich freute mich natürlich zunächst sehr, dann aber leider auch nur noch sehr kurz. Das Gerät lässt sich nicht mehr einschalten, da der Akku nicht mehr auflädt. Die Ladeanzeige bleibt stundenlang auf 5% stehen. Das ist zu wenig Saft um das Gerät hochzufahren. Ich vermute, dass mir entweder ein defekter Akku statt meines funktionierenden zurückgeschickt wurde (habe mir leider die Seriennummer des Akkus nicht aufgeschrieben), dass mein Akku beschädigt wurde oder dass bei der Reperatur die Ladeelektronik meines Steins beschädigt wurde. Sehr ärgerlich.

9.7.2010
Nach einer ganzen Nacht des Ladens hat der Akku leider nach wie vor nur stolze 5% auf der Brust. Ich rufe bei dat repair an und schildere mein Problem. "Das Gerät hat nach Test einwandfrei unser Haus verlassen, bitte schicken Sie es erneut ein". Man glaubte mir nicht so richtig oder wollte mich abwimmeln. Die Dame am Telefon bat mich das Ladegerät mit einzuschicken. Ich hatte auch schon daran gedacht, dass mein Ladegerät vielleicht kaputt gegangen sein könnte. Das halte ich allerdings für sehr unwahrscheinlich, da ich 2 Ladegeräte und eine Ladeschale besitze, die das Handy alle nicht mehr laden konnten.

Bevor ich mein Handy erneut auf die Reise schicken wollte, habe ich versucht einen Ersatzakku zu bekommen um zu testen ob es evtl nur am Akku liegt. Ein Anruf beim Mediamarkt offenbarte mir, dass dort verschiedene Akkus fürs Milestone von verschiedenen Herstellern vorrätig seien. Im Mediamarkt gab es dann leider doch nicht einen einzigen. Auch alle kleinen Telefonläden der Stadt hatten keinen auf Lager. Weder Vodafone, O2, noch The Phonehouse, etc. Ich werde das Handy also wohl ohne diesen Test zurücksenden müssen.

9.7.2010 (später)

Mein Milestone ist wieder auf der Reise nach Flensburg. Samt Akku und meinen 2 Ladegeräten.

12.7.2010
DHL lässt sich Zeit. Die Sendungsverfolgung sagt:

12.07.10 17:44 Uhr
Hagen
Die Sendung wurde im Start-Paketzentrum bearbeitet.

13.7.2010

Mein Stein hat dat repair wieder erreicht.

14.7.2010
Ich habe bei dat repair angerufen und erneut um schnellere Bearbeitung gebeten, da der Fehler von dat repair versursacht wurde. Mir wurde gesagt, dass ich heute schon der 10. wäre der sich nicht gedulden könne. OK.

19.7.2010
Mein Stein wurde mal wieder repariert und ist unterwegs zu mir. Ich mache mir nicht mehr viele Hoffnungen. Vielleicht kann man ihn ja wenigstens wieder einschalten....

19.7.2010 (später)
Ich habe nochmal bei dat repair angerufen um herauszufinden ob und wie der Gesprächsqualitätsfehler behoben wurde. Der Herr am Telefon hat mir mitgeteilt, dass der Fehler inzwischen reparierbar wäre und der Bug gefunden wurde. Ich bin gespannt und weiss morgen mehr.

Er sagte mir gewechselt worden seien "Antenna Cap" und "Camera Lens irgendwas". Außerdem würde ich einen neuen Akku bekommen.

Ich bin gespannt....

20.7.2010

Mein Milestone ist wieder da und es geht sogar an 🙂 Mir wurde ein neuer Akku geschickt. Ich vermute, dass sie mir beim letzten Mal einen defekten zugesandt hatten. Leider kam nach dem ersten Einschalten bereits wieder die erste Ernüchterung. Beim Anmelden mit meinem Google-Konto kommt die Meldung "Es kann keine stabile Datenverbindung zum Server hergestellt werden". Das Problem ist hier beschriben: http://www.android-hilfe.de/t-mobile-pulse-forum/15879-keine-stabile-datenverbindung-zu-server.html Ich versuche das Zurücksetzen auf Werkseinstellungen.

27.7.2010
Nach dem Wipen vom Stein funktionierte wieder alles. Ziemlich Zeitgleich mit meinem Stein kam auch ein Softwareupdate auf Firmware 2.1.36 das bei sehr vielen Leuten die Probleme mit der SPrachqualität beseitigt hat. Mein Stein funktioniert jetzt aber ich weiss nicht ob es an dem Update oder der Reperatur lag. Ich zweifele da etwas. Zumal mein erstes Problem, die lockere Kopfhörerbuchse nur halbherzig beseitigt wurde. Sie sitzt jetzt fester, hat aber nach wie vor einen Wackelkontakt.

Fazit
15 Euro Porto, 3 Wochen ohne Handy, Reperaturen die nicht wirklich repariert haben. Zwangsverlängerung der Reperatur durch einen falschen Akku..... Ich hätte mir den Spuk sparen können glaube ich. Auf jeden Fall werde ich in Zukunft Motorola und dat repair meiden.

20Apr/100

Vignette – Spielzeugkamera für Android

Vignette ist eine Kamera-App für Android die ein super Photo-Spielzeug abgibt. Mit sehr vielen (über 40) Effekten und Rahmen kann ein Photo direkt "live-bearbeitet" geschossen werden.

Marketlink

Hier ein paar meiner Vignette-Schnappschüsse mit einem Motorola Milestone, mehr gibts bei Flickr.

no images were found

11Apr/100

Meine (erschreckend langweiligen) Top10 Android-Apps

Apps für dies, Apps für das. Viele Apps, mehr Apps, nur noch Apps. Ich als Spielkind probiere natürlich so ziemlich jede Android-App aus, die mir interessant erscheint. Es macht mir Spass, sich das perfekte Werkzeug für jede Eventualität zu schaffen. Trotzdem habe ich mir die Frage gestellt, welche Apps ich wirklich regelmässig benutze. Natürlich gibt es auch dafür eine App, nämlich den "AppUsage Monitor". Nach 10 Tagen Selbsttest hier das ernüchternde Ergebnis: Auf Platz #1 - #4 Standardapps des Betriebssystems. Generation Nokia 3210: "*ICH* !!! brauche mein Handy *NUR* !!! zum telefonieren :)". Direkt danach ein E-Book, das ich gerade lese. nsw ist mein Mediaplayer, Speedx 3D ein kurzweiliges Game. Den FTP-Server nutze ich um Daten von und auf das Handy zu schaufeln. #10 und nicht mehr auf dem Screenshot ist ConnectBot, ein sehr cooler mobiler SSH-Client. Ich werde alt. Wo sind mindestens 4 Games in den TOP 10? Wo ist die Porno-App? Warum ist kein Soziales Netzwerk mit dabei? SMS/MMS NICHT in den Top 10? Na ja. Was solls ...

Den Screenshot habe ich übrigens mit "ShootMe" gemacht. Kostenlos und sehr gut - allerdings nur für gerootete Droiden...