Blog
X1 Carbon 9 WWAN on Linux
I just set up WWAN on my X1 carbon. It was a little tricky, and I hit some errors I haven’t found documented elsewhere on the net.
I didn’t attempt to activate the SIM on linux. It’s probably possible, but I wasn’t familiar with the tools required, and din’t want to be in the AT&T store any longer than I had to be. So, I booted into Windows before heading over.
Install Software
I started off following the arch wiki guide on the X1C9
https://wiki.archlinux.org/title/Lenovo_ThinkPad_X1_Carbon_(Gen_9)
Supplemented with
https://wiki.archlinux.org/title/Mobile_broadband_modem
- Updated my kernel to the required 5.13
pacman -S modemmanager
- Intel VT-D was already enabled in my bios, the option was in the bios menu under “Secury > Virtualization” per this lenovo support article
First connection attempts
First start modemmanager
sudo systemctl start ModemManager
List available modems with
$ mmcli -M ⏎
/org/freedesktop/ModemManager1/Modem/1 [foxconn] MBIM [105B:E0AB]
Modem details
$ mmcli -m 1 ⏎
-----------------------------------
General | path: /org/freedesktop/ModemManager1/Modem/1
| device id: [redacted]
-----------------------------------
Hardware | manufacturer: foxconn
| model: MBIM [105B:E0AB]
| firmware revision: T99W175.F0.0.0.5.7.AT.008
| 077
| carrier config: ATT
| carrier config revision: 0A000308
| h/w revision: Qualcomm Snapdragon X55 5G
...
Then attempt to enable the modem
mmcli -m 1 -e --verbose
[04 Sep 2021, 23:05:19] [Debug] ModemManager process found at ':1.99'
[04 Sep 2021, 23:05:19] [Debug] Assuming '1' is the modem index
[04 Sep 2021, 23:05:19] [Debug] Modem found at '/org/freedesktop/ModemManager1/Modem/1'
[04 Sep 2021, 23:05:19] [Debug] Synchronously enabling modem...
error: couldn't enable the modem: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Retry: Invalid transition'
This was the main bit of trouble I ran into in this process. I eventually found tools to debug the connection:
First shut down ModemManager
sudo systemctl stop ModemManager
sudo systemctl disable ModemManager
Then run it manually with –debug
sudo ModemManager --debug
Then re-attempt to enable the modem in a new terminal
mmcli -m 1 -e --verbose
After running that mmcli command, I found in the output of ModemManager --debug
>>>>>> Fields:
>>>>>> HwRadioState = 'off'
>>>>>> SwRadioState = 'on'
ModemManager[9864]: <warn> [1630811585.620885] [modem0] Cannot power-up: hardware radio switch is OFF
ModemManager[9864]: <debug> [1630811585.620902] [modem0] couldn't update power state: Invalid transition
Googling for “Cannot power-up: hardware radio switch is OFF” lead me to:
https://ex0ns.me/lenovo-x1c6-em7455.html
Which mentioned trying to send some AT commands to the modem. That didn’t end up being helpful, but if you would like to mess with AT commands, I was able to do so with socat
to the /dev/wwan0p3AT device.
sudo socat - /dev/wwan0p3AT,crnl ⏎
AT
OK
The blog post mentions an AT command that can be used to disable the hardware switch. That AT command didn’t work for me with this modem.
However, the article also mentions:
as this is a non-standard WWAN card, the firmware fails to detect its features and do not export it in RFKILL
It appears this modem is standard, and is exported to rfkill.
$ rfkill ⏎
ID TYPE DEVICE SOFT HARD
0 bluetooth tpacpi_bluetooth_sw blocked unblocked
1 wwan tpacpi_wwan_sw blocked unblocked
3 wlan phy0 unblocked unblocked
Solution
Enable wwan with rfkill:
rfkill unblock wwan
Then try enabling again:
$ mmcli -m 0 -e --verbose
[04 Sep 2021, 23:23:39] [Debug] ModemManager process found at ':1.145'
[04 Sep 2021, 23:23:39] [Debug] Assuming '0' is the modem index
[04 Sep 2021, 23:23:39] [Debug] Modem found at '/org/freedesktop/ModemManager1/Modem/0'
[04 Sep 2021, 23:23:39] [Debug] Synchronously enabling modem...
successfully enabled the modem
Then try connecting:
$ mmcli -m 0 --simple-connect="apn=broadband"
successfully connected the modem
At this point, you can set up a new mobile broadband connection in NetworkManager.
Summoning Mr. Bronsleig
I found this story on a creepypasta forum a few weeks ago.
This is a game only for the bravest people This is a game my friend told me about that she learned from her brother. Do not play this game if you have allergies to dogs. If you don’t want what happened to her brother to happen to you, don’t play this game at all.
Go to your bathroom. Don’t turn on the light. Use your towel to dry out your sink really well. Try to use a sink that has been off for a long time, and one as low as possible. If you have a sink in your basement that’s the best, but you can use one upstairs if it’s your first time.
Close the bathroom door, but don’t lock it. Take your flashlight and shine it in down the sink. Take out the drain plug so your light can go as deep as it can. Blink your light three times on, and one time off, then then one time on, and three times off. Do it again, three on, one off, one on, three off.
If it worked you should feel air coming from the drain. If it’s warm air, it’s somebody else. Turn the light on and leave and don’t open the door again until morning. If you try it again and you get warm air, try a different sink next time.
When he’s close, the air should stop. Listen closely. He is going to tell you something you need to know. DO NOT TELL ANYONE what she tells you or it won’t come true. If you feel warm air somebody else is coming. Sometimes he is wrong, so try it again next time and see if he says the same thing. If you try it too many times he will try to trick you, so don’t do it more than once a week.
It reminded me of the old Bavarian legend of the Bronsweig, an ancient creature that lives deep underground, and was said to lure villagers down wells with it’s faint advice.
:
Twilight Zone Fortunes
We came up with a new fortune cookie suffix, "...in the twilight zone"
- A dream you have will come true, in the twilight zone
- You will marry your lover, in the twilight zone
- Courtesy is contageous in the twilight zone
- A stranger is a friend you have not spoken to yet, in the twilight zone
- A very attractive person has a message for you, in the twilight zone
- Do not follow where the path may lead. Go where there is no path...and leave a trail, in the twilight zone
Bike Crash
Yesterday, a car hit me as I crossed the street on my bike.
I'm flying down the road on track to beat my previous best commute time as I approach an intersection. At this intersection I need to turn left from a small street on to a much larger one, so it can take a little while for the light to change. Instead of waiting in line for the light, I decide I'll cross my small street and ride the sidewalk on the inside of the turn. However, after I cross to the sidewalk, the left turn signal comes on and the line begins to move. I would prefer to ride on the right-hand sidewalk, so I decide to cross the large street at the intersection after all.
Again, I've got a record to beat, so I don't want to slow down any more than I have to. The cross traffic has a red light, and I have it all timed so that I'll cross the intersection just after the last left-turner is out of my way as I dart in to the street.
So that's when the car hits me.
There's a large building that blocks my view of the cross traffic until the last moment, and it was hiding a car turning right on red.
I slam my brakes, and come to a stop with my front wheel in his path. He slams on his brakes, and taps my front fork before stopping.
I don't think his car was even scratched, but it was pretty embarassing.