Banana Pi BPI-CM5 Pro is a computing module powered by the Rockchip RK3576 second-generation 8nm high-performance AIOT platform. It integrates a quad-core Cortex-A72 @ 2.2GHz and a quad-core Cortex-A53 @ 1.8GHz, along with a dedicated NEON co-processor, a 6 TOPS NPU, and supports up to 16GB of large memory. It supports 4K video encoding and decoding, features a rich set of interfaces, and supports various operating systems.
Rockchip RK3576 design Banana Pi BPI-CM5 Pro AI Computer module design |
Power supply
System Installation (Choose one)
eMMC Boot
USB Type-C cable: Use a Type-C cable to write the image to the CM5 Kit through the Type-C port. You will need a Type-C cable to connect the CM5 Kit to your PC.
MicroSD/TF Card Boot
MicroSD/TF card: Class 10 or above, at least 8GB SDHC, and a card reader.
Below are high-speed TF cards tested and verified by the ArmSoM team:
SanDisk 32GB TF (MicroSD) (Recommended for developers)
SanDisk 32GB TF (MicroSD) Dashcam & Surveillance-specific storage card (Recommended for long-term operation)
SanDisk TF 8G Class10 microSD
SanDisk TF 128G Class10 microSD XC TF 128G 48MB/S
You can set up the CM5 Kit as an interactive desktop computer or as a headless computer that can only be accessed over the network. To set up the CM5 Kit as a headless computer, configure the hostname, user account, network connection, and SSH during the initial OS installation. If you plan to use the CM5 Kit directly, you will need the following additional accessories:
Optional Accessories
Keyboard & Mouse
HDMI monitor and HDMI cable
Ethernet cable
Camera module
For a 4-lane camera, it’s recommended to use the camera-module1.
For a 2-lane camera, use the Raspberry Pi camera-module-v2.
LCD display
It’s recommended to use the Display 10 HD.
Audio cable, 0.8mm vertical socket.
RTC battery, 0.8mm vertical socket.
Fan, 0.8mm vertical socket.
Power Supply:Supports DC 12V adapter, 2.5mm
CM5_Pro needs to extend the IO board to install Image.
Download and install Rockchip USB driver
Download Rockchip USB Download Tool
This tool defaults language is Chinese. you can change it to English after extract the package. Open RKDevTool_Release_v2.84/config.ini with an text editor (like notepad). The starting lines are:
#Language Selection: Selected=1(Chinese); Selected=2(English)
[Language]
Kinds=2
Selected=1
LangPath=Language\
Open RKDevTool.exe, Switch to the “upgrade firmware” page. Press the “firmware” button to open the image file to be upgraded. The upgrade tool displays detailed firmware information.
Disconnect the power adapter , connect the type-c cable to the BPI-CM5pro IO board and PC.
There have two usb download mode for image upgrade.
Uboot Usb Download Mode (loader mode)
It’s supposed to use this way if board already flashed a bootable uboot before.
Maskrom Usb Download Mode(maskrom mode)
Press the RESET button or Maskrom button to connect the power adapter. If the power adapter is already connected, hold down the Maskrom button while pressing the RESET button, release the RESET button, and then release the Maskrom button. If the RK USB driver is installed correctly, the PC will recognize the device.
The download tool also show the download mode if device connected.
Press the “upgrade” button to start the upgrade.
If the upgrade fails, you can try to erase the Emmc by pressing the EraseFlash button first, and then upgrade image again.
CM5_Pro needs to extend the IO board to install Image.
Use this method for Ubuntu and Armbian images. |
Install Image with Balena Etcher.
Balena Etcher is an opensource GUI flash tool by Balena, Flash OS images to SDcard or USB drive.
Click on "Flash from file" to select image.
Click on "Select target" to select USB device.
Click on "Flash!" Start burning.
Insert the SD card into BPI-CM5pro IO board and plug in the power adapter. Then press the power button, if there is still no response, press the RST button.
Please connect the HDMI monitor when desktop mirroring is started. You need to create a user on the desktop. |
BPI-CM5pro how burn image video : https://www.youtube.com/watch?v=80RULZRRM58
Debian images use this method. |
Download Rockchip SD Disk Tool.
Insert card reader to Windows PC, 8GB sdcard size at least.
Run SD_Firmware_Tool, check the “SD card startup” box and select the correct removable disk device, Choose firmware image, then Click Create button to make it and wait until it is finshed.
Please prepare an SD card with the image burned.And a USB drive containing image. |
Insert the SD card into BPI-CM5pro IO board, connect the power and start it. Insert the USB drive.
Execute
lsblk
to check if the USB drive is mounted. (If already mounted, you can skip step three))
Mount the USB drive to mnt.
sudo mount /dev/sda1 /mnt
cd /mnt
Execute
sudo dd if=bpi-cm5-Pro-xxx.img of=/dev/mmcblk0 bs=10M
Disconnect the power and remove the SD card. Power on again and start up from the EMMC.
Maskrom: When Flash is not burning firmware, the chip will boot into Maskrom mode, which can be burned for the first time. During the development and debugging process, if the Loader fails to start normally, you can also enter the Maskrom mode to burn firmware. |
Loader: The principle is that during the uboot startup, the pin is detected to be pressed. In Loader mode, the firmware can be burned and upgraded. You can burn a partition image file separately through the tool to facilitate debugging. |
Please prepare Type-C wire for Image burning. |
We open the RKDevTool burning tool (RKDevTool burning tool is included in the Android usage tutorial) and set the product to burn mode.
Disconnect all cables that may power the product, such as power cables and USB cables.
One end of a Type-C cable is connected to the OTG interface of the product, the other end is connected to the USB interface of the computer, and then open the software RKDevTool.
Press and hold the Recovery key, then use DC to power the product.
Wait until the software prompts you to find a LOADER device or Maskrom device (as shown in the following figure), and release the key.
Press the Firmware button to select the firmware you want to upgrade, and then click the Upgrade button.
The prompt bar indicates that after the upgrade is successful, restart the device to complete the burning.
We open the RKDevTool burning tool (RKDevTool burning tool is included in the Android usage tutorial) and set the product to burn mode.
Disconnect all cables that may power the product, such as power cables and USB cables.
One end of a Type-C cable is connected to the OTG interface of the product, the other end is connected to the USB interface of the computer, and then open the software RKDevTool.
Press and hold the Recovery key, then use DC to power the product.
Wait until the software prompts you to find a LOADER device or Maskrom device (as shown in the following figure), and release the key.
Select the Download Image TAB, then click the blank cell to select the MiniLoaderAll and Image files to use.
In the Storage option, select the target media EMMC, select Force write to address, and click Execute.
Wait for the write to complete, then the device will automatically restart, as shown in the right Download image OK.
If you are using the CM5 Kit for the first time, please familiarize yourself with the hardware interfaces of each product, which will help you better understand the following content.
Connect the USB to TTL serial cable as shown below:
CM5-IO | Connect | Serial Module |
---|---|---|
GND (pin 6) |
--→ |
GND |
TX (pin 8) |
--→ |
RX |
RX (pin 10) |
--→ |
TX |
1,First, insert one end of the Ethernet cable into the CM5 Kit’s Ethernet port, and connect the other end to the router, ensuring that the network is functioning properly.
2,After the system starts, an IP address will be automatically assigned to the Ethernet card via DHCP, with no additional configuration needed.
3,To view the IP address in the Linux system on the CM5 Kit, use the following command:
root@armsom-cm5:/# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: end0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether c6:9c:b0:7e:2b:1f brd ff:ff:ff:ff:ff:ff permaddr aa:a6:84:1b:0d:21
inet 192.168.10.78/24 brd 192.168.10.255 scope global dynamic noprefixroute enP4p65s0
valid_lft 86221sec preferred_lft 86221sec
inet6 fe80::5bb0:d96f:926d:b334/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether cc:64:1a:33:b5:40 brd ff:ff:ff:ff:ff:ff
4: wlan1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether ce:64:1a:33:b5:40 brd ff:ff:ff:ff:ff:ff
After the BPI-CM5 Pro Kit starts up, there are three ways to check the IP address:
Connect an HDMI monitor, log into the system, and use the terminal to enter the ip a command to check the IP address.
Connect a [debug serial port](#Debugging Serial Port) and use the terminal to enter the ip a command to check the IP address.
If you do not have a debug serial port or an HDMI monitor, you can also check the IP address of the CM5 Kit’s Ethernet port through the router’s management interface. However, sometimes the IP address may not be visible on the router. If the IP address is not visible, troubleshoot as follows:
First, check if the Linux system has started normally. If the green light on the CM5 Kit is steady, it has generally started correctly.
Check if the Ethernet cable is securely connected, or try a different cable.
Try using a different router, as issues have been encountered where routers cannot properly assign IP addresses or the assigned IP address does not show up on the router.
If no other router is available, you will need to connect an HDMI monitor or use a debug serial port to check the IP address.
Note that DHCP automatic IP assignment on the CM5 Kit does not require any configuration. |
4,Use the ping tool to check network connectivity.
The command to test network connectivity is shown below. You can interrupt the ping command by pressing Ctrl+C.
root@armsom-cm5:~$ ping www.baidu.com
PING www.a.shifen.com (183.2.172.185): 56 data bytes
64 bytes from 183.2.172.185: icmp_seq=0 ttl=53 time=8.370 ms
64 bytes from 183.2.172.185: icmp_seq=1 ttl=53 time=8.917 ms
64 bytes from 183.2.172.185: icmp_seq=2 ttl=53 time=8.511 ms
64 bytes from 183.2.172.185: icmp_seq=3 ttl=53 time=8.673 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 8.370/8.618/8.917/0.203 ms
The BPI-CM5 Pro Kit includes an onboard WiFi module, so no external network devices are required. It uses the standard 4th generation antenna.
1,First, log in to the Linux system. You can do this in one of three ways:
If the CM5 Kit is connected to a network cable, you can remotely log in via SSH.
If the CM5 Kit is connected to a debug serial port, you can use a serial terminal to log in.
If the CM5 Kit is connected to an HDMI display, you can log in using the terminal displayed on the HDMI screen.
2,Use the nmcli dev wifi command to scan for nearby WiFi hotspots.
# 1. Enable WiFi
root@armsom-cm5:/# nmcli r wifi on
# 2. Scan for WiFi
root@armsom-cm5:/# nmcli dev wifi
# 3. Connect to a WiFi network
root@armsom-cm5:/# nmcli dev wifi connect "wifi_name" password "wifi_password"
3,Use the nmcli command to connect to the scanned WiFi network:
Replace wifi_name with the name of the WiFi hotspot you want to connect to.
Replace wifi_password with the password for that WiFi hotspot.
root@armsom-cm5:~$ nmcli dev wifi connect "wifi_name" password "wifi_password"
Device 'wlan0' successfully activated with "wlan0b6d10bba-e1d5-4b6d-a17f-7d5ab44bbb6f".
4,Use the ip addr show wlan0 command to view the IP address of the WiFi connection.
root@armsom-cm5:~$ ip addr show wlan0
4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether b8:2d:28:5a:52:6a brd ff:ff:ff:ff:ff:ff
inet 192.168.10.9/24 brd 192.168.10.255 scope global dynamic noprefixroute wlan0
valid_lft 86321sec preferred_lft 86321sec
inet6 fe80::850d:3119:e0:afa3/64 scope link noprefixroute
valid_lft forever preferred_lft forever
5,Use the "ping" command to test network connectivity over WiFi. You can interrupt the ping command using Ctrl+C.
root@armsom-cm5:~$ ping www.baidu.com
PING www.a.shifen.com (183.2.172.185): 56 data bytes
64 bytes from 183.2.172.185: icmp_seq=0 ttl=53 time=8.370 ms
64 bytes from 183.2.172.185: icmp_seq=1 ttl=53 time=8.917 ms
64 bytes from 183.2.172.185: icmp_seq=2 ttl=53 time=8.511 ms
64 bytes from 183.2.172.185: icmp_seq=3 ttl=53 time=8.673 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 8.370/8.618/8.917/0.203 ms
1,Log in to the Linux system. You can do this in one of three ways:
If the CM5 Kit is connected to a network cable, you can remotely log in via SSH.
If the CM5 Kit is connected to a debug serial port, you can use a serial terminal to log in (use MobaXterm, as Minicom cannot display the graphical interface).
If the CM5 Kit is connected to an HDMI display, you can log in using the terminal displayed on the HDMI screen.
2,In the command line, enter the nmtui command to open the WiFi connection interface.
root@armsom-cm5:~$ nmtui
3,Select "Activate a connection" and press Enter.
4,Select the WiFi hotspot you want to connect to and enter the password. Once connected, an asterisk (*) will appear next to the connected WiFi network.
5,Use the ip addr show wlan0 command to view the WiFi connection’s IP address.
root@armsom-cm5:~$ ip addr show wlan0
4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether b8:2d:28:5a:52:6a brd ff:ff:ff:ff:ff:ff
inet 192.168.10.9/24 brd 192.168.10.255 scope global dynamic noprefixroute wlan0
valid_lft 86316sec preferred_lft 86316sec
inet6 fe80::a422:3494:3147:92d/64 scope link noprefixroute
valid_lft forever preferred_lft forever
6,Use the ping command to test WiFi network connectivity. You can interrupt the ping command using Ctrl+C.
root@armsom-cm5:~$ ping www.baidu.com
PING www.a.shifen.com (183.2.172.185): 56 data bytes
64 bytes from 183.2.172.185: icmp_seq=0 ttl=53 time=8.370 ms
64 bytes from 183.2.172.185: icmp_seq=1 ttl=53 time=8.917 ms
64 bytes from 183.2.172.185: icmp_seq=2 ttl=53 time=8.511 ms
64 bytes from 183.2.172.185: icmp_seq=3 ttl=53 time=8.673 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 8.370/8.618/8.917/0.203 ms
1,Click the network configuration icon on the desktop (make sure the network cable is disconnected when testing WiFi).
2,After successfully connecting to WiFi, you can open a browser to check if you can access the internet.
# 1. Activate Bluetooth
root@armsom-cm5:/# service bluetooth start
# 2. Enter bluetoothctl
root@armsom-cm5:/# bluetoothctl
# 3. Enter the following commands to connect
root@armsom-cm5:/# power on
root@armsom-cm5:/# agent on
root@armsom-cm5:/# default-agent
root@armsom-cm5:/# scan on
root@armsom-cm5:/# pair yourDeviceMAC
The BPI-CM5 Pro Kit supports HDMI up to 4Kp120.
Use an HDMI cable to connect the CM5 Kit to an HDMI display.
After booting the Linux system, if the HDMI display has an image output, it indicates that the HDMI interface is working normally.
Note: Many laptops have an HDMI port, but it usually only supports output, not HDMI input. This means it cannot display the HDMI output from other devices on the laptop screen. If you plan to connect the development board’s HDMI to a laptop’s HDMI port, please first confirm that your laptop supports HDMI input. If HDMI does not display anything, please check if the system you are using has a desktop version, as the server version will only display a terminal. |
HDMI to VGA Display Test
1,You will need the following accessories:
HDMI to VGA adapter
A VGA cable and a monitor that supports VGA input
2,The HDMI to VGA display test is shown below:
When using HDMI to VGA display, there is no need to configure anything on the CM5 Kit or Linux system. As long as the HDMI interface on the development board displays correctly, it should work. If you encounter issues, please check the HDMI to VGA adapter, VGA cable, and monitor. |
Insert a USB keyboard into the CM5 Kit’s USB port.
Connect the CM5 Kit to an HDMI display.
If the mouse or keyboard can operate the system normally, it indicates that the USB port is working correctly (the mouse can only be used in a desktop version of the system).
Insert a USB flash drive or USB external hard drive into the CM5 Kit’s USB port.
Run the following command. If you see an output for sdX, it indicates that the USB drive is recognized successfully:
root@armsom-cm5:/# cat /proc/partitions | grep "sd*"
major minor #blocks name
8 0 122880000 sda
Use the mount command to mount the USB drive to /mnt/, and then you can view the files on the USB drive:
root@armsom-cm5:/# sudo mount /dev/sda1 /test/
After mounting, use the df -h command to check the USB drive’s capacity and mount point:
root@armsom-cm5:/test# df -h | grep "sd"
/dev/sda 4.7G 4.7G 0 100% /test
Prepare a USB camera that supports the UVC protocol, then insert the USB camera into the CM5 Kit’s USB port.
Use the v4l2-ctl command to see the device node information for the USB camera, which will be /dev/video0:
root@armsom-cm5:/# v4l2-ctl --list-devices
Logitech HD Webcam C93 (usb-xhci-hcd.5.auto-1):
/dev/video40
/dev/video41
/dev/media4
On a desktop system, you can use Cheese/V4L2 Test Bench to directly open the USB camera:
You can also use terminal commands to open the camera preview:
root@armsom-cm5:/# gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 ! videoconvert ! video/x-raw,format=NV12,width=1920,height=1080 ! xvimagesink;
Command to take a photo:
root@armsom-cm5:/# gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 ! videoconvert ! video/x-raw,format=NV12,width=1920,height=1080 ! jpegenc ! multifilesink location=/home/armsom/test.jpg;
Command to record a video:
gst-launch-1.0 v4l2src num-buffers=512 device=/dev/video0 io-mode=4 ! videoconvert ! video/x-raw, format=NV12, width=1920, height=1080, framerate=30/1 ! tee name=t ! queue ! mpph264enc ! queue ! h264parse ! mpegtsmux ! filesink location=/home/armsom/test.mp4
The BPI-CM5 Ror Kit features an M.2 Key M connector:
On the back of the product, there is an M.2 Key M connector. The board includes a standard M.2 2280 mounting hole for deploying an M.2 2280 NVMe SSD.
Note: This M.2 interface does not support M.2 SATA SSDs. |
root@armsom-cm5:/# mkdir temp
root@armsom-cm5:/# mount /dev/nvme0n1 temp
Check the sound cards in the system.
root@armsom-cm5:/# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: rockchipes8388c [rockchip,es8388-codec], device 0: 2a610000.sai-ES8323 HiFi ES8323 HiFi-0 [2a610000.sai-ES8323 HiFi ES8323 HiFi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: rockchipdp0 [rockchip-dp0], device 0: rockchip-dp0 spdif-hifi-0 [rockchip-dp0 spdif-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: rockchiphdmi [rockchip-hdmi], device 0: rockchip-hdmi i2s-hifi-0 [rockchip-hdmi i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
Play audio
root@armsom-cm5:/# aplay -D plughw:1,0 ./usr/share/sounds/alsa/Front_Right.wav
The BPI-CM5 Pro Kit comes with a 5V fan using a 0.8mm connector.
The fan has five default states:
Temperature | State | PWM Speed |
---|---|---|
Below 50°C |
0 |
0 |
50°C-55°C |
1 |
50 |
55°C-60°C |
2 |
100 |
60°C-65°C |
3 |
150 |
65°C-70°C |
4 |
200 |
Above 70°C |
5 |
250 |
Check the current speed
root@armsom-cm5:/# cat /sys/class/hwmon/hwmon9/pwm1
The CM5 Kit provides a 40-pin GPIO header, compatible with most sensors on the market.
The CM5 Kit has a green LED.
User Green LED: By default, it remains on to indicate that the system is operating normally.
The CM5 Kit is equipped with an RTC IC LK8563S.
First, insert the RTC battery into the 2-pin header to power the RTC IC.
Note: The RTC battery should remain in the RTC connector, and confirm that the rtc LK8563S device has been created. |
root@armsom-cm5:/# dmesg | grep rtc
[ 3.476710] rtc-hym8563 2-0051: rtc information is valid
[ 3.488534] rtc-hym8563 2-0051: registered as rtc0
[ 3.490109] rtc-hym8563 2-0051: setting system clock to 2024-06-16T09:45:52 UTC (1718531152)
Locate rtc0, then use the following commands to set the system time and synchronize it with rtc0.
root@armsom-cm5:/# hwclock -r
2023-11-03 10:32:40.461910+00:00
root@armsom-cm5:/# date
2023年 11月 03日 星期五 10:33:12 UTC
root@armsom-cm5:/# hwclock -w
root@armsom-cm5:/# hwclock -r
root@armsom-cm5:/# poweroff
Remove the RTC battery, wait for 10 minutes or longer, reinsert the RTC battery, and power on Sige7. Check if the RTC is synchronized with the system clock.
root@armsom-cm5:/# hwclock -r
2023-11-03 10:35:40.461910+00:00
root@armsom-cm5:/# date
2023年 11月 03日 星期五 10:36:01 UTC
Basic Commands
// Check the video formats supported by the video node
root@armsom-cm5:/# v4l2-ctl -d /dev/video11 --get-fmt-video
Format Video Capture Multiplanar:
Width/Height : 1920/1080
Pixel Format : 'RG10' (10-bit Bayer RGRG/GBGB)
Field : None
Number of planes : 1
Flags : premultiplied-alpha, 0x000000fe
Colorspace : Default
Transfer Function : Default
YCbCr/HSV Encoding: Unknown (0x000000ff)
Quantization : Default
Plane 0 :
Bytes per Line : 2560
Size Image : 2764800
// Check the topology
root@armsom-cm5:/# media-ctl -d /dev/media0 -p
The camera uses the camera-module1 module. After connecting and powering the camera module, check the startup logs.
root@armsom-cm5:/# dmesg | grep ov13850
[ 2.302905] ov13850 5-0010: driver version: 00.01.05
[ 2.302944] ov13850 5-0010: Failed to get power-gpios, maybe no use
[ 2.303067] ov13850 5-0010: supply avdd not found, using dummy regulator
[ 2.303153] ov13850 5-0010: supply dovdd not found, using dummy regulator
[ 2.303186] ov13850 5-0010: supply dvdd not found, using dummy regulator
[ 2.303213] ov13850 5-0010: could not get default pinstate
[ 2.303220] ov13850 5-0010: could not get sleep pinstate
[ 2.308532] ov13850 5-0010: Detected OV00d850 sensor, REVISION 0xb2
[ 2.332058] ov13850 5-0010: Consider updating driver ov13850 to match on endpoints
[ 2.332084] rockchip-csi2-dphy csi2-dphy0: dphy0 matches m00_b_ov13850 5-0010:bus type 5
Capture an image using v4l2-ctl
// MIPI-CSI1
root@armsom-cm5:/# v4l2-ctl -d /dev/video31 --set-selection=target=crop,top=0,left=0,width=2112,height=1568 --set-fmt-video=width=2112,height=1568,pixelformat=NV12 --stream-mmap=3 --stream-to=/nv12.bin --stream-count=1 --stream-poll
Record video using gst-launch-1.0
// MIPI-CSI1
root@armsom-cm5:/# gst-launch-1.0 v4l2src device=/dev/video31 ! video/x-raw,format=NV12,width=2112,height=1568, framerate=30/1 ! xvimagesink
The camera uses the Raspberry Pi Camera Module 2 module. After connecting and powering the camera module, check the startup logs.
root@armsom-cm5:/# dmesg | grep imx219
[ 4.049680] imx219 4-0010: driver version: 00.01.02
[ 4.074430] imx219 4-0010: Model ID 0x0219, Lot ID 0x258b89, Chip ID 0x056c
[ 4.074460] imx219 4-0010: Consider updating driver imx219 to match on endpoints
[ 4.074477] rock
chip-csi2-dphy csi2-dphy4: dphy4 matches m01_b_imx219 4-0010:bus type 5
Capture an image using v4l2-ctl
root@armsom-cm5:/# v4l2-ctl -d /dev/video11 --set-selection=target=crop,top=0,left=0,width=2112,height=1568 --set-fmt-video=width=1920,height=1080,pixelformat=NV12 --stream-mmap=3 --stream-to=/nv12.bin --stream-count=1 --stream-poll
Record video using gst-launch-1.0
root@armsom-cm5:/# sudo apt-get update
root@armsom-cm5:/# sudo apt-get install gstreamer1.0*
root@armsom-cm5:/# gst-launch-1.0 v4l2src ! 'video/x-raw, format=NV12, width=1920, height=1080' ! autovideosink
The BPI-CM5 Pro Kit supports resolutions up to 2K@60Hz.
Connect the ribbon cable as shown in the image below:
Configuring a 10.1-inch MIPI LCD screen:
The Linux image does not enable the MIPI LCD screen configuration by default. To use the MIPI LCD screen, you need to enable it manually.
Use nano to open the /boot/armbianEnv.txt file:
sudo nano /boot/armbianEnv.txt
Find or add the "overlays=" keyword in the file.
// Select according to your product
overlays=armsom-cm5-io-display-10hd // cm5-kit
Shortcut keys: Ctrl + S to save, Ctrl + X to exit
After editing, restart the device to apply the Overlays settings for Display 10 HD.