[PATCH] u-blox: ignore non-AT ttyACM interfaces

Matthew Starr mstarr at hedonline.com
Tue Apr 10 19:58:07 UTC 2018


> -----Original Message-----
> From: Dan Williams [mailto:dcbw at redhat.com]
> Sent: Tuesday, April 10, 2018 1:17 PM
> To: Matthew Starr; modemmanager-devel at lists.freedesktop.org
> Subject: Re: [PATCH] u-blox: ignore non-AT ttyACM interfaces
> 
> On Tue, 2018-04-10 at 17:30 +0000, Matthew Starr wrote:
> > For the TOBY-R2, LISA-R2, and LARA-R2, the only valid AT ports are
> > ttyACM0, ttyACM1, and ttyACM2.  All other ttyACM ports cause MM to
> > wait 20-30 seconds probing the port on startup.
> >
> > Ignoring the non-AT ttyACM ports allows MM to not wait 20-30 seconds
> > probing and therefore startup much faster with these modems.
> 
> Is the "primary log for diagnostics" a QCDM/DIAG port?

I am not sure what the usage of the "primary log for diagnostics" port it used for.  It is just named that in the datasheet and sometimes called the trace log.  I attempted to connect to it at various baud rates but no response.  I have a feeling it is for u-blox only use, maybe for certification.  There is no documentation that I can find that actually tells what the port is used for, how to communicate with it, and how to configure it.  There is the AT+USIO command which is only supported by the u-blox SARA modems which allows some configuration of the log, but it doesn't look like that command is supported by any of the modems I added.

> 
> Also, does the GNSS port spit out NMEA when location services are enabled?
> If so we may want to tag that port (but still ignore it) and then advertise that
> port as the "unmanaged" location port.

The GNSS port does output NMEA at 9600 baud when location services are enabled (like with AT+UGPS).  How would you tag the port and still ignore it?  How do you advertise the port as unmanaged?

Matthew

> 
> Dan
> 
> > ---
> >  plugins/ublox/77-mm-ublox-port-types.rules | 35
> > ++++++++++++++++++++++++++++++
> >  1 file changed, 35 insertions(+)
> >
> > diff --git a/plugins/ublox/77-mm-ublox-port-types.rules
> > b/plugins/ublox/77-mm-ublox-port-types.rules
> > index cb77f0e0..31128dac 100644
> > --- a/plugins/ublox/77-mm-ublox-port-types.rules
> > +++ b/plugins/ublox/77-mm-ublox-port-types.rules
> > @@ -16,4 +16,39 @@ ATTRS{idVendor}=="1546",
> ATTRS{idProduct}=="1010",
> > ENV{.MM_USBIFNUM}=="02", ENV{  ATTRS{idVendor}=="1546",
> > ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="04",
> > ENV{ID_MM_PORT_IGNORE}="1"
> >  ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1010",
> > ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
> >
> > +# TOBY-R2 port types
> > +#  ttyACM0 (if #0): primary
> > +#  ttyACM1 (if #2): secondary
> > +#  ttyACM2 (if #4): tertiary
> > +#  ttyACM3 (if #6): GNSS Tunneling (ignore) #  ttyACM4 (if #8): SIM
> > +Access Profile (ignore) #  ttyACM5 (if #10): Primary Log for
> > +diagnostics (ignore) ATTRS{idVendor}=="1546",
> > +ATTRS{idProduct}=="1107",
> > ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1107",
> > ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1107",
> > ENV{.MM_USBIFNUM}=="0a", ENV{ID_MM_PORT_IGNORE}="1"
> > +
> > +# LARA-R2 port types
> > +#  ttyACM0 (if #0): primary
> > +#  ttyACM1 (if #2): secondary
> > +#  ttyACM2 (if #4): tertiary
> > +#  ttyACM3 (if #6): GNSS Tunneling (ignore) #  ttyACM4 (if #8): SIM
> > +Access Profile (ignore) #  ttyACM5 (if #10): Primary Log for
> > +diagnostics (ignore) ATTRS{idVendor}=="1546",
> > +ATTRS{idProduct}=="110a",
> > ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="110a",
> > ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="110a",
> > ENV{.MM_USBIFNUM}=="0a", ENV{ID_MM_PORT_IGNORE}="1"
> > +
> > +# LISA-U2 port types
> > +#  ttyACM0 (if #0): primary
> > +#  ttyACM1 (if #2): secondary
> > +#  ttyACM2 (if #4): tertiary
> > +#  ttyACM3 (if #6): GNSS Tunneling (ignore) #  ttyACM4 (if #8):
> > +Primary Log for diagnostics (ignore) #  ttyACM5 (if #10): Secondary
> > +Log for diagnostics (ignore) #  ttyACM6 (if #12): SAP (SIM Access
> > +Profile) (ignore) ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102",
> > ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102",
> > ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102",
> > ENV{.MM_USBIFNUM}=="0a", ENV{ID_MM_PORT_IGNORE}="1"
> > +ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102",
> > ENV{.MM_USBIFNUM}=="0c", ENV{ID_MM_PORT_IGNORE}="1"
> > +
> >  LABEL="mm_ublox_port_types_end"


More information about the ModemManager-devel mailing list