4006 NEO CAT1 EN
Keywords
FriendlyElec NanoPi, NEO, NEO Air, NEO Core, Allwinner H3, Cortex-A7, NEO CAT1, 4G LTE, Ubuntu, Debian, IoT
I. Introduction
NEO CAT1 is a 4G LTE module which we designed based on the FriendlyElec NanoPi series featuring the H3 CPU board (including NEO, NEO Core and NEO Air). The 4G module is a USB device that utilizes the USB IO pins on the NEO board for communication and power supply, there by providing 4G network connectivity to the NEO series boards.
4G Cat1 is a high-cost-performance module aimed at low-speed IoT applications with speeds around 10Mbps. The rates of 10Mbps downlink and 5Mbps uplink can meet the majority of connectivity and transmission requirements.
NEO CAT1, in conjunction with NEO series, enables the creation of a low-cost IoT device. The 4G module is driver-free, on FriendlyElec's Ubuntu OS and Debian OS, the device is automatically recognized, requiring no additional driver installation.
II. Hardware Spec
1. 1*USB 2.0 port, used for powering and communication with the 4G module. It has two packaging options: one is a female header connector, designed for connecting to the NEO/NEO Core/NEO Air board. The other is a 1.25mm-4P interface, intended for connecting to other boards, such as M1 PLUS,R1, and so on. You may choose one of the two interfaces.
2. 1*4G CAT1 LTE.
3. 1*IPEX 1 antenna port.
4. 1*Nano SIM slot.
5. 3*LEDs: STS, MODE, and NET.
6. 2*M2.5 mounting holes.
7. Size: The maximum size is 39x30mm.
8. PCB board: 2-layer, with gold plating process, lead-free production; the material is UL and RoHS certified, with a fire rating of 94V-0.
model | CAT1 | CAT1-EU |
---|---|---|
Band | FDD:B1/B3/B5/B8 | FDD:B1/B3/B5/B7/B8/B20/28(A/B) |
TDD:B34/B38/B39/B40/B41 | TDD:B38/B40/B41 | |
DATA | FDD: Max 10Mbps(DL)/Max 5Mbps(UL)
TDD:Max 8Mbps(DL)/Max 2Mbps(UL) Max 6Mbps(DL)/Max 4Mbps(UL) |
III. Operations for NEO
3.1 Work with Debian OS
Flash the Debian OS (command-line version, without a GUI) to the TF card.
The version of the Debian OS we tested: h3-sd-debian-bookworm-core-4.14-armhf-20240818.img.gz
NEO has an Ethernet port, so there are two methods for operation: one is to connect to a computer via a USB-to-TTL serial module, and the other is to connect to a router using the Ethernet port and access it through SSH.
3.1.1 Operate through TTL serial
Insert the SIM card and the TF card with the OS. And connect the USB port of the USB-to-TTL serial module to the PC, as shown in the figure below:
Then download and install the terminal software MobaXterm on your PC. The download link for MobaXterm is:
https://mobaxterm.mobatek.net/download-home-edition.html
Open MobaXterm and configure the TTL serial port as shown in the figure below:
Note: Use a baud rate of 115200.
Then open this serial port and log in to the Debian OS (username: root
, password: fa
):
Excecute ifconfig -a
to view the following network parameters:
eth0 is the NEO's own Ethernet port, which does not have an IP address since it is not connected to a network cable.
eth1 is the 4G CAT1, which has correctly obtained an IP address. We performed a ping test, and the results are as follows:
Pinging the IP address succeeds, but pinging a domain name results in an error, indicating that the OS needs to have its DNS addresses configured. The setup method is as follows:
Edit the resolv.conf file:
sudo nano /etc/resolv.conf
Change the address in the red box in the image below to a general DNS server address (such as 114.114.114.114, or any other general DNS address):
If the DNS addresses are not set in the file, please enter:
nameserver 114.114.114.114
Save and exit.
At this point, pinging the domain name and pinging the IP address both succeed:
If the OS restarts, the DNS entries in the resolv.conf file will be reset to their default addresses.
Therefore, if you need the 4G internet connection to start automatically upon boot, you will also need to modify the permissions of the resolv.conf file. Since /etc/resolv.conf is actually a symbolic link, you need to regenerate the resolv.conf file in order to modify its permissions. The method to do so is as follows:
sudo mv /etc/resolv.conf /etc/resolv.conf.link
sudo nano /etc/resolv.conf
This recreates the resolv.conf file. In this newly created file, enter the following:
nameserver 114.114.114.114
Save and exit, then execute:
sudo chattr +i /etc/resolv.conf
After completing the above steps, restart the OS, and the contents of the resolv.conf file will remain unchanged.
3.1.2 Operate through SSH over Ethernet
Connect NEO to the upstream router, then connect the PC to the same upstream router. After the OS starts, check NEO's IP address through the router's backend. In this document, the address obtained by the OS is: 192.168.8.110.
Then use MobaXterm to connect to the OS via SSH (username: root
, password: fa
):
Excecute ifconfig -a
to view the following network parameters:
eth0 is the NEO's own Ethernet port, and eth1 is the 4G CAT1 module; both have correctly obtained IP addresses.
We will perform ping tests separately through eth0 and eth1:
ping www.mcuzone.com -I eth0
ping www.mcuzone.com -I eth1
Confirms successful internet access via both wired and 4G networks. If pinging a domain name results in an error,we have set up a general DNS address(See 3.1.1).
3.2 Work with Ubuntu OS
Flash the Ubuntu OS (command-line version, without a GUI) to the TF card.
The version of the Ubuntu OS we tested: h3-sd-ubuntu-noble-core-20240823.img.gz
NEO has an Ethernet port, so there are two methods for operation: one is to connect to a computer via a USB-to-TTL serial module, and the other is to connect to a router using the Ethernet port and access it through SSH.
3.2.1 Operate through TTL serial
The operations for connecting to the computer via a TTL serial port are the same under Debian, please refer to Section 3.1.1.
Open this serial port and log in to the Ubuntu OS (username: root
, password: fa
):
Excecute ifconfig -a
to view the following network parameters:
eth0 is the NEO's own Ethernet port, which does not have an IP address since it is not connected to a network cable. eth1 is the 4G CAT1 module, which has correctly obtained an IP address. We performed a ping test, and the results are as follows:
Pinging the IP address succeeds, but pinging a domain name results in an error, indicating that the OS needs to have its DNS addresses configured. The setup method is as follows:
Edit the resolv.conf file:
sudo vi /etc/resolv.conf
Change the address in the red box in the image below to a general DNS server address (such as 114.114.114.114, or any other general DNS address):
If the DNS addresses are not set in the file, please enter:
nameserver 114.114.114.114
Save and exit.
At this point, pinging the domain name and pinging the IP address both succeed:
3.2.2 Operate through SSH over Ethernet
Connect NEO's Ethernet port to the upstream router using an Ethernet cable, then connect the PC to the same upstream router. Insert the SIM card and the TF card with the OS. After the OS starts, check NEO's IP address through the router's backend. In this document, the address obtained by the OS is: 192.168.8.77.
Then use MobaXterm to connect to the OS via SSH (username: root
, password: fa
):
Excecute ifconfig -a
to view the following network parameters:
eth0 is the NEO's own Ethernet port, and eth1 is the 4G CAT1 module; both have correctly obtained IP addresses.
In the previous section, we have already set up a general DNS address. Now, we will perform ping tests separately through eth0 and eth1:
ping www.mcuzone.com -I eth0
ping www.mcuzone.com -I eth1
Confirms successful internet access via both wired and 4G networks.
IV. Operations for NEO Core
The OS for NEO Core is flashed into the eMMC storage.
4.1 Work with Debian OS
The version of the Friendlyelec Debian OS we tested: h3-eflasher-debian-bookworm-core-4.14-armhf-20240818.img.gz
Connection Method: Connect the NEO Core to the computer using a USB-to-TTL serial module, as shown in the figure below:
Open MobaXterm and configure the TTL serial port as shown in the figure below:
Note: Use a baud rate of 115200.
Then open this serial port and log in to the Debian OS (username: root
, password: fa
).
Excecute ifconfig -a
to view the following network parameters:
Note: eth1 (the 4G CAT1 module) has correctly obtained an IP address.
If it has not obtained an IP address, please execute dhclient eth1
.
Both pinging the IP address and pinging the domain name succeed, indicating that the 4G module is functioning properly:
4.2 Work with Ubuntu OS
NEO Core comes with Ubuntu OS pre-installed on the eMMC by default.
Configure the TTL serial port in the same manner as with the Debian OS, then open this serial port. The OS logs in with the user account pi.
Execute sudo su
to switch to the root account (password: pi
).
Excecute ifconfig -a
to view the following network parameters:
Note: eth1 (the 4G CAT1 module) has correctly obtained an IP address.
If it has not obtained an IP address, please execute dhclient eth1
.
Both pinging the IP address and pinging the domain name succeed, indicating that the 4G module is functioning properly:
V. Operations for NEO Air
5.1 Work with Debian OS
The OS for NEO Air is flashed into the eMMC storage.
The version of the Friendlyelec Debian OS we tested: h3-eflasher-debian-bookworm-core-4.14-armhf-20240818.img.gz
Connection Method: Connect the NEO Air to the computer using a USB-to-TTL serial module, as shown in the figure below:
Open MobaXterm and configure the TTL serial port as shown in the figure below:
Note: Use a baud rate of 115200.
Then open this serial port and log in to the Debian OS (username: root
, password: fa
).
Excecute ifconfig -a
to view the following network parameters:
Note: eth0 (the 4G CAT1 module) has correctly obtained an IP address.
If it has not obtained an IP address, please execute dhclient eth0
.
Pinging the IP address succeeds, but pinging a domain name results in an error, indicating that the OS needs to have its DNS addresses configured:
The setup method is as follows:
Edit the resolv.conf file:
sudo nano /etc/resolv.conf
Add the address in the red box in the image below to a general DNS server address (such as 114.114.114.114, or any other general DNS address):
nameserver 114.114.114.114
Save and exit.
At this point, pinging the domain name and pinging the IP address both succeed:
5.2 Work with Ubuntu OS
Configure the TTL serial port in the same manner as with the Debian OS, then open this serial port. The OS logs in with the user account pi.
Execute sudo su
to switch to the root account (password: pi
).
Excecute ifconfig -a
to view the following network parameters:
Note: enx2089846a96ab (the 4G CAT1 module) has correctly obtained an IP address. (Note: The numbers following 'enx' represent the MAC address of the 4G module, which is unique for each module. Please refer to the actual device.) If it has not obtained an IP address, please execute dhclient enx2089846a96ab
。
Both pinging the IP address and pinging the domain name succeed, indicating that the 4G module is functioning properly:
VI. 4G Operations
6.1 Modification of Network Priority
For Ubuntu and Debian OS, when both the network port (Ethernet) and 4G are available on the Neo board, the default behavior is to prioritize the 4G connection.
When both the WiFi and 4G are available on the Neo Air, the default behavior is to prioritize the 4G connection.
If you want to prioritize the Ethernet or WiFi 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 Ethernet or WiFi 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 Ethernet or WiFi:
This way, the network will default to using the Ethernet or WiFi connection. If you need to switch back to defaulting to the 4G network, please execute the following command:
sudo ip route del default && sudo route add -net default netmask 0.0.0.0 gw 192.168.10.1
Or, you can restart the OS.
Note that 192.168.10.1 is the default gateway for the 4G module; please refer to the actual configuration.
Note: After a reboot, the routing table resets. To ensure the network continues to use the Ethernet or WiFi 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.
6.2 AT command operation
Applicable to NEO/NEO Core/NEO Air.
If the lsusb
command is not available, please install the usbutils
package first:
sudo apt install usbutils
Use the lsusb
command to list all connected USB devices, the entry marked in the red box indicates the 4G module:
Then install the serial port software minicom
:
apt install minicom
Execute:
ls /dev
You should now see three devices, ttyACM0
to ttyACM2
, under /dev
:
Open the AT command serial port using minicom:
minicom -D /dev/ttyACM0
If you need to view echo responses, type the command: ATE1
, then press Enter. You can continue to type other commands, and after pressing Enter, you will see the results.
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 26-31 indicate a good signal, with 31 representing a full signal strength; return values 20-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.
6.3 Modify the IP address of the 4G module
Applicable to NEO/NEO Core/NEO Air.
Execute the AT command:
AT+ROUTEIP=<newip>
Note: Only addresses in the format of 192.168.x.2 are supported. After completing the settings, you need to power off and restart the OS.
Check the current IP: AT+ROUTEIP?
Verify whether the IP address is active: AT+ROUTEIP=?
VII. Summary
We only introduce the usage and operations based on CAT1, without covering the operations and software system specific to the NanoPi development board itself. For information about the NanoPi NEO/NEO Core/NEO Air development boards, please visit the FriendlyElec's website:
https://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO
https://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO_Core
https://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO_Air
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