LTE With OpenBSD on a ThinkPad X280
A neat feature of the ThinkPad X280 is the embedded LTE modem. The modem is supported on OpenBSD out-of-the-box. To make use of it I ordered a SIM card from my local provider sipgate and put it into the SIM tray on the back of the laptop base.
OpenBSD has recognized the modem device right away:
umb0 at uhub0 port 6 configuration 1 interface 0 "FIBOCOM L830-EB-00" rev 2.00/3.33 addr 6
umodem0 at uhub0 port 6 configuration 1 interface 2 "FIBOCOM L830-EB-00" rev 2.00/3.33 addr 6
umodem0: data interface 3, has no CM over data, has break
umodem0: status change notification available
The device is controlled via ifconfig
and named umb0
- checkout man umb
for infos.
% ifconfig umb0
umb0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
index 8 priority 6 llprio 3
roaming disabled registration not registered
state open cell-class none
SIM not initialized PIN valid (3 attempts left)
device L830-EB v1.0.1 IMEI xxxxxxxxx firmware 18300.1002.00.01.01.25
status: down
To initialize the SIM I provided the APN and the PIN:
% doas ifconfig umb0 apn sipgate
% doas ifconfig umb0 pin 0000
% ifconfig umb0
umb0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
index 8 priority 6 llprio 3
roaming disabled registration not registered
state open cell-class none
SIM not initialized PIN valid (3 attempts left)
device L830-EB v1.0.1 IMEI xxxxxxxxx firmware 18300.1002.00.01.01.25
APN sipgate
status: down
I tried connecting, but somehow the status didn’t change:
% ifconfig umb0 up
% ifconfig umb0
umb0: flags=8811<UP,POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
index 8 priority 6 llprio 3
roaming disabled registration roaming network
state attached cell-class LTE rssi -107dBm speed 47.7Mbps up 286Mbps down
SIM not initialized PIN valid (3 attempts left)
device L830-EB v1.0.1 IMEI xxxxxxxxx firmware 18300.1002.00.01.01.25
APN sipgate provider sipgate provider-id 26203
status: down
Turns out I needed to enable roaming (probably because of my physical location) in order to connect to the LTE network:
% doas ifconfig umb0 down
% doas ifconfig umb0 roaming
% ifconfig umb0
umb0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
index 8 priority 6 llprio 3
roaming enabled registration not registered
state open cell-class none speed 47.7Mbps up 286Mbps down
SIM not initialized PIN valid (3 attempts left)
device L830-EB v1.0.1 IMEI xxxxxxxxx firmware 18300.1002.00.01.01.25
APN sipgate
status: down
With the next connection attempt it suceeded and the X280 can now go online, whenever I want it to, without tethering with my smartphone.
% doas ifconfig umb0 up
% ifconfig umb0
umb0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1500
index 8 priority 6 llprio 3
roaming enabled registration roaming network
state up cell-class LTE rssi -97dBm speed 47.7Mbps up 286Mbps down
SIM initialized PIN valid (3 attempts left)
subscriber-id xxxxxxxxx ICC-id xxxxxxxxx
device L830-EB v1.0.1 IMEI xxxxxxxxx firmware 18300.1002.00.01.01.25
APN sipgate provider sipgate provider-id 26203
dns 212.9.60.126 217.116.116.254
groups: egress
status: active
inet 10.24.128.49 --> 10.24.128.1 netmask 0xffff0000
Some quick tests:
% curl ifconfig.co
93.224.xxx.xxx
% ping -c1 openbsd.org
PING openbsd.org (199.185.178.80): 56 data bytes
64 bytes from 199.185.178.80: icmp_seq=0 ttl=245 time=159.958 ms
--- openbsd.org ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/std-dev = 159.958/159.958/159.958/0.000 ms
For future usage, I defined two zsh
aliases in my ~/.zshrc
:
alias lteup="doas ifconfig umb0 apn sipgate pin 0000 roaming up"
alias ltedown="doas ifconfig umb0 down"
In essence, I was quite suprised how easy it is to connect to LTE with my X280 ThinkPad on OpenBSD - no driver issues, no ppp configuration, just plain ifconfig up & down
. Nice.