From Waveshare Wiki
Jump to: navigation, search
EM060K-GL LTE Cat-6 HAT01.png

Raspberry Pi 5G/4G/3G/GNSS





  • Integrated multi-constellation high-precision GNSS positioning: GPS, GLONASS, BDS, Galileo.
  • Integrates rich network protocols, with multi drivers and software support, compatible with different systems including Windows / Linux / Android.
  • USB 3.1 port (USB 2.0 compatible) for connecting to PC, Raspberry Pi, or Jetson Nano to enable high-speed LTE-A network.
  • Standard M.2 B KEY slot, compatible with QUECTEL and SIMCOM series 4G/5G M.2 modules.
  • Onboard PWR and RST control pins, enabled via DIP switch, for connecting external IO ports to control module power on/off and reset.
  • Onboard USB-C connector, enabled via a switch, for connecting standalone power supply for the module, stable and flexible, supports more loads.
  • Onboard power supply switch, reset button, and LED indicator, easy to turn on/off the module and monitor the operating status.
  • Reserved 4x SMA to IPEX antenna connectors, easy to install and change the SMA antenna positions.
  • High-efficiency power supply circuit, up to 3A output current.


LTE Cat 6 EM06-E EM060K-GL


EMEA / APAC (except Japan and CMCC) / Brazil Global
Module Size

42.0 × 30.0 × 2.3 (mm)

Temperature Range

Operating Temperature

-30°C ~ +70°C

Extended Temperature -40°C ~ +85°C

Frequency Band

LTE-FDD B1, B3, B5, B7, B8, B20, B28, B32② B1, B2, B3, B4, B5, B7, B8, B12, B13, B14, B17, B18, B19, B20, B25, B26, B28, B29③, B30, B32③, B66, B71


B38, B40, B41 -B34, B38, B39, B40, B41, B42, B43, B46③ (LAA), B48 (CBRS)


B1+B1, B5, B8, B20, B28, B3+B3, B5, B7, B8, B20, B28, B7+B5, B7, B8, B20, B28,B20+B32②, B38+B38; B40+B40; B41+B41 Intra-band, Inter-band


B1, B3, B5, B8 B1, B2, B3, B4, B5, B6, B8, B19


GPS/GLONASS/BeiDou (Compass)/Galileo/QZSS GPS/GLONASS/BDS/Galileo

Data Transmission


300 Mbps (DL) / 50 Mbps (UL)

300 Mbps (DL) / 50 Mbps (UL)


226 Mbps (DL) / 28 Mbps (UL)
DC-HSPA+ 42 Mbps (DL) / 5.76 Mbps (UL)
WCDMA 384 Kbps (DL) / 384 Kbps (UL)

① Excluding Japan and CMCC; ② B32 in LTE-FDD supports reception only and is used for auxiliary component carrier only in 2×CA; ③ B29/B32 in LTE-FDD and B46 in LTE-TDD support reception only and are used for auxiliary component carrier only.

Test Description

AT Commands

Command Description Return Value
AT AT test command OK
ATE ATE1 enables echo
ATE0 disables echo
AT+CGMI Query module manufacturers OK
AT+CGMM Query module model OK
AT+CGSN Query product serial numbers OK
AT+CSUB Query module version and chip OK
AT+CGMR Query firmware version serial numbers OK
AT+IPR? Set the module hardware serial port baud rate +IPR:
AT+CPIN? Query SIM card status, return READY, SIM card can be recognized normally +CPIN: READY
AT+COPS? Query the current operator, the operator information will be returned after normal networking +COPS:
AT+CGREG? Check network registration status +CGREG:
AT+QENG="servingcell" Query UE system information
AT+QCFG="nwscanmode" Network mode query:
0: Automatic
2: WCDMA only
3:LTE only
... ....
AT+CFUN=1,1 Reset module OK


Working with Windows

Install Driver

  • Connect EM06-E LTE Cat-6 HAT to the computer with a dual-plug USB 3.0 cable, and there will be a series of devices that do not install drivers in Other Devices.


  • Download the driver to the computer and then unzip it.
  • Enter RM500U_Driver directory.
  • Click "setup.exe" to install the driver, and then the devices generate in Device Manager after installing.


MBIM Dial-up Network

Open the AT port of the EM06-E and send the following command to dial up the Internet:


After dialing and rebooting, the corresponding network card appears in the network connection interface, and the dial-up is successful.
MBIM Dial-up09.png

Working with Raspberry Pi

RNDIS Dail-up Network

  • Connect the USB port of EM06-E LTE Cat-6 HAT to the USB port of Raspberry Pi, and then execute the command to see if the device and ttyUSB2 can be recognized properly.

EM060K-GL LTE Cat-6 19.png

  • Enable minicom:
sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2
  • Send the following command RNDIS dialing in minicom:

EM060K-GL LTE Cat-6 HAT20.png

  • After rebooting the module, the NET indicator is on, check the network status with the following command (optional):
  • Using the following commands to get IP and set DNS:
sudo dhclient -v usb0
sudo apt-get install udhcpc
sudo udhcpc -i usb0
sudo route add -net usb0
  • After dialing, in the Raspberry Pi, you can see usb0 gets ip with the following commands:

EM060K-GL LTE Cat-6 HAT21.png

  • Test usb0 and the network status:
ping -I usb0 www.baidu.com

EM060K-GL LTE Cat-6 HAT22.png

GNSS Example

Get Positioning Information with AT Commands

  • Install minicom and then enable ttyUSB2 port:
sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2
  • Send the following commands via minicom, enable the GNSS, and get the positioning information:

EM060K-GL LTE Cat-6 23.png

  • Enable the ttyUSB1 port (NMEA port) and can receive the data from the satellite:
sudo minicom -D /dev/ttyUSB1

EM060K-GL LTE Cat-6 HAT24.png

  • Disable GNSS.

Demo Gets the Positioning Infomation

  • Run the following commands in the Raspberry Pi terminal:
wget https://files.waveshare.com/upload/9/98/EM06E_GNSS_GAODE.zip
sudo apt-get install python3-pip
sudo pip3 install pyserial
sudo apt-get install unzip
unzip EM06E_GNSS_GAODE.zip
sudo chmod 777 EM06E_GNSS_GAODE
sudo python3 EM06E_GNSS_GAODE

EM060K-GL LTE Cat-6 HAT99.png







5G consumes a lot of power, and the host's USB interface might not provide enough power. Please use a USB double-plug cable to supply sufficient power to the module, as shown in the diagram.



As RM500U-CN and RM500Q-GL modules support simultaneous access to two SIM cards, dual-card single standby, can be switched to enable one of the SIM cards to work through the AT command:

*SIM card 1 is used by default, you can use the following commands to check: 
*Switch to SIM card 2 using the following commands:  
*Switch to SIM card using the following commands:  
*Query whether the corresponding card slot identifies the SIM card:  

If the corresponding SIM card is still not recognized, consider that the dip switches do not enable the corresponding module, please see C corresponding dip switches are turned ON:


  • Qualcomm platform:
AT+QCFG="data_interface",0       //Switch to the default USB mode 
  • Zhanrui platform:



Please use the following commands to configure the dial-up mode to a stable routing mode:



  • Please check whether the SIM card and the antenna are connected, and note that four antennas must be connected.
  • Please check the hardware connection and use AT Log to check the network connection.




It requires a module with the M.2 B KEY B interface and USB function, modules without USB function (PCIE only) are not supported, the following modules have been verified:

SIM8202G-M2 SIM8262E-M2 SIM8262A-M2
(AA version)RM500U-CNV RM500Q-GL/RM502Q-AE RM520N-GL RM530N-GL

The M.2B KEY connector with USB function can be used if it matches the wiring sequence shown in the figure below: RM520N-GL91.png
5G modules must be purchased separately; if used for other modules, pin compatibility must be confirmed and subject to actual measurement.



RM500U-CN: based on Zhanrui
RM500Q-GL: based on the Qualcomm platform, supports GNSS positioning, mainly for China
RM500q-AE/RM502Q-AE: based on the Qualcomm platform, supports GNSS positioning, mainly for countries except for China.


The 5G module requires a lot of power, especially at the moment of network access; the power supply capacity of the Raspberry Pi is limited, and the 5V (3A) power supply can be connected to the onboard TYPE-C interface.


When using the external power supply, RM500U does not reboot after rebooting the Raspberry Pi, you can use the commands to restart RM500U.


As shown below:
AT+QCFG="usbnet",0 driver type is NDIS(QMI));
AT+QCFG="usbnet",1 The driver type is ECM;
AT+QCFG="usbnet",2 The driver type is MBIM; (RM5XXQ support)
AT+QCFG="usbnet",3 The driver type is RNDIS
AT+QCFG="usbnet",5 The driver type is NCM;


Use the following command to turn on the echo, and press Enter after entering: (Blind typing is required here)


It can be inquired at the following website:




Raspberry Pi 2B/zero, with user serial device number ttyAMA0;

ls -l /dev/serial*   

You can confirm that serial0 is the selected serial device number with the following command line, as follows:
RM520n-gl faq90.png


The USB power supply capability of the Raspberry Pi is worse than that of the computer. It needs to be connected to an external power supply. Please set the switch to EXT PWR, and connect the HAT interface to a 5V 3A power supply:

RM500U-CN 5G HAT.png



Yes, it is a Qualcomm X62 platform like RM520.



Technical Support

If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)