This is my first modem from Sierra and it seems there are some problems with the MC7455 that I am trying to overcome. It would be helpful if other threads where someone got the device working they could share with the rest of us.
Anyway, please help by listing the minimum Kernel and driver versions required to make this thing work and actually pass data as a network device.
Here is what I have tried under 4.4.3 kernel.
Downloaded, build and installed the GobiSerial and GobiNet drivers version S2.25N2.36.
Load the modules and tried qmicli commands and couldn’t get anything to work.
Rebuilt GobiNet with RAWIP=1, installed and loaded the modules.
Still couldn’t get qmicli command to do anything with the device.
I am fixing the device permissions on the /dev/qcqmi0 and /dev/qcqmi1 interfaces, I have also tried this as root.
I downloaded the Linux-QMI-SDK and it’s document but the document has build instructions that don’t even match the source code in the package. I build the Connection_Manager and got it running but it throws out errors when it tries to connect.
Any tips on what is working for others would be nice.
Good. GobiSerial and GobiNet is the officially supported solution, and should work fine with 4.4.3 and older kernels. But it requires the Sierra Wireless Linux-QMI-SDK. The community supported and developed qmicli/libqmi will not work with those drivers.
If you want to use qmicli, then you must use the mainline qcserial and qmi_wwan drivers instead. And since raw-ip support was introduced in qmi_wwan in Linux v4.5, you need at least that version or newer. v4.4.3 won’t do. Note that raw-ip is a runtime, per device, switch in qmi_wwan. It is disabled by default. Use a recent qmicli to enable it (or just use ModemManager, which will automatically Do The Right Thing).
Yes, it is a bit confusing with the two different solutions. And I have to take more than a little of the blame for that situation But you can also consider it a luxury problem. If you define your needs, then it is usually easy to decide on one or the other solution. Are you developing a commercial embedded solution? => use the Sierra supported drivers and SDK. Are you trying to connect your personal Linux laptop to the Internet? => use the distro supported solution - which normally means the mainline qmi_wwan and qcserial drivers, with libqmi and ModemManager as userspace frontends.
(Note it migt still take a while before your favourite distro supports raw-ip in qmi_wwan, since this requires a very new v4.5 kernel and a similarily recent libqmi)
There is also a third alternative: Drop QMI and use the modem in MBIM mode. This will work with older Linux versions too. But you lose all the QMI functionality, so this is probably mostly interesting for those dual-booting Windows/Linux.
The SDK sample applications should work, and AFAIK the build instructions are matching. Could you please provide a few more details about what you did to build it and what errors it throws?
Ah, right. Skip that section. The SDK comes without source code (at least the copy you can download freely from source). Instead you have prebuilt binaries for different platforms. I guess this should be mentioned in that document. There is a forum for documentation feedback: viewforum.php?f=23
Note that you’ll have to undo the driver black listing if you followed section 2.3.1 in the referenced document (and possibly blacklist GobiSerial and GobiNet instead if you built and installed those for the 4.6 kernel).
And you’ll most likely need newer ModemManager and libqmi too. I haven’t checked the current Ubuntu versions, but the UIM PIN verification stuff necessary for MC7455 went into libqmi v1.14 released just a couple of weeks ago.
Does anyone backport qmi_wwan(in kernel v4.8.0) for Linux kernel v3.16.0(ubuntu-14.04.2)?
Will it be a huge software effort?
I tried to drive MC7455/MC7430 successfully by qmi_wwan driver on ubuntu-16.10(kernel v4.8.0),
But the customer’s system requirement is Linux kernel 3.16.0, it means the driver backporting is necessary.
So I am not sure the task complexity of driver backporting? Will it involve many source and header files?
So far I only knew qmi_wwan.c, usbnet.c and …?