Support for nbiot and LTE cat-m

Andre Valentin avalentin at marcant.net
Sat Aug 15 23:57:56 UTC 2020


Hi Aleksander,

Am 15.08.20 um 17:53 schrieb Aleksander Morgado:
> Hey,
> 
>>
>> Is there support fot nbiot and LTE cat-m networks in libqmi? We have the first modems here and I miss the band info.
>> What has to be done if it is missing?
>>
> 
> We're probably missing translations for TLVs that are specific to those techs.
> 
> If you have recent QMI NAS/DMS documentation you could send updates
> for the /data/qmi-service-dms.json and /data/qmi-service-nas.json
> files including those (if you're allowed to do so).

I'm sorry, but I do no not have thus.
> 
> Otherwise, we can try to reverse engineer those TLVs by looking at the
> binary TLV contents. E.g. could you post the output of qmicli
> --nas-get-rf-band-info --verbose in these devices?
> 
This function is not implemented in the device :-(

Perhaps this helps:
qmicli -d /dev/cdc-wdm0 --dms-get-band-capabilities --verbose
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] Opening device with flags 'auto'...
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] automatically selecting QMI mode
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] created endpoint
[10 Aug 2020, 23:17:59] [Debug] QMI Device at '/dev/cdc-wdm0' ready
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] Assuming service 'dms' is supported...
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] Allocating new client ID...
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] sent message...
<<<<<< RAW:
<<<<<<   length = 16
<<<<<<   data   = 01:0F:00:00:00:00:00:01:22:00:04:00:01:01:00:02

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] sent generic request (translated)...
<<<<<< QMUX:
<<<<<<   length  = 15
<<<<<<   flags   = 0x00
<<<<<<   service = "ctl"
<<<<<<   client  = 0
<<<<<< QMI:
<<<<<<   flags       = "none"
<<<<<<   transaction = 1
<<<<<<   tlv_length  = 4
<<<<<<   message     = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<<   type       = "Service" (0x01)
<<<<<<   length     = 1
<<<<<<   value      = 02
<<<<<<   translated = dms

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] received message...
<<<<<< RAW:
<<<<<<   length = 24
<<<<<<   data   = 01:17:00:80:00:00:01:01:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] received generic response (translated)...
<<<<<< QMUX:
<<<<<<   length  = 23
<<<<<<   flags   = 0x80
<<<<<<   service = "ctl"
<<<<<<   client  = 0
<<<<<< QMI:
<<<<<<   flags       = "response"
<<<<<<   transaction = 1
<<<<<<   tlv_length  = 12
<<<<<<   message     = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<<   type       = "Result" (0x02)
<<<<<<   length     = 4
<<<<<<   value      = 00:00:00:00
<<<<<<   translated = SUCCESS
<<<<<< TLV:
<<<<<<   type       = "Allocation Info" (0x01)
<<<<<<   length     = 2
<<<<<<   value      = 02:02
<<<<<<   translated = [ service = 'dms' cid = '2' ]

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] Registered 'dms' (version unknown) client with ID '2'
[10 Aug 2020, 23:17:59] [Debug] Asynchronously getting band capabilities...
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] sent message...
<<<<<< RAW:
<<<<<<   length = 13
<<<<<<   data   = 01:0C:00:00:02:02:00:01:00:45:00:00:00

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] sent generic request (translated)...
<<<<<< QMUX:
<<<<<<   length  = 12
<<<<<<   flags   = 0x00
<<<<<<   service = "dms"
<<<<<<   client  = 2
<<<<<< QMI:
<<<<<<   flags       = "none"
<<<<<<   transaction = 1
<<<<<<   tlv_length  = 0
<<<<<<   message     = "Get Band Capabilities" (0x0045)

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] received message...
<<<<<< RAW:
<<<<<<   length = 42
<<<<<<   data   = 01:29:00:80:02:02:02:01:00:45:00:1D:00:02:04:00:00:00:00:00:01:08:00:80:03:28:00:00:00:00:00:10:08:00:9F:18:0F:0A:40:00:00:00

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] received generic response (translated)...
<<<<<< QMUX:
<<<<<<   length  = 41
<<<<<<   flags   = 0x80
<<<<<<   service = "dms"
<<<<<<   client  = 2
<<<<<< QMI:
<<<<<<   flags       = "response"
<<<<<<   transaction = 1
<<<<<<   tlv_length  = 29
<<<<<<   message     = "Get Band Capabilities" (0x0045)
<<<<<< TLV:
<<<<<<   type       = "Result" (0x02)
<<<<<<   length     = 4
<<<<<<   value      = 00:00:00:00
<<<<<<   translated = SUCCESS
<<<<<< TLV:
<<<<<<   type       = "Band Capability" (0x01)
<<<<<<   length     = 8
<<<<<<   value      = 80:03:28:00:00:00:00:00
<<<<<<   translated = gsm-dcs-1800, gsm-900-extended, gsm-900-primary, gsm-850, gsm-pcs-1900
<<<<<< TLV:
<<<<<<   type       = "LTE Band Capability" (0x10)
<<<<<<   length     = 8
<<<<<<   value      = 9F:18:0F:0A:40:00:00:00
<<<<<<   translated = 1, 2, 3, 4, 5, 8, 12, 13, 17, 18, 19, 20, 26, 28, 39

[/dev/cdc-wdm0] Device band capabilities retrieved:
	Bands: 'gsm-dcs-1800, gsm-900-extended, gsm-900-primary, gsm-850, gsm-pcs-1900'
	LTE bands: '1, 2, 3, 4, 5, 8, 12, 13, 17, 18, 19, 20, 26, 28, 39'
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] Releasing 'dms' client with flags 'release-cid'...
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] Unregistered 'dms' client with ID '2'
[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] sent message...
<<<<<< RAW:
<<<<<<   length = 17
<<<<<<   data   = 01:10:00:00:00:00:00:02:23:00:05:00:01:02:00:02:02

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] sent generic request (translated)...
<<<<<< QMUX:
<<<<<<   length  = 16
<<<<<<   flags   = 0x00
<<<<<<   service = "ctl"
<<<<<<   client  = 0
<<<<<< QMI:
<<<<<<   flags       = "none"
<<<<<<   transaction = 2
<<<<<<   tlv_length  = 5
<<<<<<   message     = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<<   type       = "Release Info" (0x01)
<<<<<<   length     = 2
<<<<<<   value      = 02:02
<<<<<<   translated = [ service = 'dms' cid = '2' ]

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] received message...
<<<<<< RAW:
<<<<<<   length = 24
<<<<<<   data   = 01:17:00:80:00:00:01:02:23:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02

[10 Aug 2020, 23:17:59] [Debug] [/dev/cdc-wdm0] received generic response (translated)...
<<<<<< QMUX:
<<<<<<   length  = 23
<<<<<<   flags   = 0x80
<<<<<<   service = "ctl"
<<<<<<   client  = 0
<<<<<< QMI:
<<<<<<   flags       = "response"
<<<<<<   transaction = 2
<<<<<<   tlv_length  = 12
<<<<<<   message     = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<<   type       = "Result" (0x02)
<<<<<<   length     = 4
<<<<<<   value      = 00:00:00:00
<<<<<<   translated = SUCCESS
<<<<<< TLV:
<<<<<<   type       = "Release Info" (0x01)
<<<<<<   length     = 2
<<<<<<   value      = 02:02
<<<<<<   translated = [ service = 'dms' cid = '2' ]

[10 Aug 2020, 23:17:59] [Debug] Client released
[10 Aug 2020, 23:17:59] [Debug] Closed


The device is a Quectel BG96:

Module BG96 Cat M1/Cat NB1:
LTE FDD B1/ B2/ B3/ B4/ B5/ B8/ B12/ B13/ B18/ B19/ B20/ B25①/ B26*/ B28
LTE TDD B39 (for Cat M1 only)


It looks like there is current no possibility to see if cat-m or nb-iot technology is used?

Kind regards,

André

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4052 bytes
Desc: S/MIME Cryptographic Signature
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20200816/22757ea2/attachment.bin>


More information about the libqmi-devel mailing list