5103 CM5IO UART EN
Keywords
Raspberry Pi, CM5 Core board, RPiOS, Dual RS485, Dual RS232, 40p-GPIO
I. Introduction
CM5IO_UART is a serial port expansion module based on the Raspberry Pi 40Pin GPIO standard ports. The default configuration includes two non-isolated RS232 serial ports and two isolated RS485 serial ports, using 3.81mm 3-pin screw terminals. The speed of the RS232 serial port can reach over 800Kbps; the speed of the RS485 serial port can reach over 1Mbps. CM4-sized 4G mounting holes reserved, with optional 4G module.
II. Hardware Spec
1) The Raspberry Pi's native 40PIN GPIO provides 4 UART ports, this module extends capabilities through the 40PIN GPIO.
2) 2*non-isolated RS232 serial ports and 2*isolated RS485 serial ports.
3) Output port: 3.81mm-3Pin.
4) The speed of the RS232 serial port can reach over 800Kbps.
5) The speed of the RS485 serial port can reach over 1Mbps.
6) CM4-sized 4G mounting holes reserved, with optional 4G module.
7) Size: 56*65mm, The board material is UL-certified and RoHS-compliant, with a flammability rating of 94V-0.
III. Module testing under Raspberry Pi OS
Hardware: CM5IO_UART paired with the CM5IO MINI expansion board
Software: The version of Raspberry Pi OS is 2024-11-19-raspios-bookworm-arm64.img.xz
The download link is:
https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit
3.1 Preparation
The installation command for CuteCom is:
sudo apt install cutecom
After installation, click on the Raspberry Pi icon in the top left corner of the desktop, and you will find a shortcut for CuteCom under "System Tools".
If you encounter insufficient permissions during use, please open the terminal and enter:
sudo cutecom
to execute CuteCom.
Power up the OS, open the terminal and execute the following command:
sudo nano /boot/firmware/config.txt
Insert the following lines at the end of the file:
dtoverlay=uart0
dtoverlay=uart2
dtoverlay=uart3
dtoverlay=uart4
After saving and restarting the OS, you can use dual RS485 ports and Dual RS232 ports.
The schematic diagrams of the four ports are as follows:
3.2 Testing dual RS485
▶ Test data sending and receiving between ttyAMA0 and the PC:
Insert a USB-to-485 converter on the PC and connect it to the RS485 port (ttyAMA0, corresponding to UART0) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 2.01Mbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA2 and the PC:
Insert a USB-to-485 converter on the PC and connect it to the RS485 port (ttyAMA2, corresponding to UART2) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 2.01Mbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA0 and ttyAMA2:
Connect the two RS485 ports (ttyAMA0 and ttyAMA2) on the expansion board together. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 1.39Mbps (Transmitted data must be free from garbled characters or loss.).
3.3 Testing dual RS232
▶ Test data sending and receiving between ttyAMA3 and the PC:
Insert a USB-to-232 converter on the PC and connect it to the RS232 port (ttyAMA3, corresponding to UART3) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 890kbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA4 and the PC:
Insert a USB-to-232 converter on the PC and connect it to the RS232 port (ttyAMA4, corresponding to UART4) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 890kbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA3 and ttyAMA4:
Connect the two RS232 ports (ttyAMA3 and ttyAMA4) on the expansion board together. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 990kbps (Transmitted data must be free from garbled characters or loss.).
IV. Module testing under Ubuntu OS
Hardware: CM5IO_UART paired with the Raspberry Pi 5
Software: The version of Ubuntu OS is ubuntu-25.04-preinstalled-desktop-arm64+raspi.img.xz
The download link is:
https://ubuntu.com/download/raspberry-pi
First, you need to configure the serial port settings of the OS, then install CuteCom. These steps are the same as for Raspberry Pi OS. For details, please refer to Chapter 3.
4.1 Testing dual RS485
▶ Test data sending and receiving between ttyAMA0 and the PC:
Insert a USB-to-485 converter on the PC and connect it to the RS485 port (ttyAMA0, corresponding to UART0) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 2.01Mbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA2 and the PC:
Insert a USB-to-485 converter on the PC and connect it to the RS485 port (ttyAMA2, corresponding to UART2) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 1.98Mbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA0 and ttyAMA2:
Connect the two RS485 ports (ttyAMA0 and ttyAMA2) on the expansion board together. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 1.45Mbps (Transmitted data must be free from garbled characters or loss.).
4.2 Testing dual RS232
▶ Test data sending and receiving between ttyAMA3 and the PC:
Insert a USB-to-232 converter on the PC and connect it to the RS232 port (ttyAMA3, corresponding to UART3) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 890kbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA4 and the PC:
Insert a USB-to-232 converter on the PC and connect it to the RS232 port (ttyAMA4, corresponding to UART4) on the expansion board. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 890kbps (Transmitted data must be free from garbled characters or loss.).
▶ Test data sending and receiving between ttyAMA3 and ttyAMA4:
Connect the two RS232 ports (ttyAMA3 and ttyAMA4) on the expansion board together. Then, open serial port software on both sides for sending and receiving data. The results are as follows:
According to the tests, the baud rate can reach up to 1.15Mbps (Transmitted data must be free from garbled characters or loss.).
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