Telit LE910C1 - GPS integration
Aleksander Morgado
aleksander at aleksander.es
Mon Apr 27 14:23:39 UTC 2020
Hey,
>
> I didn't found information in Telit documentation about the GPS control with QMI. I'll try to poke them directly. On the other side, I did enable the gps with success using mmcli but didn't had any data location under the --location-get command.
> Here is the log when I do the command mmcli -m 0 --location-enable-gps-nmea if you ever see something unusual.
> ----------------------------------------------------------------------------------
> <debug> [1587919447.966940] Got QMI WDS event report
> <debug> [1587919448.098691] Setting up location sources: '3gpp-lac-ci, gps-nmea'
> <debug> [1587919448.098791] Location '3gpp-lac-ci' gathering is already enabled...
> <debug> [1587919448.098826] Location 'gps-raw' gathering is already disabled...
> <debug> [1587919448.098855] Location 'agps-msa' gathering is already disabled...
> <debug> [1587919448.098880] Location 'agps-msb' gathering is already disabled...
> <debug> [1587919448.098901] Need to enable the following location sources: 'gps-nmea'
> [/dev/cdc-wdm0] sent message...
> <<<<<< RAW:
> <<<<<< length = 38
> <<<<<< data = 01:25:00:00:10:03:00:03:00:22:00:19:00:13:04:00:E8:03:00:00:12:04:00:02:00:00:00:10:04:00:01:00:00:00:01:01:00:10
> [/dev/cdc-wdm0] sent generic request (translated)...
> <<<<<< QMUX:
> <<<<<< length = 37
> <<<<<< flags = 0x00
> <<<<<< service = "loc"
> <<<<<< client = 3
> <<<<<< QMI:
> <<<<<< flags = "none"
> <<<<<< transaction = 3
> <<<<<< tlv_length = 25
> <<<<<< message = "Start" (0x0022)
> <<<<<< TLV:
> <<<<<< type = "Minimum Interval between Position Reports" (0x13)
> <<<<<< length = 4
> <<<<<< value = E8:03:00:00
> <<<<<< translated = 1000
> <<<<<< TLV:
> <<<<<< type = "Intermediate Report State" (0x12)
> <<<<<< length = 4
> <<<<<< value = 02:00:00:00
> <<<<<< translated = disable
> <<<<<< TLV:
> <<<<<< type = "Fix Recurrence Type" (0x10)
> <<<<<< length = 4
> <<<<<< value = 01:00:00:00
> <<<<<< translated = periodic-fixes
> <<<<<< TLV:
> <<<<<< type = "Session ID" (0x01)
> <<<<<< length = 1
> <<<<<< value = 10
> <<<<<< translated = 16
> [/dev/cdc-wdm0] received message...
> <<<<<< RAW:
> <<<<<< length = 20
> <<<<<< data = 01:13:00:80:10:03:02:03:00:22:00:07:00:02:04:00:00:00:00:00
> [/dev/cdc-wdm0] received generic response (translated)...
> <<<<<< QMUX:
> <<<<<< length = 19
> <<<<<< flags = 0x80
> <<<<<< service = "loc"
> <<<<<< client = 3
> <<<<<< QMI:
> <<<<<< flags = "response"
> <<<<<< transaction = 3
> <<<<<< tlv_length = 7
> <<<<<< message = "Start" (0x0022)
> <<<<<< TLV:
> <<<<<< type = "Result" (0x02)
> <<<<<< length = 4
> <<<<<< value = 00:00:00:00
> <<<<<< translated = SUCCESS
> [/dev/cdc-wdm0] sent message...
> <<<<<< RAW:
> <<<<<< length = 24
> <<<<<< data = 01:17:00:00:10:03:00:04:00:21:00:0B:00:01:08:00:04:00:00:00:00:00:00:00
> [/dev/cdc-wdm0] sent generic request (translated)...
> <<<<<< QMUX:
> <<<<<< length = 23
> <<<<<< flags = 0x00
> <<<<<< service = "loc"
> <<<<<< client = 3
> <<<<<< QMI:
> <<<<<< flags = "none"
> <<<<<< transaction = 4
> <<<<<< tlv_length = 11
> <<<<<< message = "Register Events" (0x0021)
> <<<<<< TLV:
> <<<<<< type = "Event Registration Mask" (0x01)
> <<<<<< length = 8
> <<<<<< value = 04:00:00:00:00:00:00:00
> <<<<<< translated = nmea
> [/dev/cdc-wdm0] received message...
> <<<<<< RAW:
> <<<<<< length = 20
> <<<<<< data = 01:13:00:80:10:03:02:04:00:21:00:07:00:02:04:00:00:00:00:00
> [/dev/cdc-wdm0] received generic response (translated)...
> <<<<<< QMUX:
> <<<<<< length = 19
> <<<<<< flags = 0x80
> <<<<<< service = "loc"
> <<<<<< client = 3
> <<<<<< QMI:
> <<<<<< flags = "response"
> <<<<<< transaction = 4
> <<<<<< tlv_length = 7
> <<<<<< message = "Register Events" (0x0021)
> <<<<<< TLV:
> <<<<<< type = "Result" (0x02)
> <<<<<< length = 4
> <<<<<< value = 00:00:00:00
> <<<<<< translated = SUCCESS
> ----------------------------------------------------------------------------------
>
The above sequence looks good to me; you start the GPS engine and you
also register for NMEA indications. After that, you should start
receiving NMEA traces in QMI LOC indications, but I assume you're not
receiving any? What MM and libqmi versions are you using?
> By curiosity, do you know a good references for qmi protocol so I can dig into it?
>
If you google for "Telit QMI LM940" you'll probably find easily a QMI
reference from Telit, but unfortunately I don't think it has much
detail on the LOC service itself. Other than that, I don't think there
are public online references for QMI documents anywhere else. If you
find some, let us know!
--
Aleksander
https://aleksander.es
More information about the ModemManager-devel
mailing list