Open Source Telephony
 help / color / mirror / Atom feed
From: Marcel Holtmann <marcel@holtmann.org>
To: ofono@ofono.org
Subject: Re: Some experiments with the SIMCOM SIM5216E modem on a ARM926 board
Date: Fri, 13 Jan 2012 04:51:31 +0100	[thread overview]
Message-ID: <1326426691.6454.255.camel@aeonflux> (raw)
In-Reply-To: <4F0FA169.5010607@eclis.ch>

[-- Attachment #1: Type: text/plain, Size: 4075 bytes --]

Hi Jean-Christian,

> >> It's a mystery for me if Simcom do there own software or only use the
> >> Qualcamm one. The chipset of this modem is the QSC6270 and I expected
> >> that ofono already have something appropriate. I suspect the "g1" driver
> >> to be a close match and if fact it work already quite well. Are you
> >> willing to accept a new modem plugin that is basically a copy of the "g1" ?
> >
> > I expect a new modem plugin for the sim900. So that approach is fine.
> >
> > However using the g1 driver as a base is a bad example. That driver is
> > bit-rotting a lot.
> 
> Ok, I didn't known that. Maybe the SIMCOM5216 need the same 
> "bit-rotting" as the g1. We will see.
> 
> > Let me ask this differently. What are the GSM/UMTS features that you
> > actually need for your product?
> 
> Power control, SIM pin code, manual or automatic operator selection, 
> signal strength indication, Voice call dial/receive/hangup, SMS 
> send/receive, and GPRS TCP/IP link.

so essentially you need everything. I hope that the voice call
implementation of SIM COM modem is proper. Otherwise you end up with
higher power consumption. We can talk about that later.

> >>> With USB as transport you really wanna do modem detection via udev. So
> >>> you might wanna get this solved with uclibc.
> >>
> >> After some additional work I was getting udev working on the target. But
> >> understanding how the udev ofono rules should be written for a composite
> >> device is really hard. I did not found an example on how this should be
> >> done to set both OFONO_DRIVER _and_ OFONO_LABEL. I was also confused by
> >> the fact that there is two plugins that handles the udev events: udev
> >> and udevng.
> >
> > Send the section for your device from /sys/kernel/debug/usb/devices. I
> > can have a look then.
> 
> T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  3 Spd=12   MxCh= 0
> D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
> P:  Vendor=05c6 ProdID=9000 Rev= 0.00
> S:  Manufacturer=SimTech, Incorporated
> S:  Product=SimTech SIM5216
> C:* #Ifs= 5 Cfg#= 1 Atr=e0 MxPwr=500mA
> I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
> E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> E:  Ad=01(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
> E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
> E:  Ad=83(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> E:  Ad=03(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
> E:  Ad=84(I) Atr=03(Int.) MxPS=  64 Ivl=5ms
> E:  Ad=85(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> E:  Ad=04(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> I:* If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
> E:  Ad=86(I) Atr=03(Int.) MxPS=  64 Ivl=5ms
> E:  Ad=87(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> E:  Ad=05(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
> 
> The SIMCOM documentation say:
> 
> USB interface is mapped to five virtual ports: “SIMTECH USB Modem”, 
> “SIMTECH NMEA Device”, “SIMTECH ATCOM Device”, “SIMTECH Diagnostics 
> interface” and “SIMTECH Wireless Ethernet Adapter”. UART, “SIMTECH USB 
> Modem” and “SIMTECH ATCOM Device” could respond to AT command, and URC 
> report to these three ports at the same time, but user could set 
> dedicated port to receive URC (Unsolicited Result Code).

So lets figure out which one is the NMEA port and which one is the
QCDM/DIAG port. Use gatchat/test-qcdm --device <tty> and see which one
responds. That one is the QCDM port and the other is the NMEA port.

I bet that interface #4 is actually some form of CDC Ethernet for
highspeed data transfers. So that you do not have to use PPP. Might
wanna ask SIM COM about it.

Once we know the interface mapping, it is pretty easy to add support for
plugins/udevng.c for this hardware.

Regards

Marcel



  parent reply	other threads:[~2012-01-13  3:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-10  3:21 Some experiments with the SIMCOM SIM5216E modem on a ARM926 board Jean-Christian de Rivaz
2012-01-10  6:03 ` Marcel Holtmann
2012-01-12  4:08   ` Jean-Christian de Rivaz
2012-01-12  5:12     ` Marcel Holtmann
2012-01-13  3:13       ` Jean-Christian de Rivaz
2012-01-13  3:19         ` Jean-Christian de Rivaz
2012-01-13  3:57           ` Marcel Holtmann
2012-01-13  4:39             ` Jean-Christian de Rivaz
2012-01-13  3:51         ` Marcel Holtmann [this message]
2012-01-13  4:54           ` Jean-Christian de Rivaz
2012-01-13  6:23           ` Jean-Christian de Rivaz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1326426691.6454.255.camel@aeonflux \
    --to=marcel@holtmann.org \
    --cc=ofono@ofono.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox