I've been toying around with the UMTS module in my X220 lately. I got a pre-paid SIM from blau.de, who offer 24h UMTS flatrates for 2,40 EUR. (This is probably my use case: Being somewhere without internet access for a day or two. This only happens so often, so I don't want a "real" flat.)
My UMTS card is manufactured by Sony Ericsson and connected via internal USB:
$ lsusb -v -s 004:003
...
idVendor 0x0bdb Ericsson Business Mobile Networks BV
idProduct 0x1911
The installation is easy: Just insert the SIM card behind the battery
as shown
here.
Add yourself to the dialout
group, log in again, and you're set.
You can first connect to your device using chat
or picocom
(which
you can be terminated via C-a C-x). To ask if you can use the SIM
without PIN, send the AT+CPIN?
command:
$ picocom /dev/ttyACM0
...
AT+CPIN?
+CPIN: READY
If you're not ready to go, I would disable the PIN request using a regular phone. (I did.)
Dialling out is easy. I set up two profiles in the /etc/wvdial.conf
that allow me to switch between "pay per megabyte" and "dayflat":
[Dialer blau]
Modem = /dev/ttyACM0
Init1 = AT+CGDCONT=1,"IP","internet.eplus.de"
Stupid mode = 1
phone= *99#
Username = blau
Password = blau
[Dialer tagesflat]
Modem = /dev/ttyACM0
Init1 = AT+CGDCONT=1,"IP","tagesflat.eplus.de"
Stupid mode = 1
phone= *99#
Username = blau
Password = blau
The rest happens automatically, once you invoke wvdial blau
or
wvdial tagesflat
. (Note you have to execute these with root
privileges because they want to modify pppd-related config files.)
Most probably you want the follow-up command route add default dev
ppp0
to route all traffic via the ppp0 interface.
In a test run I got a downstream speed of 190KB/s (city perimeter). Working over SSH is not painful at all.
I also played around with gammu a little bit.
$ gammu --identify
Device : /dev/ttyACM0
Manufacturer : Lenovo
Model : unknown (F5521gw)
Firmware : R2A07
The Wammu interface is nice, it can even receive SMS. But sending SMSes failed so far:
$ echo "Das ist ein Test" | gammu --debug textall --debug-file /tmp/gammu \
sendsms TEXT +491785542342
...
1 "AT+CMGS=28"
2 "> 079194710716000011000C919471584532240000FF10C4F01C949ED341E5B41B442DCFE9^Z"
3 "+CMS ERROR: 500"
... which is somewhat of an "generic error". Maybe sending SMS is not supported at all. I'll look into that later.
Also, I'll have a look whether my Card supports GPS information retrieval. Thinkwiki claims a similar model does this. Interesting.
Update: Actually, I forgot one thing. I keep the following two entries in my /etc/wvdial.conf
:
[Dialer on]
Modem = /dev/ttyACM0
Init1 = AT+CFUN=1
[Dialer off]
Modem = /dev/ttyACM0
Init1 = AT+CFUN=4
The actual sequence is now: wvdial on && wvdial blau
. The AT+CFUN=1
will
activate the radio equipment, which is necessary. And, suddenly, also SMS delivery works! :-)