...and a log for this: Got deregistered
Sep 17 20:02:22 daemon.info: Aux: < \r\n+CREG: 0\r\n Sep 17 20:02:22 daemon.debug: ../git/src/network.c:ofono_netreg_status_notify() /ublox_0 status 0 tech -1 lac -1 ci -1 Sep 17 20:02:22 daemon.debug: ../git/src/network.c:current_operator_callback() 0x1bb4360, 0x1bb6ae0 Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:netreg_status_changed() 0 (unregistered) Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:gprs_netreg_update() attach: 0, driver_attached: 1 Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:netreg_status_changed() 0 (unregistered) Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:gprs_netreg_update() attach: 0, driver_attached: 0 Sep 17 20:02:22 daemon.info: Aux: > AT\r Sep 17 20:02:22 daemon.info: Aux: < \r\n+CIEV: 7,0\r\n Sep 17 20:02:22 daemon.info: Aux: < \r\nOK\r\n Sep 17 20:02:22 daemon.info: Aux: Finally woke up the modem Sep 17 20:02:22 daemon.info: Aux: > AT+CGATT=0\r Sep 17 20:02:22 daemon.info: Aux: < \r\n+CME ERROR: 148\r\n Detach failed - driver_attached is set to 1 again Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:gprs_attach_callback() /ublox_0 error = 1 Sep 17 20:02:22 daemon.info: Aux: > AT+CGREG?\r Sep 17 20:02:22 daemon.info: Aux: < \r\n+CGREG: 4\r\n Sep 17 20:02:22 daemon.info: Aux: < \r\n+UREG: 0\r\n Sep 17 20:02:22 daemon.info: Aux: < \r\n+CIEV: 9,1\r\n Sep 17 20:02:22 daemon.info: Aux: < \r\n+CGREG: 2,4\r\n Sep 17 20:02:22 daemon.info: Aux: < \r\nOK\r\n Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:registration_status_cb() /ublox_0 error 0 status 4 We read back the registration status, but does not set the driver_attached to 0 Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:ofono_gprs_status_notify() /ublox_0 status unknown (4) Sep 17 20:02:22 daemon.debug: ../git/src/gprs.c:gprs_set_attached_property() 0x1bb1500 1 -> 0 Sep 17 20:02:33 daemon.info: Aux: < \r\n+CREG: 0\r\n Sep 17 20:02:33 daemon.debug: ../git/src/network.c:ofono_netreg_status_notify() /ublox_0 status 0 tech -1 lac -1 ci -1 Sep 17 20:02:33 daemon.debug: ../git/src/network.c:current_operator_callback() 0x1bb4360, (nil) Sep 17 20:02:33 daemon.debug: ../git/src/gprs.c:netreg_status_changed() 0 (unregistered) Sep 17 20:02:33 daemon.debug: ../git/src/gprs.c:gprs_netreg_update() attach: 0, driver_attached: 1 We still believe the driver is attached, trying to detach again Sep 17 20:02:33 daemon.info: Aux: > AT\r Sep 17 20:02:33 daemon.info: Aux: < \r\nOK\r\n Sep 17 20:02:33 daemon.info: Aux: Finally woke up the modem Sep 17 20:02:33 daemon.info: Aux: > AT+CGATT=0\r Sep 17 20:05:33 daemon.info: Aux: < \r\n+CME ERROR: 2000\r\n Detach failed again, setting back driver_attached to 1 Sep 17 20:05:33 daemon.debug: ../git/src/gprs.c:gprs_attach_callback() /ublox_0 error = 1 Sep 17 20:05:33 daemon.info: Aux: > AT\r Sep 17 20:05:33 daemon.info: Aux: < \r\nOK\r\n Sep 17 20:05:33 daemon.info: Aux: Finally woke up the modem Sep 17 20:05:33 daemon.info: Aux: > AT+CGREG?\r Sep 17 20:05:33 daemon.info: Aux: < \r\n+CGREG: 2,4\r\n Sep 17 20:05:33 daemon.info: Aux: < \r\nOK\r\n Sep 17 20:05:33 daemon.debug: ../git/src/gprs.c:registration_status_cb() /ublox_0 error 0 status 4 We still do not set driver_attached to 0, even CREG says unknown status Sep 17 20:05:33 daemon.debug: ../git/src/gprs.c:ofono_gprs_status_notify() /ublox_0 status unknown (4) Sep 17 20:05:33 daemon.info: Aux: < \r\n+CTZE: +08,1,"19/09/17,22:02:36"\r\n Sep 17 20:05:33 daemon.info: Aux: < \r\n+CREG: 5,"0000","00000010",2\r\n Sep 17 20:05:33 daemon.debug: ../git/drivers/ubloxmodem/network-registration.c:ctze_notify() tz +08 dst 1 time 19/09/17,22:02:36 Sep 17 20:05:33 daemon.debug: ../git/src/network.c:ofono_netreg_time_notify() net time 2019-09-17 22:02:36 utcoff 7200 dst 1 Sep 17 20:05:33 daemon.debug: ../git/src/network.c:ofono_netreg_status_notify() /ublox_0 status 5 tech 2 lac 0 ci 16 Sep 17 20:05:33 daemon.debug: ../git/src/gprs.c:netreg_status_changed() 5 (roaming) Sep 17 20:05:33 daemon.debug: ../git/src/gprs.c:gprs_netreg_update() attach: 1, driver_attached: 1 We now got registered, but we believe the driver is attached, so no action is taken and the driver will not be attached... and the Attached D-Bus property will remain False. --Richard Den tis 17 sep. 2019 kl 23:48 skrev <[email protected]>: > From: Richard Röjfors <[email protected]> > > In the same way as we consider the driver attached when the > gprs status indicates we are registered, we should consider > it deattached when the status indicates unregistration. > > If we don't, then we would not always recover from the case > when deattaching the driver fails. We would just revert back > the driver attached status to true, and "ignore" if the status > indicates the opposite when we check the registration status > afterwards. > --- > src/gprs.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/src/gprs.c b/src/gprs.c > index de172979..c7b181f5 100644 > --- a/src/gprs.c > +++ b/src/gprs.c > @@ -2568,12 +2568,6 @@ void ofono_gprs_status_notify(struct ofono_gprs > *gprs, int status) > > gprs->status = status; > > - if (status != NETWORK_REGISTRATION_STATUS_REGISTERED && > - status != NETWORK_REGISTRATION_STATUS_ROAMING) { > - gprs_attached_update(gprs); > - return; > - } > - > /* > * If we're already taking action, e.g. attaching or detaching, > then > * ignore this notification for now, we will take appropriate > action > @@ -2582,6 +2576,12 @@ void ofono_gprs_status_notify(struct ofono_gprs > *gprs, int status) > if (gprs->flags & GPRS_FLAG_ATTACHING) > return; > > + if (status != NETWORK_REGISTRATION_STATUS_REGISTERED && > + status != NETWORK_REGISTRATION_STATUS_ROAMING) { > + ofono_gprs_detached_notify(gprs); > + return; > + } > + > /* We registered without being powered */ > if (gprs->powered == FALSE) > goto detach; > -- > 2.20.1 > >
_______________________________________________ ofono mailing list [email protected] https://lists.ofono.org/mailman/listinfo/ofono
