We are running into an issue with the 4G connection where the data connection cannot be established despite this working after (sometimes several) resets. When it fails we get the following errors:
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | myBo[1111]/bo T=main | bo.c OpenDataConnection() 56 | Starting Data Connection
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | avcDaemon[1164]/avcDaemon T=main | avcClient.c StartBearer() 969 | Start Bearer
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | avcDaemon[1164]/avcDaemon T=main | avcClient.c avcClient_Connect() 1175 | Starting retry timer of 15 min at index 0
Aug 8 23:57:43 swi-mdm9x28-wp user.warn Legato: -WRN- | avcDaemon[1164]/framework T=main | safeRef.c le_ref_CreateRef() 547 | Safe reference map maximum exceeded for refFdMonitors, new size 74
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcsDaemon T=main | dcsTechRank.c dcsTechRank_SelectDataChannel() 220 | Selected channel name 1
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcs.c le_dcs_AddEventHandler() 635 | Adding channel handler for channel 1 of technology cellular
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcs.c le_dcs_AddEventHandler() 675 | Event handler with reference 0x10fd and event ID 0xb7d added
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcs.c le_dcs_Start() 421 | Starting channel 1 of technology cellular by app session with reference 0x7f5aa928
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcs.c le_dcs_Start() 478 | Initiating technology to start channel 1 for app session 0x7f5aa928, request reference 0x33b
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcsDaemon T=main | dcsServer.c TryStartTechSession() 1105 | Successfully initiated data channel 1 of technology 1
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcsTech.c le_dcsTech_Start() 338 | Request to start channel 1 of technology cellular
Aug 8 23:57:43 swi-mdm9x28-wp user.err Legato: =ERR= | dcsDaemon[1184]/dcs T=main | dcsTech.c le_dcsTech_Start() 361 | Failed to start channel 1; error: -21
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcsDaemon T=main | dcsServer.c ChannelEventHandler() 780 | Received for channel reference 0x169 event Down
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcs.c le_dcs_Stop() 538 | Stopping channel 1 of technology cellular
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcs.c le_dcs_Stop() 563 | Channel 1 requested to be stopped
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcsDaemon T=main | dcsServer.c TryStopTechSession() 1157 | Successfully initiated stopping active data connection 1 of technology 1
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcsDaemon T=main | dcsServer.c UpdateTechnologyStatus() 1040 | Technology retry to connect will happen after 1 sec
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | dcsDaemon[1184]/dcs T=main | dcsTech.c le_dcsTech_Stop() 399 | Request to stop channel 1 of technology cellular
Aug 8 23:57:43 swi-mdm9x28-wp user.err Legato: =ERR= | modemDaemon[1213]/swiQmi T=main | swiQmi.c swiQmi_CheckResponse() 799 | Sending QMI_WDS_GET_PKT_STATISTICS_REQ_V01 failed: rc=0 (), resp.result=1.[0x01], resp.error=70.[0x46]
Aug 8 23:57:43 swi-mdm9x28-wp user.err Legato: =ERR= | modemDaemon[1213]/le_pa T=main | pa_mdc_qmi.c pa_mdc_StopSession() 3378 | Bad input parameter
Aug 8 23:57:43 swi-mdm9x28-wp user.warn Legato: -WRN- | dcsDaemon[1184]/dcsCellular T=main | dcsCellular.c le_dcsCellular_Stop() 1156 | Failed to stop cellular connection 1; error: -15
Aug 8 23:57:43 swi-mdm9x28-wp user.warn Legato: -WRN- | dcsDaemon[1184]/dcs T=main | dcsTech.c le_dcsTech_Stop() 422 | Failed to stop channel 1; error: -15
Aug 8 23:57:43 swi-mdm9x28-wp user.warn Legato: -WRN- | avcDaemon[1164]/avcDaemon T=main | avcClient.c ConnectionStateHandler() 474 | Disconnected from data connection service, current state 0
Aug 8 23:57:43 swi-mdm9x28-wp user.info Legato: INFO | myBo[1111]/bo T=main | bo.c ConnectionStateHandler() 506 | Interface connection state: 0. on technology 2
Is there a way to see why this fails (and resolve it besides continuous resetting and hoping that fixes it). For as far as we can see:
- Sim is in READY state
- Chip is connected to HOME network
- Sim can do a data transfer (as it has uploaded this logfile after connecting after a full reset)
We use the airvantage service to connect until the module has connected to airvantage at least once, after that we use a regular le_data_Request for subsequent attempts, to not get into a reconnect loop if the device is not registered to Airvantage.