How to check my miniPCIe LTE module is working?

Hi everyone,
Following the friendly advice i got in this thread, i bought a Routerboard M33G and a Quectel EP06-E LTE mini PCI express module.

I finally managed to replace RouterOS with OpenWrt, and was now looking at the next step: using the mpcie module as a 4G uplink.

My understanding was that the card should just show up in the available interfaces, at the very least after installing the right packages (i've installed the packages suggested on the "How To use LTE modem in QMI mode for WAN connection" page).
Except i doesn't show up in my interfaces, and, more worryingly, the kernel log show this:

[ 1.892413] PCIE0 no card, disable it(RST&CLK)
[ 1.896771] PCIE1 no card, disable it(RST&CLK)
[ 1.901164] PCIE2 no card, disable it(RST&CLK)

Full log available here: https://paste.debian.net/1143464

I've tried moving the card between the two mpcie slots, and have booted with a SIM card inserted or not. In all three cases (slot 1, no SIM, slot 1 SIM, slot 2 SIM) the same appears in the kernel log.

Is my card simply faulty?

For more context, not long after i got it, i had to send the Routerboard back for an RMA after it stopped answering and wasn't able to reset in any way. I'm not sure now (of course) but i think i had already connected the mpcie LTE module to the board when that first Routerboard died.

I must admit i wasn't as careful as i could have been, and did manipulate the board and the card bare handed, not thinking about ESP damage. (I've been much more careful since i got the replacement board, manipulating it with rubber gloves, FWIW).

Is my mpcie LTE card dead? Is there something i can do to check?
Any advice would be much appreciated!

Lastly, i see that the RBM33G came with some extra screws and metal pods (marked with a mysterious "K-25" that only appears in Mikrotik's documentation here, so, pretty useless). They look like they can be screwed to holes on the board that are set under the mpcie cards and create an extra connection between the board and the card? I'm not sure, any advice would be appreciated.

Did you get it working? I am interested in a similar setup with a U7621-01 and EP06E as I now have unlimited data. Check this page for your routerboard, maybe you need to tape some pins https://wiki.mikrotik.com/wiki/Cellular_Quectel_modems_01

I have u7621 router with 3 miniPCIe slots and one slot is dedicated to LTE module. So very similar to yours.

Only one slot is dedicated to LTE module. I have the PCIE0 no card, disable it problem on one of my wireless cards when device is booted from cold boot (powered on)

Can you try to reboot your device (don't power off / on) while testing your slots?

This board requires some manipulations with GPIO in order to provide power to PCIe slots and configure USB port(s). I recommend to use this OpenWrt-based firmware, no manual configuration will be necessary.

Your router is different from what the OP has, it will be better to create a separate thread on your issues. You will need to tape the pins or disable USB3 on the modem.

Thanks a lot for this answer @AndrewZ.
I had understood (mistakenly, it appears) that installing the right kmod- packages would provide the kernel modules / drivers necessary to use the LTE module.

I'm looking at ROOTer and considering using it, however i'm always a little weary of using OpenWrt derivatives rather than OpenWrt itself.
Do you know if applying the necessary modifications to OpenWrt to use the module is documented somewhere? Does it requires recompiling OpenWrt entirely?

I'm happy to take this as an opportunity for further learning.

@Toomoch Thanks for finding that piece of documentation too!

To make the EP06 modem working on most of the mini-pcie slots of the RouterBoard you need to tape the USB 3.0 pins on the modem or tape the PCIE pins on the mini-pcie slot as the USB3.0 pins are not compatible with the PCIE pins - modem will not be recognized in the board.

Had completely missed this, will try that.

No need to worry about that. LTE modems use USB even if the slot is mini pcie. So those messages are expected unless you also have a wifi card or other pcie card in one of the slots.

If the modem doesn't show up as a USB device then it is probably because of one the reasons already mentioned here: some board specific gpio's must be used to enable power and/or USB to the slot. See device page,if there is one.

And if the modem supports USB3 Superspeed, then you may have to cover the pins shared with PCIe as also mentioned.

Thanks for the clarification. It was not obvious that a mini PCIe device would only show up as USB and never as PCIe.

I'm still trying to figure out what exactly i should do to make the module be recognised.
If my understanding is correct, two things need to be done, one on the card itself, one on the board.

The "you need to tape the USB 3.0 pins on the modem or tape the PCIE pins on the mini-pcie slot as the USB3.0 pins are not compatible with the PCIE pins" from the Mikrotik wiki means pragmatically putting some tape over pins 23 to 33 (or only 23+25 and 31+33?), if this picture from the Mikrotik forum (actually no, from the Quectel forum, deeper down the rabbit hole…) is to be believed:

On the board side, according to the Quick Start PDF on Mikrotik's product page, page, USB jumper section, if i plug the mpcie modem in the left-hand slot it should be enough? Or do i also need to change the jumper? In any case, both options are not too hard to test out.

Then, one needs the drivers too. I think installing the packages i mentioned above is enough, but we'll see when the board is recognised, i suppose.

All in all, to answer @Toomoch, no, haven't got it work in yet!

Some news.

The card is now recognised by OpenWrt :slight_smile:

I can confirm the need to isolate the pins 23 to 33 (so, 6 pins, on both sides) using tape and to plug it in the "left" mPCIe port, which is labeled 0.

Regarding the taping, it's a finicky job. I covered 8 pins at first (up to pin 37, so 8 pins) and that didn't work. No real idea if covering those extra 2 GND pins made a real difference or my first taping job was not well done.
This image was possibly the most helpful:

Anyway, here is the module as seen by the kernel:

# cat /sys/kernel/debug/usb/devices

T:  Bus=01 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=480  MxCh= 0
D:  Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=2c7c ProdID=0306 Rev= 3.10
S:  Manufacturer=Quectel
S:  Product=EP06-E
S:  SerialNumber=0123456789ABCDEF
C:* #Ifs= 5 Cfg#= 1 Atr=a0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=83(I) Atr=03(Int.) MxPS=  10 Ivl=32ms
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=85(I) Atr=03(Int.) MxPS=  10 Ivl=32ms
E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=87(I) Atr=03(Int.) MxPS=  10 Ivl=32ms
E:  Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
E:  Ad=89(I) Atr=03(Int.) MxPS=   8 Ivl=32ms
E:  Ad=88(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

the different devices provided by the Quectel EP-06 now appear, we now have:

# ls  -l /dev/ttyUSB*

crw-rw----    1 root     dialout   188,   0 May 20 11:34 /dev/ttyUSB0
crw-rw----    1 root     dialout   188,   1 May 20 11:23 /dev/ttyUSB1
crw-rw----    1 root     dialout   188,   2 May 20 11:49 /dev/ttyUSB2
crw-rw----    1 root     dialout   188,   3 May 20 11:23 /dev/ttyUSB3
-rw-r--r--    1 root     root             3 May 20 11:23 /dev/ttyUSB4
-rw-r--r--    1 root     root             3 May 20 11:23 /dev/ttyUSB5
# ls -l /dev/cdc-wdm0 

crw-------    1 root     root      180, 176 May 20 10:37 /dev/cdc-wdm0

and finally:

# uqmi -d /dev/cdc-wdm0 --get-data-status

"disconnected"

Sadly, i also get:

# uqmi -d /dev/cdc-wdm0 --get-current-settings

"Out of call"

And i think this is a very basic problem: the card is out of network, just like a phone would be if there was no signal
I am supposing this has to do with the fact there is no antenna connected to the modem, but could anyone confirm?

I'm also trying to understand if i need to issue AT commands, and if so to which ttyUSB* devices. Again, any guidance appreciated.

Nice to know! I think you should try to update the firmware. I am waiting for my order to arrive (EP06E and u7621-01)

Ha sure, i just need to figure out how :wink:
If you know how to, happy to learn!

I bought this modem from GL-iNet and they've now (reliably?) informed me that i won't get signal until i plug an antenna to it. Is that something others can confirm?

In any case, i'm looking at the Mikrotik mANT LTE 5o antenna. Just need to figure out the right pigtails + cable combination now…