Question regarding set_profile_index_3gpp/get_profile_index_3gpp
Martin Maurer
martin.maurer at mmeacs.de
Mon Mar 3 09:34:35 UTC 2025
Hello,
with start_network I am using set_profile_index_3gpp (and just currently
for testing get_profile_index_3gpp).
I am using Python code, it could be something Python related:
For setting some fields, I have e.g. this code:
NetworkParameters = Qmi.MessageWdsStartNetworkInput()
NetworkParameters.set_ip_family_preference(Qmi.WdsIpFamily(IpFamily))
NetworkParameters.set_apn(APN)
# NetworkParameters.set_profile_index_3gpp(0) // 0 ??? -> see below
which prepares a struct NetworkParameters to be used with start_network.
I assumed I just can use:
mytestindex = NetworkParameters.get_profile_index_3gpp()
but this gives me the following exception:
Exception in module_change_cb callback: qmi_core_error_quark: Field
'Profile Index 3GPP' was not found in the message (5)
Mentioned field 'Profile Index 3GPP' looks curious, field name with
spaces inside?
When looking at
https://lazka.github.io/pgi-docs/Qmi-1.0/classes/MessageWdsStartNetworkInput.html#Qmi.MessageWdsStartNetworkInput.get_profile_index_3gpp
it says:
value_profile_index_3gpp a placeholder for the output #guint8, or |None|
<https://docs.python.org/3/library/constants.html#None> if not required.
What is this "None" for? When I call it, I want get it, otherwise I
don't call it? Do I need to give something as input parameter?
https://lazka.github.io/pgi-docs/Qmi-1.0/classes/MessageWdsStartNetworkInput.html#Qmi.MessageWdsStartNetworkInput.set_profile_index_3gpp
tells me I can use value_profile_index_3gpp as input parameter.
When e.g. using
# qmicli -p -d /dev/cdc-wdm0 --wds-get-profile-list=3gpp
Profile list retrieved:
[1] 3gpp -
APN: 'internet.telekom'
APN type: 'default'
PDP type: 'ipv4-or-ipv6'
PDP context number: '1'
Username: ''
Password: ''
Auth: 'none'
No roaming: 'no'
APN disabled: 'no'
#
I assume [1] corresponds to the above value_profile_index_3gpp. So
minimum is 1, because list starts with [1]?
But I tried value 0 is also accepted, no exception. Is value 0 something
special, not documented, perhaps not using something from profile list?
And when just using
NetworkParameters = Qmi.MessageWdsStartNetworkInput()
is then the value 0 the default value? Or 1? Or None? Undefined?
My aim would (still) be to give all parameters needed for a connection
completely in/via NetworkParameters,
so set APN, PDP Type, ... in NetworkParameters and just use them. No
side effects via profile list, which is perhaps updated by something else.
But e.g. the PDP context number cannot be set via libqmi? This is "cid"?
I was told cid=1 is used for an "initial attach".
But how to select if I want to use cid=1 or e.g. cid=2 or anything else.
And must my used parameters fit to the parameters used to build up
cid=1? And when conflicting: Call Failed?
( error: couldn't start network: QMI protocol error (14): 'CallFailed' )
Creating a connection is such a fundamental action. I could not
understand that it makes so much problem on my side...
I assume I am missing something important or using something which I
shall not use or in a different way.
Many many thanks for all your help!
Best regards,
Martin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20250303/11cd6fe1/attachment.htm>
More information about the libqmi-devel
mailing list