Raspberry PI 4 with OS 12 Bookworm No Connection

Good afternoon,

I follow the steps from the page Raspberry PI 3G/4G LTE Base HAT with no internet connection in the Raspberry PI, the following is the output from the Troubleshooting command

Raspberry Pi Model / SBC: Model 4 B +
Operating System (OS): Raspberry OS 12 Bookworm
HAT: Sixfab 3g – 4G/LTE Base HAT
Antenna: Sixfab LTE/5G High-Performance Antenna SMA
Mini PCIe Module: Quectel EG25 4G/LTE Module
SIM: Mint Mobile
Other peripherals, if any: Usb, keyboard and mouse
Cellular Connection Type(PPP - QMI – ECM): ECM

Outputs of the following Linux commands:

  • uname -a
    user@raspberrypi:/ $ uname -a
    Linux raspberrypi 6.1.0-rpi4-rpi-v8 #1 SMP PREEMPT Debian 1:6.1.54-1+rpt2 (2023-10-05) aarch64 GNU/Linux

  • lsusb
    user@raspberrypi:/ $ lsusb
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 006: ID 413c:2113 Dell Computer Corp. KB216 Wired Keyboard
    Bus 001 Device 008: ID 046d:c534 Logitech, Inc. Unifying Receiver
    Bus 001 Device 007: ID 0781:5567 SanDisk Corp. Cruzer Blade
    Bus 001 Device 005: ID 1a40:0101 Terminus Technology Inc. Hub
    Bus 001 Device 004: ID 1a40:0101 Terminus Technology Inc. Hub
    Bus 001 Device 009: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
    Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

  • lsusb -t
    user@raspberrypi:/ $ lsusb -t
    /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
    |__ Port 1: Dev 12, If 0, Class=Vendor Specific Class, Driver=option, 480M
    |__ Port 1: Dev 12, If 1, Class=Vendor Specific Class, Driver=option, 480M
    |__ Port 1: Dev 12, If 2, Class=Vendor Specific Class, Driver=option, 480M
    |__ Port 1: Dev 12, If 3, Class=Vendor Specific Class, Driver=option, 480M
    |__ Port 1: Dev 12, If 4, Class=Communications, Driver=cdc_ether, 480M
    |__ Port 1: Dev 12, If 5, Class=CDC Data, Driver=cdc_ether, 480M
    |__ Port 2: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M
    |__ Port 1: Dev 5, If 0, Class=Hub, Driver=hub/4p, 480M
    |__ Port 3: Dev 7, If 0, Class=Mass Storage, Driver=usb-storage, 480M
    |__ Port 4: Dev 8, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 4: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 4: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 4: Dev 6, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M

  • usb-devices
    user@raspberrypi:/ $ usb-devices
    T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1
    D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
    P: Vendor=1d6b ProdID=0002 Rev=06.01
    S: Manufacturer=Linux 6.1.0-rpi4-rpi-v8 xhci-hcd
    S: Product=xHCI Host Controller
    S: SerialNumber=0000:01:00.0
    C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
    I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
    E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 4
D: Ver= 2.10 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=2109 ProdID=3431 Rev=04.21
S: Product=USB2.0 Hub
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=256ms

T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 12 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=2c7c ProdID=0125 Rev=03.18
S: Manufacturer=Quectel
S: Product=EG25-G
C: #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=81(I) 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=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
I: If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=85(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
I: If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=87(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
I: If#= 4 Alt= 0 #EPs= 1 Cls=02(commc) Sub=06 Prot=00 Driver=cdc_ether
E: Ad=89(I) Atr=03(Int.) MxPS= 16 Ivl=32ms
I: If#= 5 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
E: Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=88(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 4
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=06.01
S: Manufacturer=Linux 6.1.0-rpi4-rpi-v8 xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms

  • dmesg | grep tty
    user@raspberrypi:/ $ dmesg | grep tty
    [ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_headphones=0 snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 bcm2708_fb.fbwidth=1920 bcm2708_fb.fbheight=1080 bcm2708_fb.fbswap=1 smsc95xx.macaddr=D8:3A:DD:2A:6F:AC vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 console=ttyS0,115200 console=tty1 root=PARTUUID=8c4c54a8-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=US
    [ 0.000376] printk: console [tty1] enabled
    [ 1.624934] fe201000.serial: ttyAMA1 at MMIO 0xfe201000 (irq = 35, base_baud = 0) is a PL011 rev2
    [ 1.625181] serial serial0: tty port ttyAMA1 registered
    [ 1.634330] printk: console [ttyS0] disabled
    [ 1.634449] fe215040.serial: ttyS0 at MMIO 0xfe215040 (irq = 36, base_baud = 62500000) is a 16550
    [ 1.634708] printk: console [ttyS0] enabled
    [ 3.477592] systemd[1]: Created slice system-getty.slice - Slice /system/getty.
    [ 3.480927] systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty.
    [ 8.883247] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB0
    [ 8.897966] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB1
    [ 8.924741] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB2
    [ 8.962911] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB3
    [ 153.775728] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
    [ 153.776430] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
    [ 153.777674] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
    [ 153.778607] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
    [ 157.446595] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB0
    [ 157.447007] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB1
    [ 157.447389] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB2
    [ 157.447778] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB3
    [ 5414.100394] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
    [ 5414.101004] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
    [ 5414.102514] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
    [ 5414.103579] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
    [ 5429.033451] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB0
    [ 5429.033941] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB1
    [ 5429.034374] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB2
    [ 5429.034788] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB3
    [ 5438.424099] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
    [ 5438.424606] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
    [ 5438.426068] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
    [ 5438.427237] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
    [ 5445.931942] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB0
    [ 5445.933293] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB1
    [ 5445.934666] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB2
    [ 5445.935946] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB3
    [ 5461.723609] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
    [ 5461.725433] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
    [ 5461.726718] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
    [ 5461.727934] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
    [ 5465.645901] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB0
    [ 5465.646409] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB1
    [ 5465.647076] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB2
    [ 5465.647687] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB3

  • ls -l /sys/bus/usb-serial/devices
    user@raspberrypi:/ $ ls -l /sys/bus/usb-serial/devices/
    total 0
    lrwxrwxrwx 1 root root 0 Oct 23 16:26 ttyUSB0 → …/…/…/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.0/ttyUSB0

lrwxrwxrwx 1 root root 0 Oct 23 16:26 ttyUSB1 → …/…/…/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.1/ttyUSB1

lrwxrwxrwx 1 root root 0 Oct 23 16:26 ttyUSB2 → …/…/…/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.2/ttyUSB2

lrwxrwxrwx 1 root root 0 Oct 23 16:26 ttyUSB3 → …/…/…/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.3/ttyUSB3

  • ls -l /dev/serial/by-id
    user@raspberrypi:/ $ ls -l /dev/serial/by-id

total 0

lrwxrwxrwx 1 root root 13 Oct 23 16:22 usb-Quectel_EG25-G-if00-port0 → …/…/ttyUSB0

lrwxrwxrwx 1 root root 13 Oct 23 16:22 usb-Quectel_EG25-G-if01-port0 → …/…/ttyUSB1

lrwxrwxrwx 1 root root 13 Oct 23 16:22 usb-Quectel_EG25-G-if02-port0 → …/…/ttyUSB2

lrwxrwxrwx 1 root root 13 Oct 23 16:22 usb-Quectel_EG25-G-if03-port0 → …/…/ttyUSB3

Commands from the AT

AT

OK
ATI

OK

Quectel
EG25
Revision: EG25GGBR07A08M2G

AT+QGMR

OK

EG25GGBR07A08M2G_30.200.30.200

AT+CPIN?
+CPIN: READY

OK
AT+CPAS
+CPAS: 0

OK
AT+CFUN?
+CFUN: 1

OK
AT+COPS?
+COPS: 0,0,“Mint”,7

OK
AT+QCFG=”usbnet”
+QCFG: “usbnet”,1

OK
AT+QCFG=“band”
+QCFG: “band”,0xbff,0x1e00b0e18df,0x0

OK
AT+CREG?
+CREG: 2,1,“8613”,“0FB990D”,7

OK
AT+CGDCONT?
OK

+CGDCONT: 1,“IPV4V6”,“fast.t-mobile.com”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0
+CGDCONT: 2,“IPV4V6”,“ims”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,0
+CGDCONT: 3,“IPV4V6”,“sos”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,1
+CGDCONT: 4,“IPV4V6”,“tmus”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,0

AT+CSQ
+CSQ: 23,99

OK
AT+CGATT?
+CGATT: 1

OK
AT+QCFG=“nwscanseq”
+QCFG: “nwscanseq”,0403010502

OK
AT+QCFG=“nwscanmode”
+QCFG: “nwscanmode”,0

OK
AT+QCFG=“iotopmode”
ERROR

AT+QCSQ
+QCSQ: “LTE”,67,-100,87,-17

OK
AT+QNWINFO
+QNWINFO: “FDD LTE”,“310260”,“LTE BAND 12”,5035

OK

The following image is showing that seems that the Sixfab Base HAT not connected to the raspberry pi, however it is always connected

image

Everything seemts to be in order as far as I know, does the same steps work with the newest Raspberry OS 12 Bookworm? Is there any special configuration that I miss?

Thanks

  • cat /etc/os-release
    user@raspberrypi:/ $ cat /etc/os-release
    PRETTY_NAME=“Debian GNU/Linux 12 (bookworm)”
    NAME=“Debian GNU/Linux”
    VERSION_ID=“12”
    VERSION=“12 (bookworm)”
    VERSION_CODENAME=bookworm
    ID=debian
    HOME_URL=https://www.debian.org/
    SUPPORT_URL=Debian -- User Support

Hi,

Everything seems fine. Has an IP been assigned on the usb0 interface with the ‘ifconfig’ command? Also, could you confirm if there are any issues with your SIM provider?

No, I don’t have an ip address assigned, the ifconfig command is showing the following info:

$ ifconfig usb0
usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 2607:fb91:e6e0:d02d:e4ed:ab8c:d0dd:bbe prefixlen 64 scopeid 0x0
inet6 fe80::f11c:d4d7:96f9:3667 prefixlen 64 scopeid 0x20
ether 6e:55:7b:b3:09:37 txqueuelen 1000 (Ethernet)
RX packets 45037 bytes 60370749 (57.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 22592 bytes 2572107 (2.4 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

We don’t have any problems with Mint Mobile neither.

Maybe I can explain better the behavior, first, whenever I turn the raspberry pi on it is always displaying “NO network available” as showed in the image in the previous message.

After opening a terminal and trying to connect to the serial port using the minicom tool command I’ve notice that the system is somehow like entering some commands by ‘itself’ and it would never stop, I am attaching a gif video

Terminal minicom
(I don’t know what the commands were ‘typed’ since it was doing automatically by the system)
You can reproduce the same behavior with:

  • Raspberry PI 4B
  • Sixfab BASE Hat 4 LTE and quetcel EG25
  • Sim card
  • Raspberry OS 12 Bookworm

Disable the ModemManager service if installed.

sudo systemctl disable ModemManager.service