Icon 210
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.
Hinweis:
Dieser Artikel bezieht sich nur auf den Verbindungsaufbau mit dem Provider o2, bei anderen Anbietern sollte das Vorgehen aber ähnlich sein.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Dieser Artikel bezieht sich auf die Einrichtung des ICON 210 UMTS Modems von Option/Qualcom unter Verwendung des Prepaid-Daten-Tarifs von o2 und ist mit anderen Geräten des Herstellers sowie anderen Mobilfunk-Anbietern nicht getestet. Zu den anderen Geräten sind zum größten Teil bereits sehr gute Anleitungen vorhanden.
Hinweis:
Die in diesem Artikel zu erstellenden Skripte können auch heruntergeladen werden.
Installation¶
Folgende Programme sind notwendig:
usb-modeswitch - Programm zum Umschalten des Datenträgermodus bei USB-Modems
Hinweis:
usb-modeswitch ist als gleichnamiges Paket über die offiziellen Paketquellen verfügbar.
Optional kann noch die folgende Software verwendet werden:
comgt 🇬🇧 - Kommandozeilentool für 3G- bzw. UMTS-Geräte.
Hinweis:
Ab Ubuntu 10.04 Lucid Lynx ist comgt als gleichnamiges Paket über die offiziellen Paketquellen verfügbar.
Alternativ lässt sich aus den Softwarequellen das Programm gcom
installieren, welches eine frühere Version von comgt
darstellt. Dabei ist allerdings zu beachten, das entweder die Skripte angepasst werden müssen oder eine entsprechende Verknüpfung angelegt wird. Dies ist im Rahmen dieses Artikels nicht getestet.
Hinweis!
Fremdpakete können das System gefährden.
Anmerkung: Die Programme usb_modeswitch
und comgt
sind Software von Drittanbietern und in älteren Ubuntu-Versionen nicht enthalten! Das Kernel Modul option.ko wurde vom Verfasser abgeändert und neu kompiliert und entspricht somit nicht mehr der Version der Distribution.
Initialisierung¶
Da der ICON 210 Stick auf den Betrieb unter Windows ausgelegt ist, sind ein paar Vorarbeiten zu leisten.
Umschalten auf Modembetrieb¶
Da das Modem mit einer doppelten Funktionsweise belegt ist und standardmäßig im Datenträgermodus startet, muss hier eine zusätzliche Software zum Einsatz kommen, die das Gerät in den Modembetrieb schaltet. Dazu wird das Programm USB ModeSwitch verwendet.
Hinweis:
Nach der Installation von usb-modeswitch kann es notwendig sein, den Befehl sudo udevadm control --reload-rules
auszuführen oder das System neu zu Starten, damit die Änderung auch aktiv wird.
Den Stick einstecken, kurz warten, ein Terminal öffnen und per lsusb
die angeschlossenen USB-Geräte anzeigen lassen. Nun sollte ein Geräte mit folgender ID auftauchen:
Bus 001 Device 005: ID 1e0e:9000
Das Gerät befindet sich nun im Modemmodus.
Hinweis:
Wenn die PIN-Abfrage deaktiviert ist, muss die LED nach kurzer Wartezeit von Rot auf Grün wechseln.
Vorgehen unter Ubuntu 8.10¶
USB-Serial Treiber laden¶
Nun muss der USB-Serial-Treiber geladen werden, damit sich das Modem auch ansprechen lässt. Mit der Eingabe von:
sudo modprobe usbserial vendor=0x1e0e product=0x9000
sollten die Devices /dev/ttyUSBx
(x = 0,1 und 2
) aktiviert werden.
Zur Kontrolle
ls /dev/ttyUSB*
eingeben, woraufhin die drei Geräte angezeigt werden sollten.
/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2
Hinweis:
Ist dies nicht der Fall, ist wahrscheinlich ein Fehler aufgetreten, mit dem mehrere Benutzer zu kämpfen haben. Näheres hierzu im Bereich Fehlerbehebung.
Einwahlskript erstellen¶
Mit einem Editor [3] folgendes Skript für pppd
erstellen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | -detach /dev/ttyUSB2 9600 defaultroute usepeerdns mtu 1492 noauth crtscts lock # novj # nobsdcomp nodeflate # nopcomp connect '/usr/sbin/chat -v -t6 -f /etc/ppp/peers/gsm_chat' |
und unter /etc/ppp/peers/o2-umts abspeichern. Dazu sind Root-Rechte [4] erforderlich!
AT-Modembefehlsskript erstellen¶
Mit einem Editor folgendes Skript als Modembefehlssatz erstellen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT 'NO CARRIER' ABORT DELAYED SAY 'Initializing modem:\n' '' AT OK ATZ OK \c SAY 'OK\n' SAY "Checking PIN:\n" '' AT+CPIN? "+CPIN: READY" \c SAY "OK\n" SAY 'Setting APN:\n' '' AT+CGDCONT=1,"IP","surfo2" OK \c SAY "OK\n" SAY 'Dialing...\n' OK ATD*99# CONNECT \c SAY "Connected.\n" |
und unter /etc/ppp/peers/gsm_chat abspeichern. Dazu sind Root-Rechte [4] erforderlich!
Einwählen¶
Hinweis:
Sollte eine andere Verbindung bestehen (LAN, WLAN), wird diese vom Networkmanager bevorzugt und die "default route" wird nicht auf die UMTS-Verbindung umgestellt. Daher ist es notwendig, erst im NetworkManager die bestehenden Verbindungen zu trennen!
Nun kann per Eingabe [1] eine Verbindung hergestellt werden:
sudo pon o2-umts
Initializing modem: OK Checking PIN: OK Setting APN: OK Dialing... Connected. Serial connection established. Using interface ppp0 Connect: ppp0 <--> /dev/ttyUSB2 PAP authentication succeeded Could not determine remote IP address: defaulting to 10.64.64.64 Cannot determine ethernet address for proxy ARP local IP address 10.39.136.244 remote IP address 10.64.64.64 primary DNS address 193.189.244.205 secondary DNS address 193.189.244.197
Hinweis:
Die LED auf dem Stick sollte Grün (2G = GPRS) oder Blau (3G = UMTS) blinken!
Das System ist nun per UMTS online.
Hinweise zu Kubuntu¶
Der KDE Networkmanager ist leider immer noch nicht der Lage, diese Verbindungen herzustellen. Daher muss entweder der GNOME NetworkManager installiert und verwendet werden oder eine Einwahl per Skript umgesetzt werden.
Optionales¶
Dieser Abschnitt widmet sich weitergehender Informationen und Möglichkeiten und ist für den Grundbetrieb nicht notwendig.
Automatisieren¶
Natürlich kann man das ganze auch automatisch abarbeiten lassen. Dazu hier zwei Möglichkeiten.
Per Skript¶
Einfach ein Skript mit folgendem Inhalt erstellen [3]:
1 2 3 4 5 6 7 8 9 | #!/bin/sh -e # # o2dialup # modprobe usbserial vendor=0x1e0e product=0x9000 && sleep 1 #Die untere Zeile aktivieren sofern das Problem der nicht erkannten Geräte /dev/ttyUSB* auftritt. #modprobe -r usbserial && sleep 1 && modprobe usbserial vendor=0x1e0e product=0x9000 && sleep 1 pon o2-umts exit 0 |
und beispielweise als /usr/local/bin/o2dialup speichern.
Das Skript dann bei Bedarf mit sudo sh /usr/local/bin/o2dialup
starten.
Mit Systemstart¶
Man kann die oben genannten Befehle natürlich auch in der /etc/rc.local ablegen. Allerdings muss das Modem dann auch schon bei Systemstart eingesteckt sein, da dieses Skript beim Booten ausgeführt wird. Das sieht dann folgendermaßen aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. modprobe usbserial vendor=0x1e0e product=0x9000 && sleep 1 #Die untere Zeile aktivieren sofern das Problem der nicht erkannten Geräte /dev/ttyUSB* auftritt. #modprobe -r usbserial && sleep 1 && modprobe usbserial vendor=0x1e0e product=0x9000 && sleep 1 pon o2-umts exit 0 |
Hinweis:
Das Skript rc.local wird automatisch mit Superuser-Rechten ausgeführt.
Per Udev¶
Artikel für fortgeschrittene Anwender
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Die wohl eleganteste Lösung ist die Einbindung über den udev-Daemon [5], womit der Stick automatisch bei jedem Einstecken initialisiert und sogar die komplette Einwahl automatisiert werden kann. Hierzu ist das Erstellen von eigenen Regeln für udev sowie ein paar weitere Skripte notwendig.
Mit einem Editor[3] folgende Dateien erstellen, dazu sind Root-Rechte erforderlich [4]. /usr/local/sbin/load_usbserial
1 2 3 | #!/bin/sh /sbin/modprobe usbserial vendor=0x1e0e product=0x9000 exit 0 |
/usr/local/sbin/comgt_pin (Nur wenn die Pinabfrage verwendet wird.)
1 2 3 4 5 6 7 | #!/bin/sh #Dieser Abschnitt ist für die automatische Pin Freischaltung zuständig und kann bei Bedarf auskommentiert werden. Bei Verwendung sind die 4 "X" durch den PIN der SIM Karte zu ersetzten. export COMGTPIN=XXXX /usr/local/bin/comgt PIN -d /dev/ttyUSB2 >>/tmp/switch_icon210.log 2>&1 #Dieser Abschnitt ist für die automatische Einwahl zuständig und kann bei Bedarf auskommentiert werden. pon o2-umts >>/tmp/o2-umts.log 2>&1 exit 0 |
Der Einfachheit halber sollten diese drei Dateien nun ausführbar gemacht werden [6]. Nun per Editor folgende Udev-Regel erstellen:
1 2 3 4 5 | #ICON 210 UMTS Modem - USB-Serial Treiber laden ACTION=="add", ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9000", RUN+="/usr/local/sbin/load_usbserial" #ICON 210 UMTS Modem - Pin eingeben per comgt #Die untere Zeile nur bei Verwendung des Pin, bzw. automatischer Einwahl aktivieren. #ACTION=="add", KERNEL=="ttyUSB2", RUN+="/usr/local/sbin/comgt_pin" |
und unter /etc/udev/rules.d/19-local.rules abspeichern.
Hinweis:
Unter Umständen ist es notwendig, die udev-Regeln nach dem Ändern manuell neu einzulesen. Dazu ist folgender Befehl einzugeben: sudo udevadm control reload_rules
Der Stick wird nun beim Verbinden automatisch in den Modemmodus geschaltet, der USB-Serial Treiber wird geladen und ggf. der PIN eingegeben sowie eingewählt. Um die automatische Verbindung manuell zu beenden, ist die Eingabe von poff
notwendig, was dann pppd
stoppt.
PIN Abfrage¶
Mittels des Zusatzprogramms comgt ist es möglich, den Stick auch mit aktivierter PIN-Abfrage zu aktivieren. Dazu muss vor der Einwahl per pon das Tool aufgerufen werden [1]:
comgt -d /dev/ttyUSB2
Daraufhin muss die PIN-Nummer der SIM-Karte eingegeben werden.
Enter PIN number: XXXX Waiting for Registration..(120 sec max)....... Registered on Home network: "o2 - de",0 Signal Quality: 18,99
Bei korrekter Eingabe wird der Stick entsperrt, im Netz registriert und kann nun per pon weiterverwendet werden.
Fehlerbehebung¶
Geräte /dev/ttyUSB* nicht vorhanden¶
Bei den meisten Anwendern funktionierte der Stick nicht auf Anhieb, denn nach der Eingabe von:
sudo modprobe usbserial
vendor=0x1e0e product=0x9000
waren die Geräte /dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 nicht vorhanden.
Ein erneutes Laden von "usbserial
":
sudo modprobe -r usbserial && sleep 1 && sudo modprobe usbserial vendor=0x1e0e product=0x9000
behebt das Problem.
Keine Verbindung¶
Ein weiteres Problem ist, dass sich trotz des augenscheinlich Funktionieren des Sticks keine Verbindung aufbauen ließ und die Einwahl statt dessen einen "timeout" meldete.
sudo pon o2-umts
Initializing modem: OK Checking PIN: OK Setting APN: OK Dialing... Connected. Serial connection established. Using interface ppp0 Connect: ppp0 <--> /dev/ttyUSB2 PAP authentication succeeded IPCP: timeout sending Config-Requests Connection terminated. Modem hangup
Ein Initialisieren des Modems per comgt
schafft hier Abhilfe:
sudo comgt -d /dev/ttyUSB2
SIM ready Waiting for Registration..(120 sec max) Registered on Home network: "o2 - de",0 Signal Quality: 12,99
Der Stick lässt sich danach einwandfrei verwenden.
Downloads¶
Skripte herunterladen¶
Treiber herunterladen¶
Alles herunterladen¶
Links¶
Kernelpatch für das Optionmodul 🇬🇧 - Wenn man selbst kompilieren möchte/muss!
Pharscape.org 🇬🇧 - Hintergrundinformationen für Option Modems, Home of the comgt!