hostnamectl
tr '\0' '\n' < /proc/device-tree/model
tr '\0' '\n' < /proc/device-tree/compatible
uname -a
lscpu
free -h
lsblk -o NAME,MAJ:MIN,RM,SIZE,RO,TYPE,FSTYPE,MOUNTPOINTS
findmnt -no SOURCE,FSTYPE,SIZE,USED,AVAIL,USE%,TARGET /
Banana Pi BPI-CM7 is an Allwinner H618 compute module designed for use with the BPI-CM7IO carrier board.
| More Infomation: Banana Pi BPI-CM7 Main Page |
Allwinner H618, Quad-core ARM Cortex™-A53 processor, up to 1.5 GHz
ARM Mali G31 GPU
Onboard LPDDR4 memory
Onboard eMMC storage
K019-CW43-Dw Wi-Fi 5 and Bluetooth 5.0 module
1x USB 2.0 OTG
3x USB 2.0 Host
1x HDMI output
1x 10/100M Ethernet
1x microSD interface
2x 100-pin board-to-board connectors
Download latest Android image.
Download and Install Allwinner Image Download Tools, PhoenixSuit is for window.
Type-C cable, 5V power supply.
Use the following commands to confirm the board model, operating system, CPU, memory, and boot storage.
hostnamectl
tr '\0' '\n' < /proc/device-tree/model
tr '\0' '\n' < /proc/device-tree/compatible
uname -a
lscpu
free -h
lsblk -o NAME,MAJ:MIN,RM,SIZE,RO,TYPE,FSTYPE,MOUNTPOINTS
findmnt -no SOURCE,FSTYPE,SIZE,USED,AVAIL,USE%,TARGET /
Test result:
Board: Banana Pi BPI-CM7 with BPI-CM7IO
OS: Armbian 24.11.1 jammy / Ubuntu 22.04.5 LTS
Kernel: Linux 5.4.125-legacy-sunxi64
Architecture: arm64
CPU: 4 x Cortex-A53, up to 1512 MHz
Memory: 1.9 GiB available to Linux
Boot device: microSD, /dev/mmcblk1p1
eMMC: /dev/mmcblk0, 29.3 GiB
Login user used for the test: pi
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.
Use the following commands to check whether the system boots to the graphical target and whether the display manager is running.
systemctl get-default
systemctl is-active display-manager
loginctl list-sessions
Test result:
graphical.target
active
Prepare a network cable and a router.
Connect the BPI-CM7IO Ethernet port and the PC to the same LAN.
Check the board IP address from the router management page, or run the following command from a local terminal on the board.
ip -brief address show eth0
hostname -I
Check the SSH service status on the board.
systemctl is-active ssh
Open a terminal on the PC and connect to the board. Replace <board-ip> with the actual address assigned by the router.
ssh pi@<board-ip>
After login, use the following commands to confirm the remote user, board name, and kernel.
whoami
hostnamectl --static
uname -r
Test result:
SSH service: active
Remote login: successful
User: pi
Hostname: bpi-cm7
Kernel: 5.4.125-legacy-sunxi64
Check whether armbian-config is installed.
command -v armbian-config
Enter the Armbian configuration utility with the following command.
sudo armbian-config
Test result:
/usr/bin/armbian-config
Use the nmcli command to list network devices and scan Wi-Fi access points.
nmcli device # List devices
nmcli device wifi list # List available Wi-Fi access points
rfkill list # Check whether Wi-Fi is blocked
Use the following commands to connect, disconnect, or create a Wi-Fi hotspot.
nmcli device wifi connect [SSID] password [PASSWORD]
nmcli connection up [SSID]
nmcli device disconnect [device name]
nmcli device wifi hotspot con-name [NAME] ifname [device name] ssid [SSID] password [PASSWORD]
nmcli connection show
nmcli connection down [NAME]
nmcli connection up [NAME]
nmcli connection delete [SSID]
nmcli radio wifi off
nmcli radio wifi on
Test result:
Interface: wlan0
rfkill soft blocked: no
rfkill hard blocked: no
Wi-Fi scan: successful
Chrony is used in the tested image for network time synchronization.
Use the following commands to check the system clock, synchronization status, Chrony service, and time sources.
timedatectl status
systemctl status chrony
chronyc tracking
chronyc sources -v
date
Use the following commands to manage the Chrony service.
sudo systemctl start chrony
sudo systemctl enable chrony
sudo systemctl restart chrony
Use the following commands to list or change the time zone.
timedatectl list-timezones
sudo timedatectl set-timezone Asia/Shanghai
Test result:
System clock synchronized: yes
NTP service: active
Chrony service: active
Time zone during test: Etc/UTC
Use the following commands to identify the four thermal zones.
cat /sys/class/thermal/thermal_zone0/type
cat /sys/class/thermal/thermal_zone1/type
cat /sys/class/thermal/thermal_zone2/type
cat /sys/class/thermal/thermal_zone3/type
Use the following commands to read the temperatures.
cat /sys/class/thermal/thermal_zone0/temp
cat /sys/class/thermal/thermal_zone1/temp
cat /sys/class/thermal/thermal_zone2/temp
cat /sys/class/thermal/thermal_zone3/temp
Divide each returned value by 1000 to obtain the temperature in degrees Celsius.
Test result:
cpu_thermal_zone: 50.2 °C
ddr_thermal_zone: 51.4 °C
gpu_thermal_zone: 53.4 °C
ve_thermal_zone: 50.8 °C
Use the following command to list the audio playback devices.
aplay -l # List playback devices
Test result:
**** List of PLAYBACK Hardware Devices ****
card 0: audiocodec [audiocodec], device 0: soc@3000000:codec_plat-5096000.codec 5096000.codec-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: ahubhdmi [ahubhdmi], device 0: ahub_plat-snd-soc-dummy-dai snd-soc-dummy-dai-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
SCP uses the SSH protocol to copy files securely between the PC and BPI-CM7. Make sure the PC and board are connected to the same LAN and that SSH login works first.
The SCP command format is:
scp [options] file_source file_target
Use -r to copy a directory recursively.
Copy a local file from the PC to BPI-CM7:
scp local-file pi@<board-ip>:/home/pi/
Copy a file from BPI-CM7 to the PC:
scp pi@<board-ip>:/home/pi/remote-file ./
Test result:
Upload to /tmp: successful
Remote file size and SHA-256 verification: successful
Temporary test file removal: successful
GNU nano is a command-line text editor and is installed in the tested image.
Open a file with nano [file path].
Edit the file.
Press Ctrl+O to write the file.
Edit or confirm the file path, then press Enter.
Press Ctrl+X to exit nano.
Test result:
/usr/bin/nano