Aktualisiert: 20.September 2010


    Anleitung zur Nutzung des Congstar-Surfstick unter Linux
                        ZTE MF-100
    --------------------------------------------------------
    
    "GSM-Modem" ist die Bezeichnung für die Funktionalität 
    eines Surfsticks - es handelt sich um ein Modem, 
    das das Internet über GSM-(Funktelefon-)Frequenzen 
    per USB-Anschluss nutzt.


Einführung:

Ein Surfstick besteht (in den meisten Fällen) aus zwei Komponenten: 
dem eigentlichen GSM-Modem und einem vorgelagerten SCSI-Laufwerk, 
das als CD-Laufwerk fungiert. Darauf befinden sich die Windows-Software 
und die Windows-Treiber. Die meisten Linux-Distributionen erkennen einen Surfstick 
deshalb auch nicht direkt als GSM-Modem, sondern zunächst nur als SCSI-Laufwerk. 
Das vorgelagerte CD-Laufwerk "verdeckt" das GSM-Modem sozusagen. 
Man nennt dieses beabsichtigte Verhalten "ZeroCD" - und es ist unter Windows 
auch ganz nützlich, weil benötigte Windows-Treiber und Einwahlsoftware 
ohne zusätzliche Treiber-CD installiert werden können. 
Unter Linux ist die ZeroCD-Funktion jedoch eher problematisch - 
sie verhindert in den meisten Fällen die automatische Hardware-Erkennung 
und die korrekte Treiberinstallation. 
Es gibt Linux-Distributionen (wie z.B. Ubuntu 10.4), die das ZeroCD-Laufwerk 
per "udev-rules" abschalten; das funktioniert allerdings nicht bei allen Sticks 
zuverlässig - es gibt einfach zu viele unterschiedliche Modelle.

Zur manuellen Aktivierung des GSM-Modems eines Surfsticks 
gibt zwei Lösungsansätze: 

A.)  (auch "usb_modeswitch"-Verfahren genannt)
     Hierbei erfolgt die temporäre Deaktivierung des ZeroCD-Laufwerks 
     durch eine spezielle Software (eben "usb_modeswitch"). 
     Nachteil: Die Deaktivierung muss bei jedem Einstöpseln erneut geschehen - 
     dadurch dass eine ganz bestimmte, modellabhängige Befehlssequenz 
     an das Modem geschickt wird,.
     Vorteil: Das ZeroCD-laufwerk bleibt unverändert auch unter Windows nutzbar. 

B.)  Permanente Deaktivierung der ZeroCD-Laufwerks mit einem  
     speziellen AT-Modembefehl - danach wird das GSM-Modem unter Linux 
     fast immer automatisch erkannt und die richtigen Linux-Treiber geladen 
     ("usbserial" bzw. "option"). Notfalls lässt sich die Deaktivierung 
     wieder rückgängig machen. 
     Aber: 
     Der AT-Befehl muss an das Modem geschickt werden, nicht an das ZeroCd-Laufwerk !
     Das heisst: Auch beim Verfahren B muss zumindest einmal das Verfahren A 
     erfolgreich duchgeführt werden, ansonsten wird das GSM-Modem überhaupt nicht 
     angesprochen!

Fazit: 

Für die erste Inbetriebnahme ist das Verfahren A richtig - wenn die UMTS-Einwahl 
einmal geklappt hat, dann kann man sich zurücklehen und durchatmen. 
Später ist es dann immer noch möglich, das Verfahren B 
zur dauerhaften Deaktivierung anzuwenden. 

Im folgenden Dokument werden die Verfahren nacheinander beschrieben.

##############################################################################

Verfahren A.

Voraussetzung: 
Einige Erfahrung mit Linux - vor allem mit der Kommandozeile. 
Root-Rechte auf dem betreffenden Computer. 
GUI-Oberfläche (KDE, GNOME) oder ein Fenstermanager ist von Vorteil, 
aber nicht unbedingt nötig. 
Ein Surfstick von CONGSTAR - Marke ZTE, Modell MF-100.
Ein registrierter Account bei Congstar.
Von Vorteil ist, wenn die PIN-Abfrage deaktiviert ist. 

Der ganze Vorgang besteht aus vier Schritten:


----------------------------------------------------------------------------- 

-- Schritt 1 - Download der Skripte

Folgende drei Dateien downloaden und in das HOME-Verzeichnis kopieren.   
Darauf achten, dass die Dateien ausführbar sind. 
1_Switch.sh
2_Init.sh
3_Connect.sh
wvdial.conf
-----------------------------------------------------------------------------

-- Schritt 2 - Informationsausgabe

Jetzt Congstar-Surfstick an einen freien USB-Port anstecken. 
Ein paar Sekunden warten, bis er erkannt wordem ist.
Dann in einem Konsolenfenster den Linux-Befehl "lsusb" eingeben. 
Wenn folgende Ausgabe erscheint, dann ist der Surfs-Stick noch im 
ursprünglichen Auslieferungszustand ("ZeroCD"-Modus), 
das heisst, das GSM-Modem ist versteckt und nicht nutzbar: 

Bus xxx Device xxx: ID 19d2:2000 
                            ----
Wenn hingegen folgende Ausgabe erscheint, dann ist das ZeroCD-Laufwerk 
bereits abgeschaltet und das GSM-Modem ist nutzbar. 

Bus xxx Device xxx: ID 19d2:0039
                            ----
In beiden Fällen wird mit dem nächsten Schritt fortgefahren.

 
------------------------------------------------------------------------------

-- Schritt 3 - Umschaltsoftware downloaden

Testen, ob auf dem Computer das Programm "usb_modeswitch" installiert ist. 
Wenn nicht, hier ist eine ältere Version: 
usb_modeswitch
Am besten in das Verzeichnis /usr/sbin kopieren, damit es automatisch 
gefunden wird.
Die aktuelle Original-Software gibt es hier:
www.draisberghof.de/usb_modeswitch
------------------------------------------------------------------------------

-- Schritt 4 - Einwahlprogramm

Wichtig ist ein Einwählprogramm, z.B. "wvdial", das bei vielen 
Distributionen dabei ist. 
In der Kommandozeile mal "wvdial" eingeben - wenn es nicht gefunden wird, 
dann muss es vom Distributionsserver nachinstalliert werden. 
Hier ist Ihre eigene Kompetenz gefragt ;-) Gelegenheit zum Üben ....
Aber trotzdem, der Einfachheit halber: 
wvdial.tar.gz
------------------------------------------------------------------------------

Das waren die Vorbereitungen - jetzt kanns losgehen: 

Kommandofenster öffnen und in das Verzeichnis wechseln, in dem die Dateien 
(von Schritt 1) liegen. 

Folgende Befehle eingeben:  

./1_Switch.sh
(Ausgabe abwarten)


./2_Init.sh


./3_Connect.sh

Ein blaues Fenster (wvdial) öffnet sich und zeigt den Verbindungsaufbau an. 

=> DAS WARS ;-) 

-Fenster nicht schliessen, solange Internet genutzt wird.
-Beliebigen Internet-Client starten, Browser, FTP, Chat usw. 


##############################################################################
##############################################################################

Nur zur Information hier der Inhalt der Dateien: 

1_Switch.sh:

#!/bin/bash

usb_modeswitch -v 0x19d2 -p 0x2000 -V 0x19d2 -P 0x0039 -m 0x01 
-M "55534243123456782000000080000c85010101180101010101000000000000" -W

------------------------------------------------------------------------------
2_Init.sh:

#!/bin/bash

modprobe usbserial vendor=0x19d2 product=0x0039 

------------------------------------------------------------------------------
3_Connect.sh:

#!/bin/bash
cp /etc/ppp/wvdial /etc/ppp/peers
xterm -title "WVDIAL" -bg darkblue -fg green -e wvdial --config ./wvdial.conf 
killall wvdial
killall pppd
rm /etc/ppp/peers/wvdial

------------------------------------------------------------------------------
wvdial.conf:

Modem = /dev/ttyUSB2 
Baud  = 9600
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CSQ
Init4 = AT+CGDCONT=1,"IP","internet.t-mobile"
Dial Command   = ATX2DT
Phone          = *99#
Username       = xx
Password       = tm
Carrier Check  = no
Stupid Mode    = yes
Auto Reconnect = no
New PPPD       = yes


##############################################################################
##############################################################################

Verfahren B:

CDROM-Laufwerk dauerhaft entfernen.

Wie oben erwähnt, muss sich der Surfstick im "Modem-Modus" befinden. 
Das bedeutet, das Verfahren A muss erfolgreich durchgeführt worden sein. 
AM BESTEN TESTET MAN ERST, OB EINE INTERNET-VERBINDUNG MÖGLICH IST.
Wenn ja, dann ein Terminalprogramm starten - zum Beispiel: 
                
                 picocom

In der Konsole "picocom /dev/ttyUSB0" eingeben. 

"ATZ" eingeben - wenn OK folgt, dann

"AT+ZCDRUN=8"  # Schaltet ZeroCD-Laufwerk dauerhaft ab.

"AT+ZCDRUN=9"  # Setzt Stick wieder in den Originalzustand zurück.

-----------------------------------------------------------------------

Nur der Vollständigkeit halber: 
HUAWEI-Modelle haben einen völlig anderen AT-Befehl: 
Siehe: http://linux.zum-quadrat.de/#post30 

#!/bin/bash
# Umschalten in den Modem-Modus

usb_modeswitch -v 0x12d1 -p 0x1446 -V 0x12d1 -P 0x140c -m 0x01 -M "55534243123456780000000000000011060000000000000000000000000000"

# dann aufrufen:

picocom /dev/ttyUSB1

AT^U2DIAG=0 

Stick wieder auf Originalzustand zurücksetzen: 

at^u2diag=255

#######################################################################
#######################################################################

=> Download der kompletten Skripte inkl. usb_modeswitch und picocom: 

ZTE (Congstar) 
Congstar.tar.gz

ZTE (Tchibo) 
Tchibo.tar.gz