Re: Cannot get connection with LE910C4-NF

2023-10-19 Thread Mark Deneen
Hey Fernando,

Try changing your initial bearer to "broadband" instead of nxtgenphone. I'm
pretty sure that nxtgenphone stopped working with the 3g sunset, but your
module still has it baked into the firmware.





On Thu, Oct 19, 2023, 16:52 Fernando B  wrote:

> Good day,
>
> Looking for some guidance on how to troubleshoot this, I have a Debian 11
> with LE910C4-NF which we use with two hardware sim slots, so the active
> slot is always on slot 1 as far as mmcli is concerned. This vendor provides
> a cli to switch slots. I can switch to slot 2 for verizon and make a
> connection just fine with modemmanager. However on slot 1 with att, it just
> timeout. Even if I do verbose there isn't much information to go on. The
> strength shows 75%.
>
> I have an enterprise booster antenna, so I should be able to connect. On
> Debian 9 with a Sierra modem with qmi I can connect with att with
> sudo mmcli -m 0 --simple-connect='apn=our.custom.apn,ip-type=ipv4v6'
>
> moxa@hostname:~$ mmcli -m 10
>   --
>   General  |   path:
> /org/freedesktop/ModemManager1/Modem/10
>|  device id:
> a411abc5574ab456d4cd12c8decfcb87819a4b37
>   --
>   Hardware |   manufacturer: Telit
>|  model: LE910C4-NF
>|  firmware revision: 25.20.668  1  [Mar 20 2020 12:00:00]
>| carrier config: default
>|   h/w revision: 1.10
>|  supported: gsm-umts, lte
>|current: gsm-umts, lte
>|   equipment id: 350344982749853
>   --
>   System   | device:
> /sys/devices/platform/soc/3080.bus/30b1.usb/ci_hdrc.0/usb1/1-1
>|drivers: qmi_wwan, option
>| plugin: Moxa-Telit-LE910CX
>|   primary port: cdc-wdm0
>|  ports: cdc-wdm0 (qmi), ttyUSB4 (ignored),
> ttyUSB5 (gps),
>| ttyUSB6 (at), ttyUSB7 (at), ttyUSB8
> (ignored), wwan0 (net)
>   --
>   Status   |   lock: sim-pin2
>| unlock retries: sim-pin (3), sim-puk (10), sim-pin2
> (3), sim-puk2 (10)
>|  state: enabled
>|power state: on
>|access tech: lte
>| signal quality: 100% (cached)
>   --
>   Modes|  supported: allowed: 3g; preferred: none
>| allowed: 4g; preferred: none
>| allowed: 3g, 4g; preferred: 4g
>| allowed: 3g, 4g; preferred: 3g
>|current: allowed: 2g, 3g, 4g; preferred: 4g
>   --
>   Bands|  supported: utran-4, utran-5, utran-2, eutran-2,
> eutran-4, eutran-5,
>| eutran-12, eutran-13, eutran-14,
> eutran-66, eutran-71
>|current: utran-4, utran-5, utran-2, eutran-2,
> eutran-4, eutran-5,
>| eutran-12, eutran-13, eutran-14,
> eutran-66, eutran-71
>   --
>   IP   |  supported: ipv4, ipv6, ipv4v6
>   --
>   3GPP |   imei: 350344982749853
>|  enabled locks: fixed-dialing
>|operator id: 310260
>|   registration: idle
>   --
>   3GPP EPS |   ue mode of operation: csps-2
>| initial bearer apn: nxtgenphone
>| initial bearer ip type: ipv4v6
>   --
>   SIM  |   primary sim path: /org/freedesktop/ModemManager1/SIM/8
>| sim slot paths: slot 1:
> /org/freedesktop/ModemManager1/SIM/8 (active)
>| slot 2: none
>
> moxa@moxa-t1182802:~$ sudo mmcli -m 10 --3gpp-scan --timeout=300
> [sudo] password for moxa:
>   -
>   3GPP scan | networks: 311490 - 311 490 (lte, forbidden)
> |   313100 - 313 100 (lte, available)
> |   310260 - AT (lte, current)
> |   311480 - Verizon (lte, forbidden)
> |   310410 - AT (lte, available)
>
> Thank you,
> Fernando B.
>


Re: Quectel and Telit issues

2021-07-05 Thread Mark Deneen
I use a Telit LE910 on newer kernels (5.10.x) without issue.

On Mon, Jul 5, 2021, 09:03 Marc Murphy  wrote:

> Hello All
>
> Been looking at an issue on my embedded device.  Have previously been
> using SierraWireless MC7430 and Huawei module without issues.
> I have recently changed to try a Telit 910 and a Quectel EG21-G and get :
>
___
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel


Re: Adding Telit ME310G1-WW support

2020-07-14 Thread Mark Deneen
On Mon, Jul 13, 2020 at 1:13 PM Mark Deneen  wrote:
>
> On Mon, Jul 13, 2020 at 1:04 PM Daniele Palmas  wrote:
> >
> > Hi Mark,
> >
> > Il giorno lun 13 lug 2020 alle ore 15:17 Mark Deneen
> >  ha scritto:
> > >
> > > Daniele,
> > >
> > > > @Mark, did you check if there's a more recent firmware update than the
> > > > one you are using?
> > >
> > > I'm running 37.00.210-B038-P0C.21, but I'm having trouble
> > > understanding if any of the available firmware releases apply to the
> > > model number that I have.  Regardless, the firmware seems only made
> > > available as Windows binaries and my modem is soldered to a board with
> > > an ARM processor.  Is there a way to update the firmware in Linux?  I
> > > have used the HE910 module in the past and was able to flash firmware
> > > from an ARM-based Linux platform, but perhaps they do things
> > > differently now.
> > >
> >
> > better reach directly Telit TS for both the things.
>
> Indeed -- I am awaiting a response.  Thanks again for your help!


I received word from Telit support -- the missing "CONNECT" message is
a known issue.  While there is no release as of yet to correct this,
it is slated for August.

I'm thinking that the answer here is to forget this patch, knowing
that it will be fixed in the not-too-distant future in a firmware
release.  Thoughts?

-M
___
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel


Re: Adding Telit ME310G1-WW support

2020-07-13 Thread Mark Deneen
On Mon, Jul 13, 2020 at 1:04 PM Daniele Palmas  wrote:
>
> Hi Mark,
>
> Il giorno lun 13 lug 2020 alle ore 15:17 Mark Deneen
>  ha scritto:
> >
> > Daniele,
> >
> > > @Mark, did you check if there's a more recent firmware update than the
> > > one you are using?
> >
> > I'm running 37.00.210-B038-P0C.21, but I'm having trouble
> > understanding if any of the available firmware releases apply to the
> > model number that I have.  Regardless, the firmware seems only made
> > available as Windows binaries and my modem is soldered to a board with
> > an ARM processor.  Is there a way to update the firmware in Linux?  I
> > have used the HE910 module in the past and was able to flash firmware
> > from an ARM-based Linux platform, but perhaps they do things
> > differently now.
> >
>
> better reach directly Telit TS for both the things.

Indeed -- I am awaiting a response.  Thanks again for your help!

-M
___
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel


Re: Adding Telit ME310G1-WW support

2020-07-12 Thread Mark Deneen
On Sun, Jul 12, 2020 at 3:08 AM Aleksander Morgado
 wrote:
>
> Hey!
>
> > 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.
>
> I find this regex is extremely specific to your usecase. As you said
> it may be a fix, or it may not do anything, that isn't a complete
> solution, and I think we should try to find some other way to handle
> this if possible.
>
> I find it very very weird that the modem doesn't reply a CONNECT
> response after the ATD, that would be a very weird firmware bug! Maybe
> the TTY we're using for connection isn't the correct one? @Daniele
> Palmas @Carlo Lobrano Do you guys have any idea of why this may be
> happening in the ME310?

There are two ports which accept AT commands, and both behave in the
same fashion.  Here's some more information on the modem:

Output of AT#SWPKGV:

37.00.210-B038-P0C.21
M0C.20-B038
P0C.21
A0C.21

ATI0: 332
ATI1: 0
ATI2:
ATI3: Telit
ATI4: ME310G1-WW
ATI5: DOB v.2.0

I would not be surprised if the "-WW" part has different functionality.

I issued the AT commands in picocom as well to confirm that CONNECT
was never sent.


> > * 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.
>
> If we needed a quirk like this one, we could flag via udev with a new
udev tag.
>
> > 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?
>
> MM doesn't have any implementation yet to handle ECM interfaces in
> Telit modems, but that would definitely be preferred over PPP in a
> TTY.

I would also prefer to use ECM over pppd, but I've not found a way to
make this work yet.


> Regarding the patch itself, you shouldn't add the regex to the primary
> port. You should run mm_base_modem_peek_data_ports() and add the regex
> to all data ports that are TTYs (MM_IS_PORT_SERIAL()). But as said, I
> would totally prefer to have this solved somehow without needing to
> detect the PPP stream, because it is pppd the only one who should be
> touching that (MM yields the control of the TTY to pppd as soon as the
> port is in data mode).

This is easy enough to do, but I will focus on getting ECM working first.

Thanks for the response, Aleksander.


-M
___
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel


Re: Adding Telit ME310G1-WW support

2020-07-10 Thread Mark Deneen
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  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]: 
> (ttyUSB2): --> 'ATD*99***6#'
> Feb  7 17:19:55 sama5d27 daemon.debug ModemManager[783]: 
> (ttyUSB2): <-- '~\255}#\192!}!(} }9}"}&} } } }
> }#}%\194#}%}%}\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
From 41a8dc9fc5116938b410b785c1ee2eb3d79cca9d Mon Sep 17 00:00:00 2001
From: Mark Deneen 
Date: Fri, 10 Jul 2020 16:05:45 -0400
Subject: [PATCH] Detect PPP data if CONNECT is not returned from the modem

---
 plugins/telit/mm-broadband-modem-telit.c | 20 
 1 file changed, 20 insertions(+)

diff --git a/plugins/telit/mm-broadband-modem-telit.c b/plugins/telit/mm-broadband-modem-telit.c
index 48ae4de..97be935 100644
--- a/plugins/telit/mm-broadband-modem-telit.c
+++ b/plugins/telit/mm-broadband-modem-telit.c
@@ -26,6 +26,7 @@
 #include "ModemManager.h"
 #include "mm-log-object.h"
 #include "mm-errors-types.h"
+#include "mm-serial-parsers.h"
 #include "mm-modem-helpers.h"
 #include "mm-base-modem-at.h"
 #include "mm-iface-modem.h"
@@ -310,6 +311,9 @@ static void
 setup_ports (MMBroadbandModem *self)
 {
 MMPortSerialGps *gps_data_port;
+gpointer parser;
+MMPortSerialAt *primary;
+GRegex *regex;
 
 /* Call parent's setup ports first always */
 MM_BROADBAND_MODEM_CLASS (mm_broadband_modem_telit_parent_class)->setup_ports (self);
@@ -328,6 +332,22 @@ setup_ports (MMBroadbandModem *self)
   self,
   NULL);
 }
+primary = mm_base_modem_peek_port_primary (MM_BASE_MODEM (self));
+
+if (primary) {
+mm_obj_dbg (self, "parser will attempt to detect ppp messages");
+parser = mm_serial_parser_v1_new ();
+regex = g_regex_new ("~\xFF}#\xC0!}",
+ G_REGEX_RAW | G_REGEX_OPTIMIZE,
+ 0, NULL);
+mm_serial_parser_v1_set_custom_regex (parser, regex, NULL);
+g_regex_unref (regex);
+
+mm_port_serial_at_set_response_parser (MM_PORT_SERIAL_AT (primary),
+   mm_serial_parser_v1_parse,
+   parser,
+   mm_serial_parser_v1_destroy);
+}
 }
 
 static MMModemLocationSource
___
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel


Adding Telit ME310G1-WW support

2020-07-10 Thread Mark Deneen
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]: 
(ttyUSB2): --> 'ATD*99***6#'
Feb  7 17:19:55 sama5d27 daemon.debug ModemManager[783]: 
(ttyUSB2): <-- '~\255}#\192!}!(} }9}"}&} } } }
}#}%\194#}%}%}\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
___
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel