Adding Telit ME310G1-WW support
Mark Deneen
mdeneen at gmail.com
Fri Jul 10 21:15:44 UTC 2020
I've attached a patch which uses the "custom regex" feature of the
existing parser in order to detect PPP and say that things are good.
A few things to note:
* I created the regex based on data I saw output from my modem. At
best it is correct, at worst it won't do any harm.
* Ideally I would only use this for the ME310 modem, but I didn't see
a way to do that in the plugin. I'm certainly open to suggestions.
* A similar technique was used for a wavecom modem quirk, and this is
definitely based on that.
I've also added hints to the udev rules for the ME310G1-WW device, but
I see that those were already added in git in
fff47478cc5887176830a5debe2c4204434c222f.
These patches are based on 1.14.0, but I can check out master from git
and apply my changes there if needed.
This particular device has a second port configuration (1bc7:1102),
which which looks like this:
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=atmel-ehci/3p, 480M
|__ Port 2: Dev 7, If 0, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 2: Dev 7, If 1, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 2: Dev 7, If 2, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 2: Dev 7, If 3, Class=Communications, Driver=cdc_ether, 480M
|__ Port 2: Dev 7, If 4, Class=CDC Data, Driver=cdc_ether, 480M
I've not been able to get the cdc_ether portion working yet, although
I am hopeful. If both ECM and "option" serial interfaces are
available, how does ModemManager choose between them?
On Fri, Jul 10, 2020 at 10:08 AM Mark Deneen <mdeneen at gmail.com> wrote:
>
> Hi!
>
> I have a Telit ME310G1-WW cell modem which is supported in newer
> (5.5.x) kernels with the option driver. ModemManager (1.12.6, will
> try to test newer versions) almost works, but it appears to be a modem
> quirk which prevents MM from detecting that it is connected. Here's a
> few log entries showing the issue:
>
> Feb 7 17:19:55 sama5d27 daemon.debug ModemManager[783]: <debug>
> (ttyUSB2): --> 'ATD*99***6#<CR>'
> Feb 7 17:19:55 sama5d27 daemon.debug ModemManager[783]: <debug>
> (ttyUSB2): <-- '~\255}#\192!}!(} }9}"}&} } } }
> }#}%\194#}%}%}&s\168\133;}'}"}(}"0O~'
>
> It selects the appropriate context (6) and issues the ATD command, but
> the modem responds with PPP data and never prints out "CONNECT", and
> MM eventually times out waiting for a response.
>
> This modem is very new, and I likely have one of a few which are out
> in the wild, so there's a chance that this may be corrected at some
> point by Telit. With that being said, I was considering adding a
> GRegex to mm-serialparsers.c which matches PPP escape sequences in
> order to detect the connection. Does this seem like a valid approach?
>
> All the best,
> Mark Deneen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Detect-PPP-data-if-CONNECT-is-not-returned-from-the-.patch
Type: text/x-patch
Size: 2067 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/modemmanager-devel/attachments/20200710/878cebb1/attachment.bin>
More information about the ModemManager-devel
mailing list