3104 CM4 CAT1 EN
Keywords
CM4 CAT1 4G LTE, Raspberry Pi OS, Ubuntu, OpenWrt, Orange Pi, IoT, USB2.0, Driver-free, Auto-identification
I. Introduction
The CM4_CAT1 is a 4G module that matches the size of the Raspberry Pi CM4/CM5 core board. The CM4_CAT1 uses USB ports for communication, featuring both USB-C and 1.25mm 4Pin dual interfaces (choose one). The USB-C interface is suitable for the vast majority of application scenarios. The 1.25mm 4Pin connector is compatible with the vast majority of our Raspberry Pi expansion boards. The 4G module can be directly mounted on top of the CM4/CM5 core board and connected to the usb of our Raspberry Pi expansion board via the 1.25mm 4Pin connector.
The CM4_CAT1 features a self-ejecting Nano SIM card slot and offers the option of either a IPEX 1 interface or an onboard PCB antenna (choose one).
4G Cat1 is a cost-effective module designed for medium-speed IoT applications around 10Mbps. The 10Mbps downlink and 5Mbps uplink speeds can meet the vast majority of networking and transmission needs. This module is automatically recognized as a 4G connection without needing drivers or dial-up configurations, making it convenient for users to develop applications.
The CM4_CAT1 supports all series versions of Raspberry Pi, as well as development boards such as Orange Pi and NVIDIA likes Jetson series.
It have two versions: CAT1 and CAT1-EU, their parameters are as follows:
| Model | CAT1 | CAT1-EU |
| Band | LTE-TDD: B34/B38/B39/B40/B41
LTE-FDD: B1/B3/B5/B8 |
LTE-TDD: B38/B40/B41
LTE-FDD: B1/B3/B5/B7/B8/B20/B28(A/B) |
| DATA | LTE-TDD: Max 8Mbps (DL)/Max 2Mbps (UL)
Max 6Mbps (DL)/Max 4Mbps (UL) | |
| LTE-FDD: Max 10Mbps (DL)/Max 5Mbps (UL) | ||
| Temperature | -40℃ ~ +85℃ | |
II. Hardware Spec
1) 1*USB 2.0 port for 4G power supply and communication; two package ports are available: USB-C port or 1.25mm-4P port (choose one to use).
2) 1*4G CAT1 LTE.
3) 1*IPEX 1 interface antenna connector, with an optional onboard antenna (choose one to use).
4) 1*Nano SIM card slot.
5) 3*LEDs: STS/MODE/NET.
6) Size: 40*55mm, 4*M2.5mm mounting holes.
7) The PCB board is UL and RoHS certified, with a fire rating of 94V-0.
III. Work with Raspberry Pi OS
The test is based on the hardware of CM4 WiFi7 Expansion Board.
The Raspberry Pi OS (Raspberry Pi OS with desktop): 2023-05-23-raspios-bullseye-arm64.img.xz.
You can download the Raspberry Pi OS in: https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit
Different versions of Raspberry Pi OS have varying strategies for network management. Based on the 64-bit OS version, the results are as follows:
| OS version (64-bit) | Test results |
| 2023-02-21-bullseye | Driver-Free, No Dial-Up Required, Auto-identification, plug and play, automatic internet connection. |
| 2023-05-03-bullseye | |
| 2023-12-05-bookworm | Driver-Free, No Dial-Up Required, Auto-identification, but there may be instances of network connection failure,
and the OS requires the installation of DNS software. |
| 2024-07-04-bookworm | |
| 2024-11-19-bookworm | |
| 2025-05-13-bookworm | |
| 2025-10-01-trixie |
The Raspberry Pi Zero series boards only support 32-bit OS. The test results are as follows:
| OS version (32-bit) | Test results |
| 2023-02-21-bullseye | Driver-Free, No Dial-Up Required, Auto-identification, plug and play, automatic internet connection. |
| 2023-05-03-bullseye | |
| 2023-12-05-bookworm | |
| 2024-07-04-bookworm | |
| 2024-11-19-bookworm | |
| 2025-05-13-bookworm | |
| 2025-10-01-trixie |
Power on the OS without connecting the network cable to the Ethernet port of the CM4 WiFi7 expansion board, open the terminal, and execute the command ifconfig, as shown in the following image:
It can be seen that eth1 is a 4G CAT1 and has obtained an IP address.
We test pinging external IP addresses and domain names, such as:
ping 220.189.255.38
ping www.mcuzone.com
All successful, indicating that the 4G module is functioning normally:
▶ Some versions of Raspberry Pi OSs can only ping IP addresses, but may encounter network failures when pinging domain names, reporting DNS errors:
At this point, the OS needs to install the DNS switching software udhcpc.
Connect the Ethernet port of the CM4 WiFi7 Expansion Board to the upstream router, and then execute the following command in the terminal:
sudo apt install udhcpc
After installation, unplug the network cable and execute:
sudo udhcpc -i eth1
After the execution is completed, we ping the IP and domain name, and both are successful.
Open https://test.ustc.edu.cn/ to conduct a speed test, and the results are as follows:
Note: Network speed tests are affected by the network environment and testing methods. Please refer to the actual speed, as this test is for reference only.
IV. Work with Ubuntu OS
The Ubuntu OS (Ubuntu Desktop): ubuntu-25.04-preinstalled-desktop-arm64+raspi.img.xz.
You can download the Ubuntu OS in:
https://ubuntu.com/download/raspberry-pi
Ubuntu OS do not have the ifconfig tool, connect an Ethernet cable to the network port of the CM4_WiFi7 expansion board, then open the terminal and manually install net-tools:
sudo apt install net-tools
Unplug the network cable and open the terminal, execute the command ifconfig -a, as shown in the following image:
The network interface named "enx" followed by the MAC address (shown in the figure as enx2089846a96ab) is a 4G CAT1 device and has obtained an IP address.
We test pinging external IP addresses and domain names, such as:
ping 220.189.255.38
ping www.mcuzone.com
It can only ping through to the IP address, but pinging a domain name returns a DNS error:
At this point, it is necessary to install the DNS switching software udhcpc. The procedure is as follows:
Connect the Ethernet port of the CM4 WiFi7 Expansion Board to the upstream router, and then execute the following command in the terminal:
sudo apt install udhcpc
After installation, unplug the network cable and execute:
sudo udhcpc -i enx2089846a96ab
After the execution is completed, we ping the IP and domain name, and both are successful, indicating that the 4G module is functioning properly:
Open https://test.ustc.edu.cn/ to conduct a speed test, and the results are as follows:
Note: Network speed tests are affected by the network environment and testing methods. Please refer to the actual speed, as this test is for reference only.
V. Other operations of the 4G module
The operations in this chapter use the Raspberry Pi OS as an example, and the steps also apply to the Ubuntu OS.
5.1 Modification of network priority
Open the terminal, execute the command route, and open the routing table as shown in the figure below:
eth1 takes the first priority, so the internet connection is currently via the 4G CAT1 module.
If you want to prioritize the wired network for internet access, you can execute the following command:
sudo ip route del default && sudo route add -net default netmask 0.0.0.0 gw 192.168.8.1
Explanation of these two commands (separated by '&&'):
sudo ip route del default: Remove the default route from the routing table.
sudo route add -net default netmask 0.0.0.0 gw 192.168.8.1: Add the gateway of the wired network as a new default route (ensure to use the actual gateway address).
After completing the execution, execute the route command to view the routing table. The current default route is the gateway of the wired network (eth0 is listed first):
This way, the network will default to using the wired connection. If you need to switch back to defaulting to the 4G network, please restart the OS, or execute the command:
sudo ip route del default && sudo route add -net default netmask 0.0.0.0 gw 192.168.10.1
Note: After a reboot, the routing table resets. To ensure the network continues to use the wired connection as the default route post-restart, you'll need to execute sudo ip route del default && sudo route add -net default netmask 0.0.0.0 gw 192.168.8.1 again.
5.2 AT command operations
No matter which OS you use, the way to use 4G AT commands is the same.
Install minicom:
sudo apt install minicom
Execute commands in the terminal:
lsusb
If you cannot execute lsusb, please install usbutils first:
sudo apt install usbutils
Record the ID value of the 4G module: 19d1 0001
Use the following command to open the serial port, where the value after echo is the ID recorded above:
sudo modprobe option
sudo sh -c 'echo 19d1 0001 > /sys/bus/usb-serial/drivers/option1/new_id'
After execution is complete, the OS should have three additional devices: ttyACM0, ttyACM1, and ttyACM2. Input ls /dev/ttyACM* to view:
By default, the AT command serial port is ttyACM0.
Open AT Command serial port by minicom:
sudo minicom -D /dev/ttyACM0
(Note: Typically, three ports (ttyACM0 to ttyACM2)will appear. In general, the AT port is ttyACM0 under most OSs. If that doesn't work, you may try other ports such as ttyACM2. If multiple USB-to-serial devices are present, further attempts will be needed until the correct AT port is identified.)
The first time you enter an AT command, there may be no echo. If you then input the command at and press Enter, and it returns "OK," it indicates that everything is working properly. If you need to check the echo, please type the command: ate1, then press Enter. After that, you can continue to type other commands and see the inputs.
Common AT commands:
1. Check if the SIM card is detected:
at+cpin?
Return ready to indicate the card has been recognized, if return error, you need to check the hardware.
2. Check antenna signal quality:
at+csq
Return values between 26 and 31 indicate a good signal, with 31 representing a full signal strength; return values between 20 and 25 indicate a barely acceptable signal; return values below 20 indicate a poor signal or that the antenna might not be connected.
3. Check network registration status:
at+cops?
Normally, it should return the network supporter's code: 7, where 7 represents 4G.
Note: The above command at+csq should not include a question mark, while the other two commands require a question mark.
4. View the SIM card's IMEI code:
at+cgsn
5. Reset 4G module (Sometimes, if you reinsert the SIM card, hot swapping may not work; in such cases, you can use this reset command to reset the module.):
at+reset
6. Disable radio frequency:
at+cfun=0
Enable radio frequency:
at+cfun=1
The two commands mentioned above can be used in pairs to allow the module to re-register with the network without restarting the 4G module.
5.3 Modify the IP address of the 4G module
Execute the AT command:
AT+ROUTEIP=<newip>
Note: only addresses in the format of 192.168.x.2 are supported. After making the changes, you need to power off and restart the OS.
Query current IP: AT+ROUTEIP?
Test whether the IP is effective: AT+ROUTEIP=?
VI. Work with OpenWrt
The version of the OpenWrt we tested with is: openwrt-bcm27xx-bcm2712-rpi-5-squashfs-sysupgrade-linux-6.12.35-USBlan-oled-20250709.img.gz.
The CM4 WiFi7 Expansion Board + CM4_CAT1 can be configured as follows: The Expansion Board's Gigabit Ethernet port is set as LAN (configured by default in the OS), and the CM4_CAT1 4G module is configured as WAN (requires manual setup).
6.1 Preparation
Connect the Gigabit Ethernet to the PC's network port. After the OS boots up, go to Windows Settings, find Network & Internet, and open the connected network under Ethernet to view the default gateway IP address. This address is the access address for the OpenWrt's configuration page. As shown in the figure, the tested address in this article is 192.168.198.1.
Then open a web browser, enter 192.168.198.1 to access the OpenWrt. The default username is root, and the default password is password.
Click on "Services - Terminal," then log in to the terminal. The default username is root, and the password is the "Router Password" of OpenWrt (by default, there is no password).
Execute ifconfig -a, and the result is as follows:
eth1 is the CAT1 4G module, but no IP address is visible. This is normal because the setup is not yet complete.
6.2 Set the 4G module as WAN
Click "Network - Interfaces" - "Add new interface...":
Configure as shown in the figure (the "Name" can be customized), then click "Create Interface":
In the "Firewall Settings", set "Create/Assign firewall-zone" to "wan", then click "Save":
Return to the previous page, click "Save & Apply":
So we have configured the 4G module as a WAN port. After a short wait, we can see that the 4G module has obtained an IP address:
Then we return to the terminal and execute ifconfig -a, with the following result:
It can be seen that eth1 has obtained an IP address.
Pinging the IP and domain name is successful, and the 4G module is working normally:
Now the properties of the PC's network adapter connected to the LAN port show that it can access the Internet:
So that the PC is online, Open https://test.ustc.edu.cn/ to conduct a speed test, and the results are as follows:
Note: Network speed tests are affected by the network environment and testing methods. Please refer to the actual speed, as this test is for reference only.
VII. Work with Debian OS on Orange Pi device
Using the Orange Pi 3 LTS with a 4G module. The OS used for testing is the Debian OS from Orange Pi: Orangepi3-lts_3.0.8_debian_bullseye_desktop_xfce_linux5.16.17.img
You can download the Debian OS in:
Open the terminal and execute the command lsusb, as shown in the following image:
Connect the Ethernet port of the Orange Pi 3 LTS to the upstream router, open the terminal, and execute the command ip addr, as shown in the following image, we can see that the 4G module (the network port starting with "enx") has obtained an IP address:
Open the terminal, execute the command ip route, and open the routing table as shown in the figure below:
The network port starting with "enx" takes the first priority, so the internet connection is currently via the 4G CAT1 module.
Both pinging the IP address and pinging the domain name are successful, indicating that the 4G module is functioning properly:
Open https://test.ustc.edu.cn/ to conduct a speed test, and the results are as follows:
Note: Network speed tests are affected by the network environment and testing methods. Please refer to the actual speed, as this test is for reference only.
For other operations regarding the 4G module, please refer to Chapter 5, as the procedures are the same as for Raspberry Pi OS.
Contact Us
Email: mcuzone@vip.qq.com
Tel: +86(0)13957118045
If there are any omissions, errors, or infringements on this page, please contact us through the above methods. Thank you!
Copyright 2004-2025 Wildchip




QQ:8204136