EM061K-GL not updating, failed to wait for attach replug

Bonjour,

After many tries, I can’t get the embedded EM061K-GL wwam modem working or updating on a brand new Lenovo Thinkpad X13 gen 5. Tested with Ubuntu or Fedora.

First issues occured when trying to use the modem : despite following the FCC unlock guide by Lenovo, having the part listed in lsusb and displayed on ModemManager, every attempts at connecting it end with “Cannot power-up: software radio switch is OFF”.

Then I noticed the modem offers an update with fwupdmgr. Maybe a chance…
So I did the usual :

fwupdmgr refresh --force
fwupdmgr get-updates
fwupdmgr update

Results as follow :

╔══════════════════════════════════════════════════════════════════════════════╗
║ Upgrade EM061K-GL from EM061KGLAAR01A02M2G_01.013 to                         ║
║ EM061KGLAAR01A02M2G_01.013.01.013?                                           ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ Firmware release EM061KGLAAR01A02M2G_01.013.01.013 packaged for LVFS.        ║
║                                                                              ║
║ • Performance improvements                                                   ║
║ • Stability improvements                                                     ║
║                                                                              ║
║ EM061K-GL and all connected devices may not be usable while updating.        ║
╚══════════════════════════════════════════════════════════════════════════════╝
Perform operation? [Y|n]:
Restarting device…       [*************************************  ] Less than one minute remaining…
failed to wait for attach replug: device 02861494e3c701c896953cd442bd2f1ad867e1eb did not come back

The wait lasted for way more than one minute.

After trying again right away (fwupdmgr refresh --force, fwupdmgr get-updates), the modem is listed as “Devices that were not updated correctly”.
After reboot, previous alert varnished, I can retry the update but with same result as above.

After a few tries, the error changed to :

Waiting…                 [***************************************] Less than one minute remaining…
device version not updated on success, EM061KGLAAR01A02M2G_01.013.01.013 != EM061KGLAAR01A02M2G_01.013

Barely no help found about such “failed to wait for attach replug” error.
I have no clue about the actual issue.

It’s quite disappointing since Lenovo wrote a nice guide dedicated to Linux and say the modem model is fully compatible with X13 gen 5 laptop.

Thanks for your help.

Hi Michael,

Found this whilst searching for EM061KGLAAR01A02M2G_01.013.01.013, as I was having some issues myself upgrading this firmware, on my new ThinkPad T14 Gen 5 on Ubuntu & Fedora.

I’m still tinkering with the firmware upgrade failure, however I do have WWAN working prior to that. My WWAN was DOA too of course with the FCC unlock, however can see you have followed that path without much luck. You noted Lenovo’s guidance on performing that unlock - of which I’m not familiar. However I also have the EM061K-G in my unit and made the below script to enable it, perhaps you could try it and then advise on the result:

First get your device:

sudo ls /dev/cdc*

Output (for me) is /dev/cdc-wdm0. Then query this device, noting the RadioState which if FCC locked should output RadioState = ‘fcc-locked’.

sudo mbimcli -p -d /dev/cdc-wdm0 -v --quectel-query-radio-state
# Unlock modem
sudo mbimcli -p -d /dev/cdc-wdm0 -v --quectel-set-radio-state=on

# Enable
sudo mmcli --modem 0 --enable

My WWAN is working as expected afterwards (you should see your carrier update under your Mobile Network settings). Give it a try and perhaps share your output if failing.

1 Like

Should have probably added, prior to these, ensure ModemManager is installed & enabled.

sudo systcemctl start ModemManager
sudo systemctl enable ModemManager.service
sudo systemctl status ModemManager.service

Thanks for your post. Hope it will help other users in the future.
I achieved getting everything working yesterday with a slight difference.

The firmware update
No improvement but I guess the error “device version not updated on success, EM061KGLAAR01A02M2G_01.013.01.013 != EM061KGLAAR01A02M2G_01.013” is mostly a warning because the installed and already updated firmware version is 01.013 while the maker ships 01.013.01.013. The same but with a different name.
I wasn’t able to tell about this since the modem wasn’t working before the update.

The connection
Lenovo’s X13 gen 5 & Linux guide isn’t fully right. Or maybe it is…
The issue I faced related to the SIM slot.
mmcli -m 0
displayed the active status but didn’t list the SIM lock details.
I finally got that ‘sim slot paths’ parameter has two paths (??) and the active slot wasn’t the one with the SIM card. Had to switch with
mmcli -m 0 --set-primary-sim-slot=__
And then it was ready to connect !

Luckily I had another X13 gen 4 with another Quectel modem to compare the mmcli status and found out about the missing SIM lock and the difference about the active slot.
No word about this in Lenovo guide. No clue about the computer picking the wrong slot.
I didn’t face this on the gen 4.

Strangely I wasn’t able to get it working on Kubuntu. Nor on Ubuntu. Until I switched the slot. Then I installed my Kubuntu again and it seems it picked the right SIM slot with no help ! But I can’t believe something done on Ubuntu was kept in memory for Kubuntu. Very strange.

A few more words.
It works without the need for the lenovo-wwan-unlock tool. Not installed.
My simple steps were as follow :

# Getting the modem id. Here 2c7c:6008 for Quectel EM061K-GL on my computer.
lsusb

# Creating the 2c7c:6008 id and linking it to the 2c7c 'family' (?) in the available unlocks
ln -s 2c7c /usr/share/ModemManager/fcc-unlock.available.d/2c7c:6008
# Linking the newly added available unlock to the active unlock
ln -sft /etc/ModemManager/fcc-unlock.d/ /usr/share/ModemManager/fcc-unlock.available.d/2c7c:6008

service ModemManager restart

No script. It seems it’s the usual way.