Login
Newsletter
Werbung

So, 4. September 2005, 00:00

Mobiltelefone und Linux

Mobiltelefone, die unter Linux am besten funktionieren

Hersteller von Mobiltelefonen liefern uns keine Software, die in unserem Betriebssystem funktionieren würde. Wenn wir irgendetwas mit unserem Handy unter Linux machen wollen, müssen wir uns auf andere Besitzer derselben oder ähnlicher Hardware verlassen, die ihre Zeit und ihr Können genutzt haben, um nützliche Programme zu schreiben.

Wenn wir ein Linux-Tool zur vollständigen Kontrolle unseres Telefons haben möchten, also beispielsweise SMS-Nachrichten lesen und schreiben, Kontakte verwalten können usw., ist es am besten, ein Gerät der Firma Nokia zu besitzen. Die Mehrheit der Handys dieser Firma arbeitet hervorragend mit dem Programm Gnokii zusammen, und lediglich die Bedienung einiger Modelle - besonders der, die unter der Kontrolle des Systems Symbian arbeiten, also 3650, 3660, 7650 - ist noch nicht perfekt.

In einer ein wenig schlechteren Situation befinden sich die Besitzer von Geräten der Firma Siemens. Mit Telefonen dieser Firma kann man mit Hilfe des Programms SMCxx alles machen, aber leider ist es am besten, die Kommandozeile zu benutzen. Die Software für Siemens-Geräte, die in der grafischen Umgebung arbeitet (Gscmxx), ist ein wenig veraltet, obwohl sie die meisten Funktionen immer noch bereitstellt. Siemens-Telefone werden nicht nur durch SCMxx bedient - einen beschränkten Zugriff auf diese Geräte können wir auch mit Hilfe von Gnokii oder anderen Programmen, wie Wammu oder Kmobiletools bekommen. Im Falle des Modells Siemens SX1 ist ebenfalls Gnokii die beste Wahl. Ein weiterer Hersteller, für den es eine ziemlich gute Unterstützung unter Linux gibt, ist Motorola. Das Programm Kmobiletools bietet die Möglichkeit der Ausführung fast aller Operationen und zusätzlich eine Integration in der KDE-Umgebung. Neben Motorola-Produkten bedient es noch Geräte von Nokia und Ericsson.

Und was ist mit anderen Herstellern? Man muss es einfach probieren. Es stellt sich heraus, dass eine große Gruppe von Geräten, darunter sogar solche der Firmen Bosch oder Alcatel, einen gemeinsamen Standard des Datenaustausches haben, der auf AT-Kommandos basiert. Die meisten der hier beschriebenen Programme ermöglichen eine Zusammenarbeit mit solchen Telefonen. Unter ziemlich populären Herstellern zeichnet sich nur Samsung damit aus, dass wir dafür keine Software zur Mobiltelefonverwaltung unter Linux finden. Aber selbst wenn wir kein Programm haben, das mit unserem Telefon zusammenarbeitet, bedeutet dies nicht, dass es uns nicht als Modem dienen könnte oder wir nicht mit ihm Daten austauschen könnten. Wenn ein Handy die IrDA- oder Bluetooth-Schnittstelle besitzt, sollte der Datenaustausch unter Linux funktionieren, unabhängig davon, von welchem Hersteller das gegebene Gerät kommt.

Ähnlich sieht die Situation mit eingebauten Modems aus. In der riesigen Mehrheit sind es AT-Standardmodems und die funktionieren unabhängig vom Hersteller.

Problemlösung

IrDA

Wie immer, wenn wir mit dem Laden von Kernelmodulen zu tun haben, können wir mit der Anweisung dmesg zusätzliche Informationen bekommen. Am Ende des Rückgaberesultats finden wir die neuesten Meldungen, die durch den Kernel zurückgegeben werden. Es ist gut, diese Anweisung gleich nach dem Laden eines Moduls oder nach dem Anschluss eines USB-Geräts auszuführen - vielleicht bekommen wir so darüber Auskunft, ob die gegebene Hardware erkannt wurde. Oft ist es auch nützlich, die Systemlogs zu überprüfen - in der Datei /var/log/syslog oder /var/log/messages. Wenn wir das entsprechende Kernelmodul geladen haben, sollte das Gerät in /proc/net/irda/discovery sichtbar sein. Optional können wir das Kommando irdadump benutzen. Es soll ein paar Textzeilen pro Sekunde anzeigen mit sich zyklisch wiederholenden Beschreibungen von zwei Geräten - unserem an den Rechner angeschlossenen Adapter und dem Telefon, das sich im Funk befindet. Dies kann wie folgt aussehen:

20:56:49.249302 xid:rsp 0cb8fdda < 00000083 S=6 s=3 SIEMENS S55
 hint=b124 [PnPModem Fax IrCOMM IrOBEX ] (28)
(...)
20:56:49.435277 xid:cmd 0cb8fdda > ffffffff S=6 s=* che
 hint=0400 [ Computer ] (19)

Wenn keine Zeilen angezeigt werden, bedeutet dies, dass unsere Hardware nicht richtig installiert wurde. Wenn sich nur ein Gerät wiederholt, liegt das Problem an der zweiten Seite.

In neuen Kernelversionen brauchen wir die komplexe Konfiguration von Modulaliasen theoretisch nicht - sie sind in Modulen definiert. Im Falle von unverständlichen Problemen können wir in /etc/modprobe.conf folgende Zeilen eintragen:

alias tty-ldisc-11 irtty-sir
alias char-major-161 ircomm-tty
alias char-major-10-187 irnet

Das Gerät /dev/ircomm0, das wir für eine Verbindung mit dem Mobiltelefon brauchen, wird in den meisten neuen Distributionen durch das udev-System im Moment des Ladens des Moduls ircomm-tty angelegt. Im Allgemeinen werden ihm sofort Zugriffsrechte für alle Benutzer zugewiesen - wenn wir dies ändern möchten, müssen wir in Dateien im Verzeichnis /etc/udev die Zeile finden, die ircomm enthält. Wenn unsere Distribution udev nicht verwendet und die Gerätedatei fehlt, legen wir sie mit folgenden Anweisungen an:

mknod /dev/ircomm0 c 161 0; chmod 666 /dev/ircomm0

Im Falle von einigen Geräten muss man noch die maximale Übertragungsgeschwindigkeit mit der folgenden Anweisung beschränken: echo 57600 &gt;/proc/sys/net/irda/max_baud_rate.

BlueTooth

Bei der Arbeit mit BlueTooth-Geräten tauchen oftmals Verbindungsprobleme auf. In der Regel hilft es dann, wenn wir den BT-Adapter herausnehmen und wieder einstecken sowie /etc/initd.d/bluetooth neu starten. Nur in Ausnahmefällen muss man das Telefon neu starten. Zusätzlich muss ich jedesmal, wenn ich die Distribution tausche, die Liste von »bekannten Geräten« löschen - sonst kann sich das Telefon nicht mit dem Adapter verbinden.

Sehr oft hört man von Problemen mit der Konfiguration des Geräts /dev/rfcomm0. Es kann passieren, dass udev das entsprechende Gerät nicht anlegen will und wir das Kommando mknod /dev/rfcomm0 c 216 0 ausführen müssen. Denken wir auch daran, dass der von mir in allen Beispielen angegebene Kanal 1 für viele Mobiltelefone richtig ist, aber nicht für alle. In einigen Geräten kann man eine serielle Verbindung auf Kanal 2 realisieren, in anderen sogar auf dem Kanal 5 oder 6, man muss also unbedingt das Resultat der Anweisung sdptool browse lesen.

Die häufigste Ursache von Problemen mit BlueTooth scheinen triviale Probleme mit der PIN-Angabe zu sein. Programme, deren Aufgabe es ist, ein Fenster mit der Frage nach der PIN anzuzeigen, funktionieren einfach nicht immer, bzw. haben keine Rechte zum Lesen der Datei /etc/bluetooth/pin. Wir können dann den Verbindungsvorgang vereinfachen, indem wir die folgende Modifikation der Konfiguration vornehmen:

In der Datei /etc/bluetooth/hcid.conf tragen wir an der entsprechenden Stelle ein: pin_helper /usr/local/bin/my-pin. Wir legen die Datei /usr/local/bin/my-pin mit dem folgenden Inhalt an:

#!/bin/sh
echo PIN:1111

Zum Schluss geben wir dieser Datei Ausführungsrechte (chmod a+x /usr/local/bin/my-pin).

Lizenz

Der Artikel wurde im Magazin Linux+ publiziert. Alle Rechte vorbehalten. Kostenlose Vervielfältigung und Vertreiben des Artikels ist in unveränderter Form gestattet. Das Magazin Linux+, Wydawnictwo Software Sp z o.o., ul. Piaskowa 3, 01-067 Warschau.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung