Important items to review
- Check the compatibility of SIM with the module from the SIM provider. The compatibility includes the supported region and frequency band information. Also, check the supported bands of the module from the product specification.
- Check the SIM card slot for any damaged pin. With a damaged pin, your SIM will not be recognized.
- Confirm the micro-SIM(3FF size) SIM card is inserted in the right direction.
- Make sure that the APN(Access Point Name) is correct. If it’s wrong, your device won’t be able to get on the proper cellular network and transfer data. The APN is unique to each vendor and, sometimes, to each different type of SIM card you buy from that vendor such as AT&T SIMs have APNs of m2m.com.attz & nxtgenphone.
- Check the authentication type and credentials(username and password) with the SIM provider if required. It could be PAP or CHAP.
- Make sure the right antenna is connected to the right port/interface.
- Make sure the female u.fl connector of the antenna is connected/snapped firmly to the male u.fl connector of the module.
Power Status of the HAT
Ensure that the HAT has the power to operate. In order to check it observe the POWER LED and the EN LED, both should be lit.
Power Status of the Module
Make sure your module is powered up. When the module is powered up the NETL LED will blink and STAT LED will be lit. It can be turned on by pushing the PWRKEY button or by driving the programmable PWRKEY pin to HIGH for at least 500 ms.
From the physical level without any linux driver, the Linux OS should recognize USB device included Vendor ID (VID), Product ID (PID).
Check all USB devices with lsusb , if the correct vendor ID and product ID are seen, then USB connection is OK. if not, change the USB cable and try again.
Supported USB driver VID, PID list:
USB Driver Interface in the Linux operating system.
|USB Serial Option||ttyUSB0 used for USBDM |
ttyUSB1 used for GPS NMEA message output
ttyUSB2 used for AT command communication
ttyUSB3 used for PPP connection or AT command communication
Device Port Availability
If the operating system recognizes the modem, devices named /dev/ttyUSBx are created. You can check if the ttyUSB(s) are available under the /dev directory. Expected outputs are as follows:
Alternatively, you can check dmesg:
If any of the ttyUSB(s) is missing, then check the drivers according to the OEM’s Guides:
Both UART and USB can be used to communicate with the module. To check if everything is fine with UART:
- Make sure the serial of the Raspberry Pi is enabled and the serial console is disabled. To know the details of UART and the how-to disable linux serial console please visit https://www.raspberrypi.org/documentation/configuration/uart.md
- Follow the steps mentioned in the UART guide.
Check out the "Sending AT Commands" tutorial.
AT+CGREG? and AT+CREG? AT commands returns the registration status of the device.
Possible values are:
0,0 Not registered, ME is not currently searching a new operator to register to 0,1 Registered, home network 0,2 Not registered, but ME is currently searching a new operator to register to 0,3 Registration denied 0,4 Unknown 0,5 Registered, Roaming
SIM Card Status
Confirm that the device can recognize the SIM.
AT+CPIN? should return READY.
AT+CSQ AT command returns the signal strength of the device.
Possible values are:
<rssi> - received signal strength indication 0 - (-113) dBm or less 1 - (-111) dBm 2..30 - (-109)dBm..(-53)dBm / 2 dBm per step 31 - (-51)dBm or greater 99 - not known or not detectable <ber> - bit error rate (in percent) 0 - less than 0.2% 1 - 0.2% to 0.4% 2 - 0.4% to 0.8% 3 - 0.8% to 1.6% 4 - 1.6% to 3.2% 5 - 3.2% to 6.4% 6 - 6.4% to 12.8% 7 - more than 12.8% 99 - not known or not detectable
PDP Context Set Up
Check the PDP context parameters such as PDP type (IP, IPV6, PPP), APN, data compression, header compression etc. your module is trying to use, with the command: AT+CGDCONT?
Possible responses are:
+CGDCONT: 1,"IPV4V6","vzwinternet","",0,0 +CGDCONT: 2,"IP","super","0.0.0.0",0,0
Still Need Help?
Please attempt the solutions recommended in this guide before contacting support. If these don’t resolve the issues, contact support with the available logs(responses of all commands mentioned below).
dmesg | grep tty
sudo cat /sys/kernel/debug/usb/devices
AT Commands List
AT commands manual for Quectel BG96 module:
Updated over 1 year ago