Open tuxor1337 opened 6 months ago
Very well, indeed. So, you are in essence saying the xmm7360
driver is no longer needed. Just the RPC interface, since the firmware from Fibocom does not support MM/NM preferred MBIM. We have been here already, but good summary, thanks.
Update: Based on the Python scripts in this repo, I created a merge request to add support for the XMM7360 in RPC mode to ModemManager: !1200 If anyone here has capabilities to test my implementation on their setup, please do and report about your experience in the MR. Thanks in advance!
I tested it and commented in the MR. Works very well. Thank you very much, @tuxor1337
Thank you very much Thomas @tuxor1337 !
Following your tutorial for Fedora 40 I was able to connect to mobile broadband for the first time on Fedora's latest kernel 6.10.4. The only thing I needed to add is to sign the module for compatibility with my secure boot settings:
sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha512 /root/mok.priv /root/mok.der xmm7360.ko
I have also tried to unlock my SIM with AT (AT+CPIN="
Next I will try to run kernel based using the iosm
module through /dev/wwan0xmmrpc0
. Did I get you right, that I do no longer need the module I have been struggeling to compile and sign?
If ModemManager would support this driver, I would be completely glad. I am unsure, whether I dare to run on a patched NetworkManager, as I am concerned, that Fedora might overwrite changes or becomes incompatible with this patched version over time...
Any additional hints are warmly welcome!
Thank again! Thomas
I can confirm that this also works on the Lenovo Ideapad Duet 3 (10IGL5) with Fedora 40.
The latest news is that the ModemManager integration is on its way, and it will work fine with the iosm kernel module in mainline: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1200
First of all, thanks for your work to all contributors in this repository!
I just wanted to report how I have been able to create an LTE internet connection on my Fedora 40 machine based on the code and knowledge stored in this repository (and pull requests).
My exact setup
20QDS06E00
)6.8.8-300.fc40.x86_64
02:00.0 Wireless controller [0d40]: Intel Corporation XMM7360 LTE Advanced Modem [8086:7360] (rev 01)
18500.5001.05.02.24.09
/etc/modprobe.d/00-iosm-blacklist.conf
(a single line:blacklist iosm
)PRs that I applied
make
will fail with the error message quoted in the PR.General setup
Setting DNS name servers
In the output of the last command above, I found a line listing DNS entries, and I added them to
systemd-resolved
using the following command line (replace the IP addresses with your outputs):Note that appending the DNS name servers to the
/etc/resolv.conf
as implemented in theopen_xdatachannel.py
script did not work for me!Register device with NetworkManager
These steps will establish a working internet connection on my setup. However, the connection is not registered with NetworkManager. To achieve this, uncomment the line
dbus=True
in yourxmm7360.ini
and rerun theopen_xdatachannel.py
script. After that, the output ofnmcli
confirms that a new connection has been established, like this:Note that the connection is shown as "unknown" type. It does not show up in the NetworkManager GUI (using GNOME). The NetworkManager status icon in the GNOME panel will show the icon that is also used for a wired LAN connection. It would be interesting to have a way to have this show up as a mobile broadband connection. However, I guess that this would be of no use as long as it is not managed with ModemManager.
Remaining steps (not Fedora-specific)
Following these steps, we can actually use this WWAN modem. However, it would be very much desirable to have the mainline Linux kernel and ModemManager pick up this work to seemlessly integrate the WWAN connection into the NetworkManager GUI. Here is my understanding why we are not there yet:
open_xdatachannel.py
script actually works with the mainline kernel'siosm
module because the script can pick up the/dev/wwan0xmmrpc0
device and initialize the modem from there. Hence, no further kernel changes are required - all changes required are now in ModemManager, see https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/612#note_1700608.open_xdatachannel.py
script from this repository needs to be cleaned up, and transferred to the ModemManager project. Fortunately, somebody started work on this already several years ago (https://github.com/enzingerm/ModemManager), and it has been updated to a more recent version of ModemManager (https://gitlab.freedesktop.org/ShaneParslow/ModemManager/-/tree/enz7360), but it still requires some polishing (see https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/612#note_2328515), and is work in progress as of March 2024. For remaining issues, see https://gitlab.freedesktop.org/ShaneParslow/ModemManager/-/issues