Das C333 kommt ohne irgendwelche technischen Angaben und ohne Support für Mac OS oder gar Linux, somit hatte ich keine Ahnung, ob das Ding mit dem USB-Kabel unter Linux überhaupt laufen würde. Nachdem aber schon einer das 120c mit dem USB-Kabel zum laufen gebracht hat, hab ich die 50 Fr. für das Kabel (elende Wucherer, ist ja nur ein einfaches USB-auf-Mini-USB-Kabel...) mal hingeblättert, und siehe da, nach kurzem Rumgebastel und einem Totalabsturz des Handys (es gibt übrigens oben links vom Display einen kleinen Ein-/Ausschalter unter der Oberschale) kam ich mit meinem iBook über GPRS ins Netz.
Es werden folgende Kernelmodule benötigt:
Allerdings muss man vor dem Kompilieren das acm Modul patchen, dazu nimmt man in drivers/usb/acm.c folgende Anpassung vor: Vorher:
/*
* USB driver structure.
*/
static struct usb_device_id acm_ids[] = {
{ USB_DEVICE_INFO(USB_CLASS_COMM, 0, 0) },
{ }
};
Nachher:
/*
* USB driver structure.
*/
static struct usb_device_id acm_ids[] = {
{ USB_DEVICE_INFO(USB_CLASS_COMM, 0, 0) },
{ USB_DEVICE_INFO(USB_CLASS_COMM, 2, 0) },
{ }
};
Nach dem Kompilieren und laden des Moduls sollte nach dem Einstecken des Kabels sowas in den Logs auftauchen:
Feb 24 14:55:05 yoko kernel: hub.c: new USB device 10:18.0-1, assigned address 14
Feb 24 14:55:05 yoko kernel: ttyACM0: USB ACM device
Meist klappt das nicht beim ersten Mal, man erhält dann eine Meldung wie:
Feb 24 15:54:26 yoko kernel: hub.c: new USB device 10:18.0-1, assigned address 17
Feb 24 15:54:26 yoko kernel: usb.c: USB device not accepting new address=17 (error=-110)
Dann einfach das Kabel ein klein wenig rausziehen und gleich wieder einstecken. Meistens klappt es dann.
Die Verbindung hab ich mit pppconfig konfiguriert. Mein /etc/ppp/peers/gprs
sieht so aus:
hide-password
noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs"
debug
/dev/ttyACM0
115200
defaultroute
noipdefault
user ""
remotename gprs
ipparam gprs
usepeerdns
In /etc/chatscripts/gprs
musste ich noch den Initstring ändern (es muss der Anbieterabhängige PDP-Kontext aufgesetzt werden mit AT+CGDCONT=...
) und den Wählstring anpassen (ATD statt ATDT). Es sieht nun so aus:
# abortstring
ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
# modeminit
'' AT+CGDCONT=1,"IP","gprs.swisscom.ch"
# ispnumber
OK-AT-OK ATD*99***1#
# ispconnect
CONNECT \d\c
Nun kann die Verbindung mit pon gprs
aktiviert werden.