LTE O2 and T-D1 work, but Vodafone D2 does not


I use the great OpenWrt 18.06.4 with my D-Link DWR-921 C1 and installed and set it up as described on the corresponding page:

I connect to the internet via lte. Until now I used O2 lte, working for weeks without any problems. I would like to use Vodafone in Germany, because where I want to place the router at a holiday home, no O2 is available. Unfortunately I only get lte internet connections with an O2 SIM card (O2 network) or with a Telekom SIM Card (D1 network). As soon as I use the Vodafone SIM card (D2 network) I do not get any connections at all to the lte network. It is not an IP issue, I just do not get a connection.

I re-checked the Vodafone SIM card. It works fine with my smartphone and lte, located next to the router. Following the QMI guide, using uqmi I get the following outputs:

# uqmi -d /dev/cdc-wdm0 --get-data-status
# uqmi -d /dev/cdc-wdm0 --get-signal-info
	"type": "lte",
	"rssi": -81,
	"rsrq": -7,
	"rsrp": -105,
	"snr": 178

I know, not the best values, however my smartphone gets a connection.

With O2 or Telekom SIM the connection is already established, if I use "ifup wwan". But it doesn’t with Vodafone SIM.

I get a „Call failed“ If I connect with

# uqmi -d /dev/cdc-wdm0 --start-network --apn --autoconnect
"Call failed"

My uci interface setup is at follows

# uci show network.wwan

Do you have any ideas, why the Vodafone LTE does not work here, but the other mobile networks do? Are there any differences between the networks that could play a role here (hardware issue)? Or could this be related to my OpenWRT configuration? Is there anything that I could check or configure in another way? After two evenings without any solution and again and again "Call failed" I have no idea anymore. :wink:

Best regards,

Just a guess. You have D18Q1 LTE module which supports LTE B7 only, while your phone supports B3 as well as other bands, Vodafone signal in B7 is just not that good as in B3.

Wrong APN or APN mismatch? You have used both and above

autoconnect will produce confusing results in such cases, since you cannot connect the same session to different APNs. The modem might already be autoconnected to one of them. There is no way to figure out which one AFAIK, except by already knowing what autoconnect has done.

You were right that I misspelled ''. :wink: Very stupid mistake of me. I changed both to the correct one. Unfortunately it does not help. Still 'call failed'. :frowning:
@AndrewZ I guess the modem is a BroadMobi BM806U-E1 GSM/UMTS/LTE USB-mPCIe Module (Qualcomm MDM 9225)

Initially you mentioned D-Link DWR-921 C1
According to this revision is equipped with WNC D18Q1 GSM/UMTS/LTE mPCIe Module

@AndrewZ I am a little confused, the OpenWRT status page tells me C1, but the stick on bottom of the router h/w rev C3, so I guess C3 and not C1.

OK, can you try to switch it to 3G and/or test it in another location?

OK, can you try to switch it to 3G and/or test it in another location?

Yes, I tried that but wasn't completely sure how to do that.

My idea was to use --set-network modes to switch to 3g. Ist this the right way?

qmi -d /dev/cdc-wdm0 --set-network-modes umts

root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --get-signal-info

    "type": "wcdma",
    "rssi": -82,
    "ecio": 5

Unfortunately I still cannot connect, but get another message "No effect". Yeah:

uqmi -d /dev/cdc-wdm0 --start-network --apn --autoconnect
"No effect"

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

I also opened my window and put the router onto the window board. Even with lte I get better connection quality, however no connect:

    "type": "lte",
    "rssi": -65,
    "rsrq": -7,
    "rsrp": -89,
    "snr": 120

But to ensure that this was not just a happy moment for measuring, I will take the router to a completely other place tomorrow and re-check.

I am still wondering about what might differ with Vodafone. What can I check next? Is there any verbose debugging mode or anything else for uqmi to investigate what happens during connect?

I tried the router at another place where I have good LTE signal (4 bars on my iPhone), unfortunately it does not work better. So it seems to have another reason.

but how good is the signal on your modem?
Have you checked that all the bands are enabled?
Do you have a com port exposed by your modem, can you work with AT commands?

I am sorry, but I could not check this yet. I am an OpenWRT newbie and not yet aware of com port and AT commands. But if this helpful, I can learn and try.

"No effect" means that the modem is already connected to that APN, so the command has no effect. This is expected when using autoconnect.

Most other commands still return "disconnected" or similar errors because they are context specific, and the context is the subsystem client ID. And uqmi doesn't have access to the WDS client ID associated with the active connection because it didn't initiate it. So only the modem firmware can manage that connection. Which makes it completely useless.

autoconnect is evil. Disable it, and I'm pretty sure you will be able to connect just fine. Note that it is a persistent setting, so you will have to explicitly disable it. Just leaving out autoconnect from start-network won't help after enabling it in hte first place.

These are exciting news. Good to know what „No effect“ and „disconnected“ mean here.

In the meanwhile I found out referring to
that I can disable autoconnect with
uqmi -d /dev/cdc-wdm0 --stop-network 4294967295 --autoconnect.

Is this the recommended way? After doing that, it seems that I can connect. There is a big number returned after the --start-network instead of an error. Is this the client ID? But if I afterwards call
ifup wwan I do not get an IP yet. I didn‘t get it completely how uqmi and ifup interact. However I am quite hopefully to get it work now. Is there just a small missing step?

To give a little update:
I am one step further! :slightly_smiling_face:

  • it helped to disable autoconnect, I get a connection now, including connection leds being on and blinking
  • the right apn is in my case and not I re-checked it with a tp-link umts router.
  • unfortunately I still do not get an ip address, only TX sends some data, but RX does not receive (0 Bytes) (referring to luci interface).

After switching back to my o2 sim and apn, I found out that I have the same problem, getting a connection but not getting an ip when I connect via qmi commands. But if I configure via proto=wwan (which means „USB modems with protocol autodetection“) and just ifup wwan and no uqmi command the o2 sim works, including ip and RX traffic.

Do you know how I can find out what protocol is used in fact with proto=wwan. Is it qmi or ncm? Is there anything else I can do after I get the connection to get dhcp ip address and receive data?

Did you set the netdev to raw-ip mode when doing manual connect? I assume this is necessary for your modem? Do 'echo Y > /sys/class/net/IFNAME/qmi/raw_ip ' before bringing up the link

Don't know the proper way to check current state, but the detection logic is pretty simple: It just looks at the driver. qmi_wwan => proto qmi etc.

@bmork Thank you for the further information. I think I just got a solution:

  1. I restored the factory firmware to the router. => I got a working connection to Vodafone via LTE and working traffic.
  2. I restored OpenWRT
  3. I configured again the interface with uci network.wwan settings, including network.wwan.proto=‘wwan‘ and network.wwan.apn=‘‘
  4. ifup wwan

=> It works now. I cannot believe it. :grinning:

I have no idea, why. Something hanging with my modem since my first try with wrong

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.