I have connected the new Raspberry Pi 4 model b with the waveshare SIM7600E-H 4G HAT. The os is Raspbian Buster Lite. The configuration I use is the following: enter image description here 1) The jumpers are placed in the middle position.
2) The shield connected onto the RPi gpio.
3) There is also a connection between the pi and the waveshare "USB" port (not "USB to UART")
4) raspi-config > Interfacing Options > Serial = Login shell over serial = NO Serial port hardware enabled = YES
5) /boot/config.txt has enable_uart=1

So far I have managed to give AT commnads succesfully, and even have access on the internet via ppp0 as it shown in the waveshare wiki page: https://www.waveshare.com/wiki/SIM868_P%20...%20Networking

However I haven't managed to find a way to access 4g network via wwan0. I assume that this is related with the fact that in the /dev/ folder there are no ttyUSB serial ports.

Following info I found here:

I gave the command:

sudo qmicli -d /dev/cdc-wdm0 --dms-set-operating-mode='online' 

and got:

error: couldn't create QmiDevice: Couldn't query file info: Error when getting information for file “/dev/cdc-wdm0”: No such file or directory

since no /dev/cdc-wdm0 device exist.

I also tried to compile gobiserial from SIM7X00-Driver.7z. I updated the raspberrypi-kernel-headers but when I tried to compile the driver I got the following error:

GobiSerial.c:55:10: fatal error: linux/usb-wwan.h: No such file or directory

Has anyone any idea why no ttyUSB exist and how can wwan0 be configured

  • Try $ ls /dev/ttyUSB*. For my two opened USB to serial ports on Rpi4B buster release 2019sep26, I got the following: /dev/ttyUSB0 /dev/ttyUSB1. Remember to always use terminal mode raspbi-config (or GUI Desktop equivalent) to (1) Enable serial port, (2) DISABLE serial console, whether you are using Rpi on board UART or not.
    – tlfong01
    Commented Oct 8, 2019 at 14:08
  • 1
    @tlfong01 The result of the command is cannot access '/dev/ttyUSB*.': No such file or directory. And as I have mentioned above I have already done Login shell over serial = NO Serial port hardware enabled = YES via raspbi-config
    – dk13
    Commented Oct 8, 2019 at 14:35
  • (1) I thought you wrongly searched /etc/dev/ttyUSB* instead of /dev/ttyUSB*, so I remind you that. (2) My answer is only limited to Rpi UART or USB/UART. Now a question: I usually python import serial to setup the USB serial ports. Do you use terminal commands or also python to setup USB serial ports? I am trying to point out that Rpi built in serial ports will setup "automatically", but for USB/UART, some cables's driver is not recognized, so you need to install drivers. I remember something like CH340, PL2xxx are OK. But I am not very sure. Perhaps I can check tomorrow. Bye.
    – tlfong01
    Commented Oct 8, 2019 at 14:50
  • I mean I read your comment "I assume that this is related with the fact that in the /etc/dev/ folder there are no ttyUSB serial ports.“. So I thought you searched the wrong folder. The correct folder should be just /dev/*.*. My apologies if my folder knowledge is wrong.
    – tlfong01
    Commented Oct 8, 2019 at 14:56
  • @tlfong01 Hi again and thanks for your answers. It's the first time I'm dealing with a raspberry pi so I haven't used neither terminal commands nor python to set up USB serial ports. If you have any recommendations on which to use they are more than welcome.
    – dk13
    Commented Oct 8, 2019 at 18:47

3 Answers 3


First you have to press the pwrkey for around 3 seconds. Then wait for the Net LED to turn on (it can take up to around 15s). If there is a network, it should start slowly blinking after another 3-10 Seconds. Then try to run the command again.


In case anyone has also issues. The link to the raspberry pi forum helped me. Following steps are working for me.

#install the packages
sudo apt-get update && sudo apt-get install libqmi-utils udhcpc
ifconfig wwan0 down
# Enable OS Raw IP Mode setting (not persistent) 
echo Y > /sys/class/net/wwan0/qmi/raw_ip
ifconfig wwan0 up
qmicli -d /dev/cdc-wdm0 --dms-set-operating-mode='online'
#change apn value according to the service provider information (also maybe username and password are needed)
qmicli -d /dev/cdc-wdm0 --device-open-net="net-raw-ip|net-no-qos-header" --wds-start-network="apn='internet',ip-type=4" --client-no-release-cid 
udhcpc -i wwan0

If ModemManager is running (which is is in recent versions of Ubuntu Desktop), it can block qmcli from working.

You can check if its running

$ ps ax | grep -i modem
832 ?        Ssl    0:01 /usr/sbin/ModemManager

And if so you can stop it with

sudo systemctl unmask ModemManager.service # may need this
sudo systemctl disable ModemManager.service
  • This seems to have also been the case on my Raspberry Pi running Pi OS lite 64-bit based on Debian 11. Had to just run sudo systemctl stop ModemManager and then I could run qmicli commands. Commented Jan 16, 2022 at 22:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.