Hey Amol, > > We are getting following error when trying to send pin to the SIM card. The > problem is not observed in MM 1.20.4. However, please note that the SIM card > does unlocks after the below command even though error is reported. > > # mmcli -i 0 --pin=1234 > error: couldn't send PIN code to the SIM: > 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Failed: Couldn't get > interface skeleton' > > Now, after looking through the code, following change is causing this issue. > This change was not present in 1.20.4 > ---- > mm-broadband-modem-mbim.c: > if ((self->priv->enabled_cache.last_ready_state != > MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED && > ready_state == MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED) || > (self->priv->enabled_cache.last_ready_state == > MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED && > ready_state != MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED)) { > mm_obj_dbg (self, "Lock state change detected"); > active_sim_event = TRUE; > } > > self->priv->enabled_cache.last_ready_state = ready_state; > > if (active_sim_event) { > mm_iface_modem_process_sim_event (MM_IFACE_MODEM (self)); > } > ---- > What is happening is when SIM PIN lock state changes then > mm_iface_modem_process_sim_event () is called which eventually calls > mm_base_modem_set_reprobe(). The reprobe, "unexports" the current modem > instance (modem 0) and recreates a new modem instance (1). As a result, the > above mmcli command is reporting error. I'm not sure why this should happen > for SIM Lock state change.
I think this has been fixed in MM git main branch; is there any chance you could test with that? See https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/commit/19fd9c634b8f2876694d18a77a3b686a0c08bf34 -- Aleksander