Bug 100374 - telit: error parsing +CSIM responses
Summary: telit: error parsing +CSIM responses
Status: RESOLVED FIXED
Alias: None
Product: ModemManager
Classification: Unclassified
Component: plugins (show other bugs)
Version: git master
Hardware: Other All
: medium normal
Assignee: ModemManager bug user
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-03-24 10:32 UTC by Aleksander Morgado
Modified: 2017-04-19 08:46 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Aleksander Morgado 2017-03-24 10:32:07 UTC
The CSIM response parser fails to parse the '+CSIM: 4,"6A88"' string as response, see full logs below.


ModemManager[10335]: <debug> [1490351381.613520] [mm-iface-modem.c:3092] update_lock_info_context_step(): SIM is ready, running after SIM unlock step...
ModemManager[10335]: <debug> [1490351382.487547] [mm-port-serial.c:1220] mm_port_serial_open(): (ttyUSB0) device open count is 2 (open)
ModemManager[10335]: <debug> [1490351382.487651] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): --> 'AT+CSIM=1<CR>'
ModemManager[10335]: <debug> [1490351382.672725] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>OK<CR>'
ModemManager[10335]: <debug> [1490351382.673757] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<LF>'
ModemManager[10335]: <debug> [1490351382.673848] [mm-port-serial.c:1220] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[10335]: <debug> [1490351382.673894] [mm-port-serial.c:1277] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[10335]: <debug> [1490351382.673936] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): --> 'AT+CSIM=10,0020000100<CR>'
ModemManager[10335]: <debug> [1490351382.887127] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR>'
ModemManager[10335]: <debug> [1490351382.888121] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<LF>'
ModemManager[10335]: <debug> [1490351382.897120] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '+'
ModemManager[10335]: <debug> [1490351382.898085] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- 'CSIM: '
ModemManager[10335]: <debug> [1490351382.899102] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '4,"63'
ModemManager[10335]: <debug> [1490351382.900086] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- 'C3"'
ModemManager[10335]: <debug> [1490351382.907090] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR>'
ModemManager[10335]: <debug> [1490351382.908089] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<LF>'
ModemManager[10335]: <debug> [1490351382.917111] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR>'
ModemManager[10335]: <debug> [1490351382.918084] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<LF>OK<CR><LF>'
ModemManager[10335]: <debug> [1490351382.918197] [telit/mm-broadband-modem-telit.c:610] csim_query_ready(): PIN unlock retries left: 3
ModemManager[10335]: <debug> [1490351382.918240] [mm-port-serial.c:1220] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[10335]: <debug> [1490351382.918277] [mm-port-serial.c:1277] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[10335]: <debug> [1490351382.918312] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): --> 'AT+CSIM=10,002C000100<CR>'
ModemManager[10335]: <debug> [1490351383.152409] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.162388] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '+C'
ModemManager[10335]: <debug> [1490351383.163405] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- 'SIM: 4'
ModemManager[10335]: <debug> [1490351383.164356] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- ',"63CA'
ModemManager[10335]: <debug> [1490351383.165380] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '"'
ModemManager[10335]: <debug> [1490351383.172367] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.182319] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.183351] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- 'OK<CR><LF>'
ModemManager[10335]: <debug> [1490351383.183470] [telit/mm-broadband-modem-telit.c:614] csim_query_ready(): PUK unlock retries left: 10
ModemManager[10335]: <debug> [1490351383.183513] [mm-port-serial.c:1220] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[10335]: <debug> [1490351383.183550] [mm-port-serial.c:1277] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[10335]: <debug> [1490351383.183587] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): --> 'AT+CSIM=10,0020008100<CR>'
ModemManager[10335]: <debug> [1490351383.387450] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.397452] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '+CSI'
ModemManager[10335]: <debug> [1490351383.398450] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- 'M: 4,"'
ModemManager[10335]: <debug> [1490351383.399471] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '6A88"'
ModemManager[10335]: <debug> [1490351383.407442] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.417442] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>OK'
ModemManager[10335]: <debug> [1490351383.418417] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <warn>  [1490351383.418532] [telit/mm-broadband-modem-telit.c:601] csim_query_ready(): Parse error in step 4: Could not parse reponse '+CSIM: 4,"6A88"'.
ModemManager[10335]: <debug> [1490351383.418576] [mm-port-serial.c:1220] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[10335]: <debug> [1490351383.418628] [mm-port-serial.c:1277] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[10335]: <debug> [1490351383.418667] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): --> 'AT+CSIM=10,002C008100<CR>'
ModemManager[10335]: <debug> [1490351383.702859] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.712854] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '+CSIM'
ModemManager[10335]: <debug> [1490351383.713848] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- ': 4,"6'
ModemManager[10335]: <debug> [1490351383.714849] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- 'A88"'
ModemManager[10335]: <debug> [1490351383.722840] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>'
ModemManager[10335]: <debug> [1490351383.732811] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>OK<CR>'
ModemManager[10335]: <debug> [1490351383.733780] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<LF>'
ModemManager[10335]: <warn>  [1490351383.733889] [telit/mm-broadband-modem-telit.c:601] csim_query_ready(): Parse error in step 5: Could not parse reponse '+CSIM: 4,"6A88"'.
ModemManager[10335]: <debug> [1490351383.733932] [mm-port-serial.c:1220] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[10335]: <debug> [1490351383.733969] [mm-port-serial.c:1277] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[10335]: <debug> [1490351383.734007] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): --> 'AT+CSIM=0<CR>'
ModemManager[10335]: <debug> [1490351383.807818] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<CR><LF>OK<CR>'
ModemManager[10335]: <debug> [1490351383.808824] [mm-port-serial-at.c:459] debug_log(): (ttyUSB0): <-- '<LF>'
Comment 1 Carlo Lobrano 2017-03-24 13:47:14 UTC
Hi Aleksander,

I've seen this error when SIM is not ready (#QSS: 3 yet to come), but didn't have time to work on it.

Normally, the expected reply is 6C7X, where X is an hexadecimal representing the remaining retries.

I looked better at 3GPP specification, asking some help, and 6A88 is actually an error code representing "Reference data not found", which fit well with the test conditions (again, SIM not ready).

I would propose a patch considering 6A88 as well in csim_parser, returning a better defined error/warning message.

What do you think?
Comment 2 Aleksander Morgado 2017-04-19 08:46:55 UTC
Fixed in git master, 44daf791bbf0c251882f723e9fcc9c89606d69fc


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.