Garbled description with --nas-get-serving-system
Daniele Palmas
dnlplm at gmail.com
Wed Dec 11 07:50:47 UTC 2019
Hi Paul,
Il giorno mar 3 dic 2019 alle ore 15:36 Paul Gildea <gildeap at tcd.ie> ha scritto:
>
> Hi Daniele,
>
> I've tried it with regular carrier and it worked ok. It didn't work for two different brand of private networks/EPC's that we tried here.
>
the issue has been fixed on the firmware side and will be possibly
available in the next release.
Thanks,
Daniele
> --
> Paul
>
> On Mon, 2 Dec 2019 at 22:31, Daniele Palmas <dnlplm at gmail.com> wrote:
>>
>> Hi all,
>>
>> Il giorno lun 2 dic 2019 alle ore 17:27 Aleksander Morgado
>> <aleksander at aleksander.es> ha scritto:
>> >
>> > Hey!
>> >
>> > > > Hi, I was wondering had any knowledge of an issue we are seeing. We
>> > > > are
>> > > > connecting to private networks we are running on two different brands
>> > > > of
>> > > > EPC. Then, we are using libqmi to query the modem for the network
>> > > > info via
>> > > > --nas-get-serving-system
>> > >
>> > > 0A: D4:F2:9C:EE:2C:D3:EF:6F:F9:1A
>> > > ^length ^ data
>> > >
>> > > So length is 10 bytes, but in ASCII "TestNetwork" is 11 bytes long.
>> > > Hmm. What do we know packs more than one character into each byte...
>> > >
>> > > The string is most likely GSM7 encoded and libqmi is expecting all
>> > > strings in UTF8, which is what almost everything in QMI is reported as.
>> > >
>> > > So my best guess is that the Telit modem firmware is not correctly
>> > > converting the network name to Unicode for us. Every other QMI
>> > > implementation we've seen does :)
>> > >
>> > > ModemManager has some special code to ignore the description when it's
>> > > not UTF-8 safe, and libqmi only does it for printable stuff like what
>> > > qmicli outputs. Perhaps it could work around the Telit firmware
>> > > somehow.
>> > >
>> >
>> > Other messages, like "Get Home Network" (0x0025), have a special TLV
>> > indicating the encoding of the network description with the following
>> > supported values:
>> > • 0x00 – Octet, unspecified
>> > • 0x02 – 7-bit ASCII
>> > • 0x04 – Unicode
>> > • 0x09 – GSM 7-bit default
>> >
>> > I don't know of any such TLV in "Get Serving System", but maybe
>> > there's a new one we don't know of. There isn't any unknown one in the
>> > provided message as far as I can see.
>> >
>> > As Dan said, ModemManager has UTF-8 validity checks before using the
>> > strings, but the printable TLV descriptions in libqmi and the qmicli
>> > output lack that logic.
>> >
>> > @Daniele Palmas @Carlo Lobrano do you know if this is a Telit specific
>> > issue or a more generic one? Is the firmware preferring the GSM-7
>> > output for this field over Unicode when the characters fit in GSM-7?
>> >
>>
>> let me check this, it will take a few days.
>>
>> @Paul, is this happening only with your test network or also with
>> normal carriers? I'm not seeing the issue in normal usage.
>>
>> Regards,
>> Daniele
>>
>> > --
>> > Aleksander
>> > https://aleksander.es
More information about the libqmi-devel
mailing list