• sales

    +86-0755-88291180

Raspberry Pi SIM7080G Cat-M/NB-IoT HAT User Guide

Document

Related Resources

Tools

Introduction

NB-IoT/Cat-M(eMTC)/GNSS HAT for Raspberry Pi, Based on SIM7080G, Globally Applicable

Features

  • Standard Raspberry Pi 40PIN GPIO extension header, supports Raspberry Pi series boards
  • Supports communication protocols such as TCP/UDP/HTTP/HTTPS/TLS/DTLS/PING/LWM2M/COAP/MQTT
  • Supports GNSS positioning (GPS, GLONASS, BeiDou, and Galileo)
  • Onboard USB interface, to test AT Commands, get GPS positioning data, and so on
  • Breakout UART control pins, to connect with host boards like Arduino/STM32
  • Onboard voltage translator, 3.3V by default, allows being switched to 5V via onboard jumper
  • SIM card slot, supports ONLY 1.8V SIM card (3V SIM card is not available)
  • 3x LED indicators, easy to monitor the working status
  • Baudrate: 300~3686400 bps
  • Common baudrate auto-negotiation: 9600/19200/38400/57600/115200 bps

User Guide

Testing it in Windows PC

1. Hardware connection and driver installation
  • Before testing, you should prepare
    • A Micro USB cable
    • LTE and GPS Antennas
    • The SIM7080G Cat-M/NB-IoT HAT
    • An NB-IoT SIM card.
  • Insert the SIM card into the SIM7080 board, connect the LTE antenna and the GPS antenna. Connect the micro USB of SIM7080G board to PC by USB cable.
  • Hold the PWRKEY button for about 1s to power on the module. After powering on, the STA indicator lights on, NET indicator quick-blinks firstly and then slow-blinks.
  • Download the driver file, unzip it. Then update the driver by Devices Manager
  • Generally, the SIM7080G will be recognized by PC with three USB ports. To update the driver, you can right-click the USB port and update it with the driver downloaded
  • AT Port COM31 is the one used as the communication port. We will use it to test the SIM7080G board.

Note: The SIM7080G modules support global networks. The time to log in the network is different among different areas. And to use the SIM7080G, you should first confirm that LTE-M or LTE-NB network are available in the local area.

2. Test network

For more information about the AT commands, you can refer to SIM7080 Series_AT Command Manual_V1.01

CommandDescriotionReturn
ATTest commandOK
AT+CPIN?Check SIM cardOK
AT+CNMP=38Choose LTE modeOK
AT+CMNB=2Choose NB networkOK
AT+CSQCheck signal intensityOK
AT+CGREG?Check netwok statusOK
AT+CGNAPNQuery APNOK
AT+CPSI?Request UE system informationOK
AT+CNACT=0,1activate application networkOK
AT+CNACT?Check network IPOK
AT+CNCAT=0,0Close application networkOK
3. Test MQTT

For more information about the MQTT, please refer to SIM7080 Series_MQTT(S)_Application Note_V1.00

Please test Web by clicking here. Please check the TCP port and domain name when testing, for details, please refer to here

CommandDescriptionReturn
AT+SHCONFSetting HTTPS(S)OK
AT+SHSSLSelect SSL settingOK
AT+SHBODSet BodyOK
AT+SHAHEADAdd HeadOK
AT+SHPARASet HTTP(S) ParaOK
AT+SHCPARAClear HTTP(S) ParaOK
AT+SHCHEADClear HeadOK
AT+SHSTATEQuery HTTP(S) connecting statusOK
AT+SHREQSet respond typeOK
AT+SHREADQueru respond dataOK
AT+SHDISCDisconnect HTTP(S)OK
3. Test TCP

CommandDescriptionReturnAT+CACIDSet TCP/UDP indexOKAT+CASSLCFGSet SSL parametersOKAT+CAOPENOpen a TCP/UDP connectionOKAT+CASENDSend dataOKAT+CARECVReceive dataOKAT+CACLOSECose TCP/UDP connectionOKAT+CACFGSet transparent parametersOKAT+CASWITCHEnable transparent modeOk
4. Test GNSS

For more information, please refer to Series_TCPUDP(S)_Application Note_V1.00

When testing GNSS, you should set the GPS antenna in the open area. You can also use u-center software for locating.

CommandsDescriptionReturn
AT+CGNSPWROpen/close GNSS powerOK
AT+CGNSINFGNSS informationOK
AT+CGNSCOLDGNSS cold startingOK
AT+CGNSWRAMGNSS warm startingOK
AT+CGNSHOTGNSS hot startingOK
AT+CGNSMODGNSS workign mode settingOK
AT+CGNSXTRAOpen GNSS XTRAOK
AT+CGNSCPYCopyt GNSS XTRA fileOK
AT+SGNSCFGGNSS NMEA output settingOK
AT+SGNSCMDAT port output GNSS NMEA dataOK

Use it with Raspberry Pi

Initialize IO and install software

The PWRKEY pin is connected to P7 (wiringPi number) of Raspberry Pi by jumper. To let the SIM7080G board work normally, you should firstly initialize P7 pin. Download codes and run by the following commands.

 sudo apt-get update
wget -P ~/Documents/ http://www.waveshare.net/w/upload/0/02/SIM7080G_Cat_M_NB_IoT_HAT_Code.7z
sudo apt-get install p7zip
cd ~/Documents
sudo p7zip --uncompress SIM7080G_Cat_M_NB_IoT_HAT_Demo_Code.7z
sh ~/Documents/SIM7080G_Cat_M_NB_IoT_HAT_Demo_Code/pi_gpio_init.sh
sudo pip install RPi.GPIO
sudo apt-get install python-serial
Enbale UART and hardware connection

Open raspi-config by following commands, and choose Interfacing Options -> Serial, close login sheel and open the hardware serial port.

sudo rapsi-config


Python codes

The python codes is provided for MQTT function

cd ~/Documents/SIM7080G_Cat_M_NB_IoT_HAT_Demo_Code/python/mqtt
sudo python mqtt.py


Use it with STM32

The demo codes provided is based on Waveshare Open103C, it is use for TCP connecting.

Use it with Arduino

The demo codes provide is based on Arduino UNO. The D10 (RX) and D11 (TX) is used for software serial.