What does "error: couldn't start network: QMI protocol error (14): 'CallFailed'

I’m working on getting Twilio setup with an EC25 LTE chip on the BalenaFin 1.1v board. I’m running OS version balenaOS 2.36.0+rev2. I know the antenna and board works, as I used a Hologram Sim card in it and that connects without any issues, so I’m thinking the issue is with Twilio, but I just wanted confirmation.

Output from mmcli -m 0: --------------------------------
Status | lock: sim-pin2
| unlock retries: sim-pin (3), sim-pin2 (10), sim-puk (10), sim-puk2 (10)
| state: connecting
| power state: on
| access tech: lte
| signal quality: 99% (recent)

It’s connecting for a few minutes, then it will say registered, and then back to connecting.

Output from Modem Manager:
Jun 11 20:36:03 30cf246 ModemManager[673]: verbose call end reason (2,208): [internal] pdn-ipv4-call-disallowed
Jun 11 20:36:03 30cf246 ModemManager[673]: Modem /org/freedesktop/ModemManager1/Modem/0: state changed (connecting -> registered)
Jun 11 20:36:03 30cf246 ModemManager[673]: Simple connect started…
Jun 11 20:36:03 30cf246 ModemManager[673]: Simple connect state (4/8): Wait to get fully enabled
Jun 11 20:36:03 30cf246 ModemManager[673]: Simple connect state (5/8): Register
Jun 11 20:36:03 30cf246 ModemManager[673]: Simple connect state (6/8): Bearer
Jun 11 20:36:03 30cf246 ModemManager[673]: Simple connect state (7/8): Connect
Jun 11 20:36:03 30cf246 ModemManager[673]: Modem /org/freedesktop/ModemManager1/Modem/0: state changed (registered -> connecting)
Jun 11 20:36:04 30cf246 ModemManager[673]: error: couldn’t start network: QMI protocol error (14): ‘CallFailed’
Jun 11 20:36:04 30cf246 ModemManager[673]: call end reason (1): ‘generic-unspecified’

cellular file in file path /etc/NetworkManager/system-connections:
[connection]
id=cellular
type=gsm
autoconnect=true

[gsm]
apn=wireless.Twilio.com
password=Authtoken provided by Twilio
username=Account SID provided by Twilio

[serial]
baud=115200

[ipv4]
method=auto

[ipv6]
addr-gen-mode=stable-privacy
method=ignore

According to my research from here, I need the password and username to use that sim chip.

Does anyone have any idea on why this isn’t connecting or is it a Twilio issue? I can see that it’s trying to connect.

Hi @jmeyers2 , I don’t know of anyone using twilio sims yet, but this is super cool. have you tried connecting without setting user and pass? I see in https://www.twilio.com/docs/wireless/tutorials/apn-configuration it says:

The Twilio APN does not require any authentication; therefore, you should leave the username and password fields blank.

Hi @shaunmulligan I have tried with and without the username and password but the errors are still the same. Any advice?

Hi,

I have zero experience with Twilio, but this line apn=wireless.Twilio.com catches my attention. I mean the upper case T. Shot in the dark - does it work with apn=wireless.twilio.com? Lower case t.

Hi @zrzka I tried the lowercase “t” as well, and no such luck. I also made sure that there were no extra spaces in the cellular file. I did notice, that when I put in the sim card on a board I got up and running with Hologram and changed the APN parameters to reflect the Twilio APN, and rebooted. The output for mmcli -m 0 is saying Sim is missing. Does that have something to do with it or can you tell me what that error actually means. Both boards are set up the same way, using the same OS and antenna.

hey @jmeyers2 , sorry to hear you still are having trouble getting NM and MM to play nicely with the twilio SIM. I wonder if you have an ubuntu laptop and usb modem that you could try test the SIM with. I would like to see what ubuntu would create for the connection file if you follow the click through modem setup.

One other thing to try is something like this config:

[connection]
id=twilio
type=gsm
autoconnect=true
permissions=

[gsm]
apn=wireless.Twilio.com
number=*99# 
password-flags=1

[serial]
baud=115200

[ipv4]
dns-search=
method=auto

[ipv6]
addr-gen-mode=stable-privacy
dns-search=
method=ignore

Hi @shaunmulligan I’ll have to set up a pc with Ubuntu on it. In the meantime, I noticed you have permissions in the file, but the Network Manager website I have, https://developer.gnome.org/NetworkManager/stable/settings-gsm.html doesn’t seem to have that file. Can you tell me what it does?

I don’t think the permissions= is important, its a hold over from a connection file created by ubuntu. It is used to define users that have permissions to the connection, you can see it in these docs: https://developer.gnome.org/NetworkManager/stable/settings-connection.html (sorry can’t seem to link directly to the section)

Thanks for the clarification and the link. I haven’t seen that one yet for Network Manager. I tried the provided file and it didn’t work. The results are the same from the other Cellular config file. Thank you for providing it.

hmm, it might be worth asking the Twilio support if they have any examples of using/configuring the sim with NetworkManager (or Ubuntu), I’m sure we are just missing some specific config, but its hard to know what.

I think you are correct, I’ll contact them regarding it. Assuming I can get it working, does Balena have a document storage area that the walk through could be stored? I would hate for someone else going down this road to have the same struggles as I do.

I plan to add a more thorough docs section for cellular, but we also have a internal knowledge base that we keep for all our support interactions that we can add it to. What would be awesome is if we could get you to write up a little Twilio + balena blog post, that way it would be easily found :slight_smile:

Sounds good. Once I solve it, I’ll write something up. Let me know if there’s specific guidelines to follow or specific spot to post the blog post.

sweet @jmeyers2 , there isn’t really a specific guideline or template, but once you have something you can just reach out to me or @dansku and we can work on getting it up on our blog.

1 Like