RM500Q-GL 5G HAT
| ||
| ||
| ||
Overview
Features
- Integrates extensive network protocols, with multi drivers and software support, compatible with different OS including Windows / Linux / Android.
- USB 3.1 port (USB 2.0 compatible) for connecting to PC, Raspberry Pi, or Jetson Nano host board to enable high-speed 5G communication.
- Standard M.2 B KEY slot, compatible with different 5G modules: RM500U-CN / RM500Q-GL / RM500Q-AE / RM502Q-AE series.
- Onboard UART, PWR, and RST control pin, built-in voltage level translator, enabled via DIP switch, for use with hosts like Raspberry Pi or Arduino.
- Onboard USB-C connector, enabled via a switch, for connecting the standalone power supply for the module, allows more loads, a stable and flexible power supply.
- Onboard power supply on/off switch, reset button, and LED indicator, easy to turn on/off the module or monitor the operating status.
- 2 x SIM card slot, dual card single standby, switchable via AT command. (Some 4G/5G modules do not support dual sim cards, depending on the actual supporting modules.)
- High-efficiency power supply circuit, up to 3A output current.
Version Options
This product is available with an optional 5G module and also with the optional case.
Selection Guide
What's On Board
Number | Name | Description |
---|---|---|
① | Raspberry Pi GPIO Header | Easily connect to Raspberry Pi |
② | Switch | Enable the corresponding pin |
③ | M.2 Interface | Compatible with RM500U-CN / RM500Q-CN / RM500Q-GL /RM50XQ-AE and other series of 5G modules |
④ | SIM Card Holder | Onboard two SIM card slots, dual card single standby. The default SIM1 card slot works, SIM2 is on the back, requires module support, and must be switched through AT commands |
⑤ | USB 3.1 Connector | Backward compatible with USB 2.0, can be used to connect to PC/Raspberry Pi/Jetson Nano, etc. |
⑥ | USB Type-C Connector | 5V 3A input; stable and flexible power supply |
⑦ | Audio Port | SIM82XX series support audio function, RM50XX series do not support this audio function |
⑧ | Antenna Connector | Onboard four-way antenna, strong signal |
⑨ | Reset Switch | One-key reset |
⑩ | Power Switch | To facilitate the power supply mode of the control module:
——If set to USB, the module will provide power through the "⑤.USB3.1 interface"; |
⑪ | Cooling Fan | Cool down the Raspberry Pi and 5G module at the same time |
⑫ | Indicator | Check the module running status anytime, anywhere |
Number | Name | Description |
---|---|---|
⑬ | Cooling Fan | Simultaneously cooling Raspberry Pi and 5G modules |
⑭ | SIM Card Slot 2 | Switchable via AT command (module is required) |
⑮ | Module Setting Switch | Switch A to ON for SIM7600X / A7906X / IM7906X / SIM7912X series 4G M.2 module; Switch B to ON, for SIM8202X / SIM8200EA / SIM8262X series 5G M.2 module; Switch C to ON, for RM50X / RM520N-GL / EM06X series 5G / LTE-A M.2 module |
⑯ | USB Interface Pad | USB 2.0 interface pad |
⑰ | NAU8810X Audio Chip | For SIMN7600X / SIM8XXX series module, does support RM5XX and EM06XX series module |
⑱ | Fan Header | 5V power supply for cooling fan |
Pinout Definition
After connecting to Raspberry Pi, these pins (TX, RX, D4 and D6) can be connected or not through the DIP switch:
4G/5G modules function testing
Category | 4G/5G Module | Network Communication | GNSS Positioning | Voice calls through Earphone Port |
Dual SIMs | UART Interface | External Power Supply? |
---|---|---|---|---|---|---|---|
5G | SIM8202G-M2 | 5G/4G/3G | Support | Support | Support | Support | Optional, but recommended |
5G | SIM8200EA-M2 | 5G/4G/3G | Support | Support | Support | Support | Optional, but recommended |
5G | RM500U-CN | 5G/4G/3G | NOT Support | NOT Support | Support | Support | Recommended |
5G | RM500Q-GL | 5G/4G/3G | Support | NOT Support | Support | NOT Support | Recommended |
5G | RM500Q-AE | 5G/4G/3G | Support | NOT Support | NOT Support | NOT Support | Recommended |
5G | RM502Q-AE | 5G/4G/3G | Support | NOT Support | NOT Support | NOT Support | Recommended |
LTE-A | EM06-E | LTE-A/4G/3G | NOT Support | NOT Support | NOT Support | NOT Support | Optional |
LTE-A | A7906E | LTE-A/4G/3G | NOT Support | NOT Support | NOT Support | NOT Support | Optional |
4G | SIM7600G-H-M2 | 4G/3G/2G | Support | Support | NOT Support | Support | Optional |
4G/5G Module Compatibility
If you need to use the M.2 TO 4G/5G HAT for other 4G/5G modules, you can refer to the M.2 connection diagram below, check whether there is any pin conflict, and then connect to test:
Working With Windows
Hardware Preparation
* A 5G SIM card (no downtime and 5G enabled); * A computer with a Windows operating system (Such as Windows 10) * A headphone cable with a microphone (optional);
Hardware Connection
Connect the 5G HAT with a usb3.0 cable, and connect an external 5V power supply to the Type-C power supply port of the 5G HAT, as shown in the figure:
Install drivers
- After connecting the 5G HAT to the computer through a double-ended usb3.0 data cable, there will be a series of devices without drivers installed on other devices:
- Download the driver to your computer and unzip the compressed package.
- Enter the RM50X_Driver directory.
- Click setup.exe to install the driver. After the installation is complete, the device manager will generate the following devices:
Common AT Commands
EM25X, EM06E and RM50X series 4G/5G module support AT command control, some basic AT commands are shown in the table below:
Command | Description | Return Value |
---|---|---|
AT | AT test command | OK |
ATE | ATE1 sets echo ATE0 turns off echo |
OK |
AT+CGMI | Query module manufacture | OK |
AT+CGMM | Query module model | OK |
AT+CGSN | Query product serial number | OK |
AT+CSUB | Query module version and chip | OK |
AT+CGMR | Query the firmware version serial number | OK |
AT+IPR? | Set the module hardware serial port baud rate | +IPREX: OK |
AT+CFUN=1,1 | Reset module | OK |
AT+QUIMSLOT? | Query SIM card selection: Return 1, select SIM card 1; Return 2, select SIM card 2 |
+QUIMSLOT: 1/2 OK |
AT+CPIN? | Query the status of the SIM card and return READY, indicating that the SIM card can be recognized normally | +CPIN: READY |
AT+COPS? | Query the current operator, the operator information will be returned after normal networking | +COPS: OK |
AT+C5GREG? | Query 5G network registration status | +C5GREG: OK |
AT+QENG="servingcell" | Query UE system information | |
AT+CNMP | Network mode selection command: "mode_pref":Automatic "nr5g_band" : 5G NR "lte_band":LTE only "gw_band":WCDMA only ... .... |
OK |
SIM Card Selection
The 5G HAT has two SIM card slots onboard, a dual SIM card, and single standby, which can be switched and enabled by AT command.
- SIM card 1 is selected by default, You can use the following command to query and confirm:
AT+QUIMSLOT?
- To switch SIM card 2, please use the following command:
AT+QUIMSLOT=2
- Switch back to SIM card 1, please use the following command:
AT+QUIMSLOT=1
- Check whether the corresponding card slot recognizes the SIM card:
AT+CPIN?
MBIM Dial-up Internet Access
- Download and install the driver.
- Open the RM50X AT port and send the following commands to dial up the Internet:
AT+QENG="servingcell" AT+QCFG="usbnet",2 AT+CFUN=1,1
- After dialing and restarting, the mobile network card appears on the computer network connection interface, and the dialing is successful.
GPS Positioning
Connect the passive GPS antenna to the GNSS antenna interface of the module(RM500Q-GL is ANT2;RM500Q-AE and RM502Q-AE is ANT3), and place the antenna outdoors facing the sky.Then send the AT command to turn on the GPS:
AT+QGPS=1 //Turn on GPS positioning AT+QGPSLOC=0 //Get GPS positioning
Now open the NEMA port, you can get GPS data:
Finally, turn off the GPS, you can use the AT command:
AT+QGPS=0 //Turn off GPS positioning
Working with Raspberry Pi
Hardware Connection
Connect the 5G HAT with a double-ended usb3.0 data cable, and connect an external 5V power supply to the Type-C power supply port of the 5G HAT, as shown in the figure:
Raspberry Pi | Pi 4B | Pi 3B/3B+ | CM4-IO-BASE |
---|---|---|---|
USB adapter | USB3.0 adapter | USB2.0 adapter | USB3.0 adapter |
Connection | ![]() |
![]() |
![]() |
Note | It is recommended to connect an external 5V power supply at the arrow.
|
If it is used for PI4B, there is a matching case, and the installation diagram is as follows:
The use of Raspberry Pi OS
This configuration is only needed for the first time.
Please download the newest Raspberry Pi OS, All the settings are based on Kernel 5.5, if you use the old version, please update first. Make sure your Kernel version is up-to-date, or else you may face issues with the driver.
5G ECM Mode Dial-up
Step 1. Uninstall Modem Manager and Network Manager
Open a terminal and run the following commands to uninstall Modem Manager and Network Manager:
sudo apt purge modemmanager -y sudo apt purge network-manager -y
Step 2. Test 5G Module
- Driver Testing:
Make sure the option USB-serial driver is properly loaded to the module interfaces. Check it with theusb-devices
command.
pi@raspberrypi:~ $ usb-devices T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 D: Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1 P: Vendor=2c7c ProdID=0800 Rev=04.14 S: Manufacturer=Quectel S: Product=RM502Q-AE S: SerialNumber=377628d2 C: #Ifs= 5 Cfg#= 1 Atr=a0 MxPwr=896mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
- Testing with AT command:
sudo apt-get install minicom sudo minicom -D /dev/ttyUSB2
Welcome to minicom 2.7.1 OPTIONS: I18n Compiled on Aug 13 2017, 15:25:34. Port /dev/ttyUSB2 Press CTRL-A Z for help on special keys AT OK
Step 3. Networking Setup with AT Commands
AT+QCFG="usbnet",1 AT+CGDCONT=1,"IPV4V6","YOUR_APN" AT+CFUN=1,1
Wait for the modem to boot again. It may take 30 seconds. Once the modem reboots, the minicom will be activated again.
After the reboot, open a new Linux terminal and check for usbX in the network interface using ifconfig or ipaddr commands.
- After rebooting the module, the NET indicator is on, and you can use the following commands to check the network. (Optional)
AT+QENG="servingcell"
- Use the following commands to get the IP and set up the DNS:
sudo dhclient -v usb0 sudo apt-get install udhcpc sudo udhcpc -i usb0 sudo route add -net 0.0.0.0 usb0
Step 4. Test 5G Network
After dialing, the Raspberry Pi can see usb0 get the ip by the following command, enter the command ifconfig usb0
or ifconfig
.
- Now check the assigned IP address and test the connection.
ifconfig usb0
pi@raspberrypi:~ $ ifconfig usb0 usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.225.60 netmask 255.255.255.0 broadcast 192.168.225.255 inet6 fe80::8543:f6a0:e678:2e20 prefixlen 64 scopeid 0x20 ether 4a:aa:f8:62:36:bb txqueuelen 1000 (Ethernet) RX packets 73 bytes 5047 (4.9 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 100 bytes 15116 (14.7 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ping waveshare.com -I usb0
pi@raspberrypi:~ $ ping waveshare.com -I usb0 PING waveshare.com (104.26.11.134) from 192.168.10.27 usb0: 56(84) bytes of data. 64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=1 ttl=52 time=87 ms 64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=2 ttl=52 time=82 ms 64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=3 ttl=52 time=92 ms 64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=4 ttl=52 time=73 ms 64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=5 ttl=52 time=75 ms
5G Network Test
In the Linux system, you can install speedtest_cli to test:
## Raspberry Pi OS sudo apt install speedtest-cli speedtest # or use speedtest_cli
or
## OpenWRT opkg update opkg install python3 opkg install python3-pip pip install speedtest_cli speedtest # or use speedtest_cli
Troubleshooting
Check if the module detects SIM:
AT+CPIN? # Should return READY
Check if the module is registered to the network:
AT+CEREG? # Should return 0,1 or 0,5
Check if the APN is correct and has an IP: AT+CGCONTRDP?
AT+CGCONTRDP # Should return APN details and IP address.
5G Network Speed Test
In the speed measurement part, because the Raspberry Pi comes with a Gigabit Ethernet port, and there are few USB network cards above Gigabit, we use the SpeedTest For Python tool to perform speed measurement by the commands. Connect to the terminal of OpenWrt and enter the commands one by one to measure the speed:
## OpenWRT opkg update opkg install python3 opkg install python3-pip pip install speedtest_cli speedtest # or use speedtest_cli
Raspberry Pi minicom Serial Port Debugging
1. Insert the module into the Raspberry Pi and set the S_TX and S_RX of the dipswitch to ON.
2. Install minicom, minicom is the serial port debugging tool for Linux.
- Use minicom to open ttyUSB2:
sudo minicom -D /dev/ttyUSB2
Send to enable the UART serial port:
AT+CCUART=1
3. Open ttyS0 via minicom - ttyS0 is the serial port of the Raspberry Pi 3B/3B+/4B, and the default baud rate is 115200.
sudo minicom -D /dev/ttyS0
4. Raspberry Pi 2B/zero, the user serial device number is ttyAMA0; you can use the following command line to confirm that serial0 is the selected serial device number, as follows:
ls -l /dev/serial*
Working with Jetson Nano
Hardware Connection
Connect the 5G HAT with a double-ended usb3.0 data cable, and connect an external 5V power supply to the Type-C power supply port of the 5G HAT, as shown in the figure:
Load USB Device Descriptor
In order to identify the module, the module's VID and PID information needs to be added to the file [kernel].
- View VID and PID of RM500U.
lsusb
sudo apt-get install unzip wget https://files.waveshare.com/upload/0/09/RM5XXQ_For_Jetson_nano.zip unzip RM5XXQ_For_Jetson_nano.zip sudo chmod 777 -R RM5XXQ_For_Jetson_nano cd RM5XXQ_For_Jetson_nano sudo ./install.sh sudo reboot
After successfully adding the PID and restarting Jetson nano, enter the following command in the command line interface to display five device symbols USB0-USB4.
ls /dev/ttyUSB*
RNDIS
- Enable minicom.
sudo apt-get install minicom sudo minicom -D /dev/ttyUSB2
- Send the following command ECM in minicom.
AT+CPIN? AT+QCFG="usbnet",3 AT+CFUN=1,1
After the module restarts, and the NET light is on, use the following command to check the network status (optional).
AT+QENG="servingcell"
Get the IP and set the DNS with the following commands:
sudo dhclient -v usb1 sudo apt-get install udhcpc sudo udhcpc -i usb1 sudo route add -net 0.0.0.0 usb1
After dialing, you can see that usb1 gets the IP through the following command:
ip route
ping -I usb1 www.baidu.com
Resources
Software
Assembly drawing
Datasheets
- Quectel_RG50xQ_RM5xxQ_Series_DFOTA_Application_Note_V1.0
- Quectel_RG50xQ_RM5xxQ_Series_FTM_Application_Note_V1.0
- Quectel_RG50xQ%26RM5xxQ_Series_5G_Network_Status_Judgement_Introduction_V1.1
- Quectel_RG50xQ_RM5xxQ_Series_5G_Network_Searching_Scheme_Introduction_V1.0
- Quectel_RG50xQ_RM5xxQ_Series_Software_Thermal_Management_Guide_V1.0
- Quectel_RM500Q-AE%26RM502Q-AE_Hardware_Design_V1.0
- Quectel_RM50xQ_Series_Hardware_Design_V1.2
- Quectel_RM50xQ_Series_Reference_Design_V1.3
- Quectel_RM500Q-GL_3D_Dimensions_V1.2.zip
- Quectel_RM502Q-AE_3D_Dimensions_V1.1.zip
FAQ
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.
{{{5}}}
{{{5}}}
{{{5}}}
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;
{{{5}}}
ATE1
{{{5}}}
Support
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 AM GMT+8 (Monday to Friday)