Telit LE910C4 + RPi as Mobile Hotspot | The Journey To Success

It’s been a long three days, but I wanted to do a write up to talk about how I failed and eventually succeeded in getting the Sixfab HAT to work for me.

Note!: Please understand I can’t give tech advice/support. This is just what worked for me. Perhaps I got lucky. If I were you, I’d read the whole post below before taking any action to see if this works for you before you mess something up.

Equipment:
RaspberryPi 4 with an A/C power supply (important)
Sixfab HAT
Sixfab SIM

Picture unpowered:

I am extremely new to Linux, so this was quite a mess for me. I began by following the hardware setup on the product page and then the tutorials at Tutorials, trying to get the card to do something simple in ECM mode using minicom and the AT commands as instructed. I tried over and over sending an SMS until I read that the Sixfab SIM does not allow SMS or calls. So that was a waste.

Having set my modem to ECM, I tried to setup QMI so I could “graduate” to the next phase in testing the modem → getting the hotspot going. This is where the real frustrations began.

First, I had the modem set up on ECM, and thanks to @saeed who told me I needed to set AT#USBCFG=0 to get the driver to show up correctly in lsusb -t. The driver didn’t show up before I made this adjustment and it was driving me nuts.

When I tried to set AT#USBCFG=0, minicom bugged out on me. The modem was constantly disconnecting and minicom was “typing on its own”.

minicom -D /dev/ttyUSB2 -b 115200

4

What I learned here is that you just have to be patient with modem disconnecting all the time. You may have to restart minicom a few times. Then when you type in AT#USBCFG=0, you may not actually see your own letters typed in! Hit enter anyways. minicom may interrupt you with its own typing, so you might have to do this a couple of times. When you set the configuration to 0, the modem will disconnect for a while. You may have to restart minicom again to get to where you can type in AT#REBOOT. Then it will disconnect yet again. Then you can continue with the libqmi tutorial with the correct driver!

Once I got to this step “sudo udhcpc -q -f -i wwan0”, I kept getting a loop that said “sending discover” over and over and over again. Just be patient. Wait for that to fail. Send “sudo udhcpc -q -f -i wwan0” command again and then I got an IP address.

Making progress!

Next the RaspAP installation on the tutorials page.

(continues in next comment)…

1 Like

Keep this line handy as you will probably use it multiple times to reset your RaspAP over and over again. If you screw something up, you can always just install from the terminal. If you have trouble accessing your WiFi to try and reinstall, you probably just need to set your wireless lan localisation up again so the list will display for you to choose your WiFi.
“curl -sL https://install.raspap.com | bash”

Followed the tutorial as is, but this is where I ran into problems:


Don’t follow that step, as it resulted in the hotspot going down. That wwan0 configuration is tricky.

Instead, go to https://docs.raspap.com/ for installation questions. It can get “involved” learning what RaspAP’s GUI is actually doing.

When you change a setting in RaspAP, you’re really just making a selection as to how you will add certain parameters to other files like hostapd and dnsmasq (more on dnsmasq later)

That being said, what is displayed in the RaspAP as your settings, may not really be your hostapd/dnsmasq settings. We’ll come back to that.

Ok, now to my situation. I wanted a mobile hotspot. Instead, RaspAP automatically bound itself to my local WiFi router (guess it could bind to your ethernet or other connection?), I guess for DHCP? I have no real idea why, but that is what it does automatically.

To remedy this, I deleted the WiFi Client.

It should look like this eventually on the dashboard page:

Next I changed the localisation on my computer to my country. I did this is RaspiConfig and also on the RaspAP GUI (and saved)
10

Let’s go back to the hostapd file. First, set your permissions so your user can actually edit the file. Go to your favorite search engine to find out how to use sudo chown and sudo chmod. I made the major mistake of adding my user to the /etc directory as a whole and that messed up a bunch of stuff. Instead, just do that for files, not entire folders… again, I’m not a good Linux user.

I opened the file in text editor and edited it and saved it:
13

I restarted the hotspot at this point using the GUI and then also rebooted my computer. When I got back into the RaspAP GUI after reboot, either using the local hostname -I ip or the 10.3.141.1 … I don’t recall, I think I changed the DHCP settings.

I’m a bit fuzzy on what I did, but I believe I stopped the dnsmasq service here:
14
15

After stopping the service, I chose the settings for DHCP for wwan0:


I restarted the hotspot and rebooted my computer as well. It worked after that. I am posting this using the mobile hotspot now.

Note: The hotspot will now bind to your computer and you won’t get access to other WiFis.

Also note: I tried going mobile, away from my home, with a 30000 maH battery, and I kept getting the error that my password was not accepted when I tried connecting with my mobile phone. This ended up being a low voltage issue. I switched back to my mobile A/C inverter with a very chunky USB cable and it worked just fine. Power supply matters

Thanks for reading. Please remember I am not offering the solution, just telling you how I got to where I did. I can’t really offer tech support.

1 Like

@alhamdliyesua ,

When you find the Telit “typing on its own” or when you do not see your commands echoed when connected to the device, that is a sure sign that some other process is also sending commands and looking at the results. Or at least trying to.

In those cases you can’t realistically expect great results. In the Linux world a lot of times device contention is handled more by gentleman’s agreement than anything enforced by the operating system.
My own opinion is that the Right Way to use this excellent piece of hardware is to 100% use one piece of code, either written by others (e.g. SixFab Connect) or written by yourself. Trying to intermix things is likely to be very frustrating and ugly unless you are very skilled.

Sure man. However it is very stable now. Dunno what to tell ya!

I can’t go back and edit now, but you can just ignore everything in configuring the RaspAp after deleting the Wifi client and localisation. The dhcp stuff is just bogus.

Thank you @alhamdliyesua

Thank you for sharing your experience.

As @davidbonn mentioned, there could be some process such as networkmanager or modemmanager which continuously sends these AT commands.

Abou the minicom not echoing the commands, you can issue ATE1 command to the module to see what you are typing.

1 Like

Glad to!

It’s certainly interesting. I don’t have modemmanger or networkmanager running. I have a process called networking that is running…

UPDATED:

The main thing that helped me in the RaspAp was deleting the Wifi client, not configuring the hostapd file or dnsmasq file. In fact, that came back to bite me.

The hostapd file now reads

WifiInterface = wlan0
LogEnable = 1
WifiAPEnable = 0
BridgedEnable = 0
WifiManaged = wlan0