Skip to content

Armbian Common System Customizations

Note

Symbol Description:
SDK$: Refers to the source code path
console$: Generally refers to the command line console of the board
ADB$: Android Debug Bridge command-line tool, generally refers to an environment where ADB can be run

Mirror Source Replacement

  • Armbian Official Mirror Source
console$ cat /etc/apt/sources.list.d/armbian.sources 
Types: deb
URIs: https://apt.armbian.com
Suites: noble
Components: main noble-utils noble-desktop
Signed-By: /usr/share/keyrings/armbian-archive-keyring.gpg
  • Ubuntu Official Mirror Source
console$ cat /etc/apt/sources.list.d/ubuntu.sources 
Types: deb
URIs: http://ports.ubuntu.com/
Suites: noble noble-security noble-updates noble-backports
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Startup Script

KICKPI runs the kickpi.sh script by default. You can add startup scripts (or other services) to the kickpi.sh script.

console$ cat /etc/init.d/kickpi.sh 
#!/bin/sh

LOG_FILE=/tmp/kickpi.log
depmod
dmesg -n 1
echo " kickpi.sh run finish !" >> $LOG_FILE

Serial Port Auto Login

# serial-getty auto login
sed -i "s~\(^ExecStart=.*\)~# \1\nExecStart=-/sbin/agetty --autologin $RealUserName --keep-baud 115200,57600,38400,9600 %I \$TERM~" /usr/lib/systemd/system/serial-getty@.service

MIPI Display

The dtbo files already exist in the board

/boot/dtb-6.1.115-vendor-rk35xx/rockchip/overlay/rk3576-kickpi-lcd-mipi-AT101DS40I.dtbo
/boot/dtb-6.1.115-vendor-rk35xx/rockchip/overlay/rk3576-kickpi-lcd-mipi-MX101BA1340.dtbo
/boot/dtb-6.1.115-vendor-rk35xx/rockchip/overlay/rk3576-kickpi-lcd-mipi-MX080B2140.dtbo
/boot/dtb-6.1.115-vendor-rk35xx/rockchip/overlay/rk3576-kickpi-lcd-mipi-F050008M01.dtbo

Operation Example: Connect an 8-inch display model MX080B2140, add the corresponding overlays (overlays=rk3576-kickpi-lcd-mipi-MX080B2140 to add the corresponding dtbo name).

$ vim /boot/armbianEnv.txt 
verbosity=1
bootlogo=true
console=both
overlay_prefix=rk35xx
fdtfile=rockchip/rk3576-kickpi-k7.dtb
rootdev=UUID=389fa6c5-33a8-4653-99ec-f532b9d5a742
rootfstype=ext4
overlays=rk3576-kickpi-lcd-mipi-MX080B2140
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u

4G/5G Module

When a 4G/5G module is detected, /usr/bin/quectel-CM will be executed to dial up for network access during boot. You can customize 4G/5G module software functions through the official Quectel Linux Software.

GCC Toolchain

  • Installation Command
apt update && apt install -y build-essential manpages-dev

Chromium Browser

It is recommended to use the Chromium browser. Test results show good video playback performance and smooth operation.

  • Installation Method
console$ sudo apt update
console$ sudo apt install chromium

FireFox Browser

The Firefox browser has a profile issue that prevents it from opening after device reboot.

  • Installation Method
console$ sudo apt update
console$ sudo apt install firefox
  • Profile Issue

Method 1

Enter the following command in the Linux terminal to launch the Firefox browser's profile management interface, delete the incorrect profile, and create a new profile to start Firefox.

$ firefox -profilemanager

Method 2

$ rm ~/.mozilla/firefox/ -rfv

Export and Modify Armbian Image

1. Export the filesystem image to a storage medium such as a USB drive or SD card

sudo ./ff_export_rootfs /mnt/ -t ext4

2. Verify the filesystem image size

// Compare the image size. The exported ext image is approximately 7G, which is larger than the original Armbian image
$ ls -lh *.img
-rwxr--r--  1 hcm  hcm  6.9G Jun 12 16:18 Armbian-unofficial_25.08.0-trunk_noble_ext4_202506121342.img
-rw-rw-r--  1 hcm  hcm  6.3G Jun 12 16:22 armbian.img

3. If the filesystem image is larger than the original image capacity, you need to adjust the original Armbian image capacity

Adjust the Armbian image size to 8G

$ sudo fallocate -l 9G armbian.img

Verify node creation

$ sudo losetup -P /dev/loop777 ./armbian.img

Use the parted tool to adjust partition size

$ sudo parted /dev/loop777
# In parted, execute:
# Fix # Select fix
# (parted) print free  # View current partitions and available space
# (parted) resizepart 1 100% # Select to resize the first partition
# (parted) print         # Confirm partition information
# (parted) quit          # Exit

Adjust filesystem size

 # Check filesystem (optional but recommended)
$ sudo e2fsck -f /dev/loop777p1 
# Expand filesystem to maximum
$ sudo resize2fs /dev/loop777p1  

4. Mount the Armbian image filesystem

$ sudo mount /dev/loop777p1 orgin/  

5. Mount the exported filesystem

$ sudo mount ext4.img copy/

6. Replace the filesystem

$ sudo cp -rfp copy/* orgin/

7. Unmount

sudo umount copy/
sudo umount orgin/
sudo losetup -d /dev/loop777

8. The image modification is complete. The above steps can also be performed using the rootfs.sh script for updates.

RKNN Deployment

The system supports deployment of rknn-toolkit2 and rknn_model_zoo. Click to jump to the Rockchip official documentation.