Vodafone Mobile Connect 3G Card unter Ubuntu 7.10
Heute erhielt ich nach langem warten meine UMTS Karte von Vodafone.
Eine Option GT 3G Quad.
Im Vorfeld informierte ich mich natürlich, inwiefern diese Karte denn unter Linux läuft. Ich fand also diverse Howto’s, doch funktionieren wollte keines.
Hier also mein Lösungsweg, um anderen diesen Leidensweg ersparen zu können.
Nach dem Einstecken der Karte sollte die Ausgabe von /sbin/dmesg etwa wie folgt aussehen:
[ 3756.756000] ACPI: PCI Interrupt 0000:03:00.1[B] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
[ 3756.756000] PCI: Setting latency timer of device 0000:03:00.1 to 64
[ 3756.756000] ohci_hcd 0000:03:00.1: OHCI Host Controller
[ 3756.756000] ohci_hcd 0000:03:00.1: new USB bus registered, assigned bus number 6
[ 3756.756000] ohci_hcd 0000:03:00.1: irq 11, io mem 0xc4001000
[ 3756.840000] usb usb6: configuration #1 chosen from 1 choice
[ 3756.840000] hub 6-0:1.0: USB hub found
[ 3756.840000] hub 6-0:1.0: 1 port detected
[ 3759.916000] usb 6-1: new full speed USB device using ohci_hcd and address 2
[ 3760.128000] usb 6-1: configuration #1 chosen from 1 choice
[ 3760.132000] usbserial_generic 6-1:1.0: GSM modem (1-port) converter detected
[ 3760.132000] usb 6-1: GSM modem (1-port) converter now attached to ttyUSB0
[ 3760.136000] usbserial_generic 6-1:1.1: GSM modem (1-port) converter detected
[ 3760.136000] usb 6-1: GSM modem (1-port) converter now attached to ttyUSB1
[ 3760.140000] usbserial_generic 6-1:1.2: GSM modem (1-port) converter detected
[ 3760.140000] usb 6-1: GSM modem (1-port) converter now attached to ttyUSB2
[ 3760.140000] usbserial_generic 6-1:1.3: GSM modem (1-port) converter detected
[ 3760.144000] usb 6-1: GSM modem (1-port) converter now attached to ttyUSB3
Sollte das Gerät /dev/ttyUSB0 nicht korrekt angelegt worden sein, wird es daran liegen, dass das Modul usbserial nicht korrekt geladen ist. Dies kann mit dem Befehl “modprobe usbserial vendor=0xaf0 product=0×6300″.
Nachdem das Gerät als solches nun also erkannt wurde, muss wie beim Handy auch, die PIN “eingegeben” werden. Das Passiert idealerweise über ein Script. Das Script sieht wie folgt aus:
#!/usr/bin/env perl
use strict;
use warnings;
my $modem = “/dev/ttyUSB0″;
# Substitute xxxx with your PIN.
# You should probably put your pin somewhere else, e.g. on an USB stick,
# an encrypted file system or something else, and read it from there…
# You have been warned!
my $pin = “1234″;
$SIG{ALRM} = sub {
die(“timeout: no response from modem $modem\n”);
};
open(MODEM, “+<”, $modem) or die(“can’t open modem $modem”);
alarm(10);
print(MODEM “AT+CPIN=\”$pin\”\n\r”);
while (<MODEM>) {
if (m/OK/) {
close(MODEM);
print(“PIN accepted\n”);
exit(0);
}
if (m/ERROR/) {
close(MODEM);
print(“PIN rejected\n”);
exit(1);
}
}
Hier sollte natürlich die PIN durch eure ausgetauscht werden.
Dieses Script muss vor jeder Einwahl einmal ausgeführt werden.
Nun geht es an die PPP Konfiguration. Wir benötigen dazu zwei Dateien:
eine PPP Konfiguration und
ein CHAT-Script für die Einwahl.
Hier die PPP Konfiguration in /etc/ppp/peers/vodafone:
hide-password
noauth
connect “/usr/sbin/chat -v -f /etc/chatscripts/vodafone”
debug
/dev/ttyUSB0
460800
defaultroute
noipdefault
user “vodafone”
remotename vodafone
ipparam vodafone
usepeerdns
novj
nobsdcomp
Hier das CHAT-Script in /etc/chatscripts/vodafone:
ABORT BUSY ABORT ‘NO CARRIER’ ABORT VOICE ABORT ‘NO DIALTONE’ ABORT ‘NO DIAL TONE’ ABORT ‘NO ANSWER’ ABORT DELAYED
” ATZ
OK-AT-OK “ATDT*99***1#”
CONNECT \d\c
Anschließend könnt ihr mit “pon vodafone” die “Einwahl” vornehmen und mit “poff vodafone” die Verbindung wieder trennen.
Sollte das alles nicht funktionieren, so ist die Logdatei /var/log/messages euer bester Freund.