<div dir="ltr"><div class="gmail_default" style="font-family:monospace">Hi,</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">I'm implementing ecm support in telit plugin (baseline: latest main).</div><div class="gmail_default" style="font-family:monospace">Somehow modem goes in connect-disconnect loop with a few seconds in between.</div><div class="gmail_default" style="font-family:monospace"></div><div class="gmail_default" style="font-family:monospace">I'm trying to identify a reason for disconnect and related issues in MM debug log.<br></div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">Q1. Is a negative value in <span style="font-family:monospace"><span class="gmail_default">profile_id</span></span> <span style="font-family:monospace"><span class="gmail_default"></span>(and eventually in index_field_value_str<span class="gmail_default">) a legal one?</span></span></div><span style="font-family:monospace"><span class="gmail_default" style="font-family:monospace">Does</span></span><span style="font-family:monospace"><span class="gmail_default"> a negative value mean uninitialized data in profile context? Coz CGACT output has always positive ctx index:</span></span><br><span style="font-family:monospace"><span class="gmail_default"></span></span><div class="gmail_default" style="font-family:monospace"><div><span style="font-family:monospace"><span class="gmail_default"></span></span></div><div class="gmail_default" style="font-family:monospace">AT+CGACT?<br>+CGACT: 1,1<br>+CGACT: 3,0</div><div class="gmail_default" style="font-family:monospace"><br></div></div><div class="gmail_default" style="font-family:monospace">ModemManager[]: <debug> [1661944714.481355] [modem0] set profile state (3/8): select profile (best)<br>ModemManager[]: <debug> [1661944714.481370] [modem0] <b>found exact context at profile 1</b><br>ModemManager[]: <debug> [1661944714.481375] [modem0] <b>reusing profile '1'</b><br>ModemManager[]: <debug> [1661944714.481379] [modem0] set profile state (4/8): check activated profile<br>ModemManager[]: <debug> [1661944714.481390] [modem0] checking if profile with id '1' is already activated...<br>ModemManager[]: <debug> [1661944714.481402] [ttyUSB1/at] device open count is 4 (open)<br>ModemManager[]: <debug> [1661944714.481418] [ttyUSB1/at] device open count is 3 (close)<br>ModemManager[]: <debug> [1661944714.481436] [ttyUSB1/at] --> 'AT+CGACT?<CR>'<br>ModemManager[]: <debug> [1661944714.518369] [ttyUSB1/at] <-- '<CR><LF>+CGACT: 1,1<CR><LF>+CGACT: 3,0<CR><LF><CR><LF>OK<CR><LF>'<br>ModemManager[]: <debug> [1661944714.518463] [modem0] <b>profile '-1' is activated</b><br>ModemManager[]: <debug> [1661944714.518479] [modem0] set profile state (5/8): deactivate profile<br>ModemManager[]: <debug> [1661944714.518488] [modem0] <b>deactivating profile with id '1'</b>...<br>ModemManager[]: <debug> [1661944714.518502] [ttyUSB1/at] device open count is 4 (open)<br>ModemManager[]: <debug> [1661944714.518519] [ttyUSB1/at] device open count is 3 (close)<br>ModemManager[]: <debug> [1661944714.518540] [ttyUSB1/at] --> 'AT+CGACT=0,1<CR>'<br>ModemManager[]: <debug> [1661944714.561517] [ttyUSB1/at] <-- '<CR><LF>OK<CR><LF>'<br>ModemManager[]: <debug> [1661944714.561599] [modem0] <b>deactivated profile '-1'</b></div><div class="gmail_default" style="font-family:monospace"><b></b></div><div class="gmail_default" style="font-family:monospace">ModemManager[]: <debug> [1661944714.561610] [modem0] set profile state (6/8): profile already stored<br>ModemManager[]: <debug> [1661944714.561616] [modem0] set profile state (8/8): all done<br>ModemManager[]: <debug> [1661944714.561639] [modem0/bearer0] (shared-telit) ECM: selecting NW interface as a data port<br>ModemManager[]: <debug> [1661944714.561664] [ttyUSB1/at] device open count is 2 (close)<br>ModemManager[]: <debug> [1661944714.561700] <b>[modem0/wwan0/net] port now connected</b><br>ModemManager[]: <debug> [1661944714.561707] <b>[modem0/bearer0] connected</b><br>ModemManager[]: <info>  [1661944714.561776] [modem0] state changed (connecting -> connected)<br>ModemManager[]: <info>  [1661944714.562088] [modem0] simple connect state (10/10): all done<br>ModemManager[]: <debug> [1661944730.307060] [modem0] <b>user request to disconnect modem</b> (all bearers)</div><div class="gmail_default" style="font-family:monospace"><br></div><br><div class="gmail_default" style="font-family:monospace">Q2: Since no mmcli or any other human input was used, what the phrase "user request to disconnect modem<b>"</b> really mean?<b><br></b></div><div class="gmail_default" style="font-family:monospace">Could internal MM logic be considered as "user input"?<b><br></b></div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">Q3. Will MM always tear down existing pdp context instead of reusing it? (even if all parameters are the same)</div><div class="gmail_default" style="font-family:monospace">Q4: If answer to Q3 is yes, is there a way to force MM always reusing existing pdp context? (at least as a private patch)</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">Regards,</div><div class="gmail_default" style="font-family:monospace">Alexey<br></div><div class="gmail_default" style="font-family:monospace"><br></div></div>