Support for GSM data cards

2009-09-03 Thread Marcel Holtmann
Hi guys,

so I started working on udev integration and auto-detection and pushed a
few new drivers into the upstream oFono repository. It know has drivers
for Android/HTC G1, Ericsson MBM, Option HSO, Novatel and Huawai modems.
An example of three devices attached to the same system would look then
like this:

[ /mbm2 ]
Powered = 1
Interfaces = org.ofono.SmsManager org.ofono.NetworkRegistration 
Model = F3507g
Manufacturer = Ericsson
Serial = 0115xx
Revision = R1B003
[ org.ofono.SmsManager ]
ServiceCenterAddress = +17057969300
[ org.ofono.NetworkRegistration ]
Status = registered
Operator = ROGERS
AvailableOperators = /mbm2/operator/302720 
LocationAreaCode = 65080
CellId = 1305559

[ /huawei1 ]
Powered = 1
Interfaces = org.ofono.NetworkRegistration 
Model = E160
Manufacturer = huawei
Serial = 3538xx
Revision = 11.604.18.01.00
[ org.ofono.NetworkRegistration ]
Status = roaming
Operator = CAN Rogers Wirel
AvailableOperators = /huawei1/operator/302720 

[ /hso0 ]
Powered = 1
Interfaces = org.ofono.SmsManager org.ofono.NetworkRegistration 
Model = GlobeTrotter HSDPA Modem
Manufacturer = Option N.V.
Serial = 3597xx
Revision = 2.5.13Hd (Date: Feb 18 2008, Time: 18:32:40)
[ org.ofono.SmsManager ]
ServiceCenterAddress = +49171076
[ org.ofono.NetworkRegistration ]
Status = roaming
Operator = Rogers Wireless - T-Mobile D
AvailableOperators = /hso0/operator/302720 
LocationAreaCode = 16100
CellId = 47738

All of the drivers are far from finished. The best working one is the
Ericsson MBM right now. I even managed to send a text message via the
SMS interface. When trying that with an Option device the AT parser
hangs itself. So we need some quirk there. Everybody is welcome to debug
it and send a patch.

The Novatel and Huawei devices, don't seem to support SMS. Or they do
and don't report it correctly. Also the Novatel card has problems with
the network registration. It refuses to work. This needs also to be
debugged.

If the drivers network registration does work, then it looks nicely like
the following output:

[ /mbm2 ]
[ /mbm2/operator/302720 ]
Status = current
MobileNetworkCode = 720
Technology = UTRAN
Name = ROGERS
MobileCountryCode = 302

[ /huawei1 ]
[ /huawei1/operator/302720 ]
Status = current
MobileNetworkCode = 720
Technology = UTRAN
Name = CAN Rogers Wirel
MobileCountryCode = 302

[ /hso0 ]
[ /hso0/operator/302720 ]
Status = current
MobileNetworkCode = 720
Technology = GSM
Name = Rogers Wireless - T-Mobile D
MobileCountryCode = 302

The MBM device contains a local SIM card and the other two are actually
roaming.

The goal for these data cards should be to support text messaging and
GPRS (once we defined and implemented that interface). Any help is more
than welcome.

Regards

Marcel


___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono


RE: [PATCH] G1: Add an SMS quirk for CNMI mode

2009-09-03 Thread Bastian, Waldo
 - /* Mode doesn't matter, but sounds like 2 is the sanest option */
 - if (!append_cnmi_element(buf, len, cnmi_opts[0], 2310, FALSE))
 + if (data-vendor == OFONO_VENDOR_HTC_G1)
 + /* The G1 advertises support for mode 2, but returns an error
 +  * if we attempt to actually use it. */
 + mode = 1;
 + else
 + /* Sounds like 2 is the sanest mode */
 + mode = 2310;
 +
 + if (!append_cnmi_element(buf, len, cnmi_opts[0], mode, FALSE))
   return FALSE;

Instead of having vendor checks all over the place, wouldn't it be cleaner if 
the plugin had a way to provide/fix cnmi_opts?

Cheers,
Waldo
___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono


Re: [PATCH] G1: Add an SMS quirk for CNMI mode

2009-09-03 Thread Denis Kenzior
Hi Waldo,

 Instead of having vendor checks all over the place, wouldn't it be cleaner
 if the plugin had a way to provide/fix cnmi_opts?

For now we decided to do it this way, since providing arbitrary properties per 
atom seemed to be too much.  The hope is that there are not many modems that 
blatantly lie about what they can do (like the G1)  If quirks get out of hand 
we can revisit this.

In the meantime if you need to override the entire cnmi string, do something 
like:
if (data-vendor == OFONO_VENDOR_WALDOS_MODEM) {
sprintf(buf, AT+CNMI=);
supported = TRUE;
} else if (build_cnmi_string(buf, cnmi_opts, data))
supported = TRUE;

Regards,
-Denis
___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono


TI Calypso Driver

2009-09-03 Thread Denis Kenzior
Hi guys,

I submitted a preliminary driver for TI Calypso based devices (e.g. OpenMoko 
Freerunner).  It works well enough that I can power up / down the modem, 
register to the network, scan operators, etc.  Voice calls  SMS features 
should also work.

Simply insert the following lines into modem.conf to enable this device:
[calypso]
Driver=calypso
Device=/dev/ttySAC0

Regards,
-Denis
___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono