Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

Rock3/Ubuntu

< Rock3
Revision as of 06:59, 28 December 2021 by Stephen (Talk | contribs)

    ROCK 3 >  Ubuntu

Work with ROCK 3 Ubuntu

Introduction to ROCK 3 Ubuntu

This guide is available for official ROCK 3 (ROCK 3 A, Radxa CM3, etc) Ubuntu images.

ROCK 3 Ubuntu server is an easy to use system. While working with ROCK 3 Ubuntu Server, you will find it do well on playing music, Internet, Bluetooth, AI and so on.

ROCK 3 Ubuntu server uses systemd to manage system.

Command prepended by $ means the command may be executed by an unprivileged user. And command prepended by # means the command may be executed by an privileged user. But the symbol, $ or #, is not part of the command.

Access from the Host PC/Laptop

Option 1: Serial console

Check Serial Console

Option 2: SSH

SSH server is enabled on port 22 of ROCK 3 default image.

Please use angryip to find your board IP address.

$ ping ip-of-device
$ ssh rock@ip-of-device

Ubuntu Default User Account

Non-root User:

User Name : rock
Password  : rock

Radxa APT

Radxa APT source includes stable one and testing one. Stable source includes stable packages while testing source includes latest but maybe unstable packages.

Radxa APT stable source is added by default while testing source is not added.

You can uncomment line like "deb http://apt.radxa.com/focal-testing/ focal main" in file /etc/apt/sources.list.d/apt-radxa-com.list to add testing source.

See file /etc/apt/sources.list.d/apt-radxa-com.list

deb http://apt.radxa.com/focal-stable/ focal main
deb http://apt.radxa.com/focal-testing/ focal main

After adding testing source, you need to update APT and install your needed packages.

$ sudo apt-get update

For more detail about Radxa APT, please see Radxa APT.

Upgrade necessary packages

$ sudo apt-get update
$ sudo apt-get install -y rockchip-overlay
$ sudo apt-get install -y linux-4.19-rock-3-latest

NPU

See NPU Run Test.

Network Connection

There are two methods for network connection. One is Ethernet and the other is WIFI.

Ethernet Connection

You can use a network cable (one end connected to the external network port or route) to connect your ROCK 3 to the network. The ROCK 3 will automatically configure the network for your surfing on the Internet.

To test the Ethernet, we need to follow the steps:
  • Switch to super user mode by command
$ sudo su
  • Check whether the Ethernet is normal by command, ifconfig, which would show us a network card, eth0, and the Ethernet IP address. Also, use tool, ping, to connect to a normal domain.
$ ifconfig
$ ping www.baidu.com
  • If failed to connect to a normal domain. , try
$ sudo dhclient eth0

WIFI Connection

When there is not a network cable for your ROCK 3 the WIFI connection is another good choice. See Supported WiFi Cards list.

Radxa APT includes broadcom-wifibt-firmware package for Broadcom wireless modules and intel-wifibt-firmware package for Intel wireless modules. Take a look at your module and download the corresponding packages.

Please note that make sure kernel version is at least 4.19.193-16.

For example:

root@rock3a:~# apt-get update
root@rock3a:~# apt-get install broadcom-wifibt-firmware
root@rock3a:~# apt-get install intel-wifibt-firmware
To test the WIFI performance, we need to follow the steps:
  • Switch to super user mode
$ sudo su
  • Open the WIFI
$ nmcli r wifi on
  • Scan WIFI
$ nmcli dev wifi
  • Connect to WIFI network
$ nmcli dev wifi connect "wifi_name" password "wifi_password"
  • Test WIFI perpormance by tool iperf3.

Bluetooth

See Supported WiFi Cards list to get tested wireless modules.

Radxa APT includes broadcom-wifibt-firmware package for Broadcom wireless modules and intel-wifibt-firmware package for Intel wireless modules. Take a look at your module and download the corresponding packages.

For example:

root@rock3a:~# apt-get update
root@rock3a:~# apt-get install broadcom-wifibt-firmware
root@rock3a:~# apt-get install intel-wifibt-firmware

Below is the example of testing Broadcom modules bluetooth.

  • Check Bluetooth service.
root@rock3a:~# systemctl status bluetooth
  • Run Bluetooth service if the Bluetooth service is inactive.
root@rock3a:~# systemctl start bluetooth
  • Check Bluetooth device.
root@rock3a:~# hciconfig
hci0:   Type: Primary  Bus: UART
       BD Address: 10:2C:6B:49:D5:53  ACL MTU: 1021:8  SCO MTU: 64:1
       UP RUNNING 
       RX bytes:850 acl:0 sco:0 events:58 errors:0
       TX bytes:2814 acl:0 sco:0 commands:58 errors:0
  • Example: Connect to Bluetooth Speaker.
  • Install pulseaudio packages.
root@rock3a:~# apt-get install -y pulseaudio-module-bluetooth pulseaudio
  • Run pulseaudio.
root@rock3a:~$ pulseaudio --start
  • Connect using bluetoothctl.
root@rock3a:~$ bluetoothctl
[bluetooth]# default-agent 
[bluetooth]# power on
[bluetooth]# scan on
[bluetooth]# trust 77:EC:79:4F:6B:AC
[bluetooth]# pair 77:EC:79:4F:6B:AC
[bluetooth]# connect 77:EC:79:4F:6B:AC
  • Play songs and enjoy it.

General purpose input-output (GPIO)

  • ROCK 3 A has one 40-pin expansion header. To control them, see ROCK 3 A GPIO .

Common Hardware Interfaces, I2C, PWM, SPI, UART, CAN, etc

The ROCK 3 system images use configuration file /boot/uEnv.txt.

Warning: Remember there is only one line including item "overlays=" in file /boot/uEnv.txt.

To enable I2C, PWM, SPI, UART, CAN, etc, please see RK3566/RK3568 Available Overlay (ROCK 3 A, ROCK 3 B, Radxa CM3) part of Device Tree Overlays.

Check DDR size

ROCK 3 has several different DDR sizes, such as 2G, 4G, 8G, etc. Here it is 8G.

$ free -h
              total        used        free      shared  buff/cache   available
Mem:          7.4Gi        72Mi       7.1Gi        16Mi       182Mi       7.2Gi 
Swap:            0B          0B          0B

Storage device

  • eMMC: /dev/mmcblk0
  • uSD Card: /dev/mmcblk1
  • NVME M.2 SDD: /dev/nvme0n1

Test RTC Device

Firstly, plug in RTC battery and power on.Check the rtc device:

root@rock3a:~# dmesg | grep rtc
[    0.749597] rk808-rtc rk808-rtc: registered as rtc0
[    0.751404] rk808-rtc rk808-rtc: setting system clock to 2017-08-04 09:00:02 UTC (1501837202)

Secondly, use the following commands to set the system time and synchronize it to rtc.

root@rock3a:~# date -s "2021-08-17 20:00:00"
root@rock3a:~# hwclock -w
root@rock3a:~# hwclock -r
2021-08-17 20:00:04.745124+00:00
root@rock3a:~# poweroff

and then disconnect the power supply

Finally, 10 minutes later we power on ROCK 3 A via Type-C Port and check the rtc clock.

root@rock3a:~# hwclock -r
2021-08-17 20:10:14.745124+00:00

We see that rtc runs about 10 minutes also. That's good.

Test Audio Player

  • Download a wav audio file, and use the command to test the HP player.
$ amixer -c 1 cset numid=1 3
   numid=1,iface=MIXER,name='Playback Path'
    ; type=ENUMERATED,access=rw------,values=1,items=11
    ; Item #0 'OFF'
    ; Item #1 'RCV'
    ; Item #2 'SPK'
    ; Item #3 'HP'
    ; Item #4 'HP_NO_MIC'
    ; Item #5 'BT'
    ; Item #6 'SPK_HP'
    ; Item #7 'RING_SPK'
    ; Item #8 'RING_HP'
    ; Item #9 'RING_HP_NO_MIC'
    ; Item #10 'RING_SPK_HP'
    : values=3

$ aplay -D plughw:1,0 test.wav
$ Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
  • To test the Mic recordding, please follow:
$ amixer -c 1 cset numid=2 1
$ arecord -Dhw:1,0 -d 10 -f cd -r 44100 -c 2 -t wav ./mic_test.wav      #this is a record command
 Recording WAVE './mic_test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
$ aplay -D plughw:1,0 mic_test.wav

Test USB Host

  • Plug in the U dish and use the command by serial console.
rock@rock3a:~$ dmesg | tail
[11831.172069] usb 8-1: SerialNumber: CCYYXI5KH5PRSNCA
[11831.175205] usb-storage 8-1:1.0: USB Mass Storage device detected
[11831.176984] scsi host0: usb-storage 8-1:1.0
[11832.272573] scsi 0:0:0:0: Direct-Access     aigo     U350             1100 PQ: 0 ANSI: 6
[11832.276158] sd 0:0:0:0: [sda] 30720000 512-byte logical blocks: (15.7 GB/14.6 GiB)
[11832.276756] sd 0:0:0:0: [sda] Write Protect is off
[11832.276774] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[11832.277126] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[11832.285978] sda: sda1
[11832.288023] sd 0:0:0:0: [sda] Attached SCSI removable disk
rock@rock3a:~$ sudo mount /dev/sda1 /mnt
rock@rock3a:~$ lsblk
NAME         MAJ:MIN RM  SIZE   RO   TYPE   MOUNTPOINT
sda           8:0    1    14.7G  0    disk 
└─sda1       8:1     1    14.7G  0    part     /mnt
  • If /dev/sda1 is successfully mounted, this usb host is working properly.

Test fan on / off

  • Please execute with root permission
root@rock3a:~# echo 0 > /sys/class/pwm/pwmchip0/export
root@rock3a:~# echo 10000 > /sys/class/pwm/pwmchip0/pwm0/period
root@rock3a:~# echo 5000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
root@rock3a:~# echo normal >  /sys/class/pwm/pwmchip0/pwm0/polarity
root@rock3a:~# echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable        // on
root@rock3a:~# echo 0 > /sys/class/pwm/pwmchip0/pwm0/enable       //  off

Desktop

Option one: Mate Desktop

root@rock3a:~# sudo apt install ubuntu-mate-core
root@rock3a:~# sudo apt install ubuntu-mate-desktop

Changelogs

2021.11.15

rock3a_ubuntu_focal_server_arm64_20211113_0103-gpt.img

  • Kernel version: 4.19.193-16-rockchip-g0cca7bdf9cdb
  • U-Boot version: 2017.09-gf95bc56c33d-210525
  • Support Intel Wireless 3165 / 7265 modules
  • Support boot.scr and dt overlays

2021.09.15

rock3a_ubuntu_focal_server_arm64_20210914_0859-gpt.img

  • Kernel version: 4.19.193-10-rockchip-g152e34a538b4
  • Package broadcom-wifibt-firmware version: 1.3
  • Package rockchip-overlay version: 2.9
  • Package rtl8723be-firmware version: 0.1

2021.08.24

rock3a_ubuntu_focal_server_arm64_20210823_2119-gpt.img

  • Kernel version: 4.19.193-2-rockchip-g7cf7399ddb5c
  • U-Boot version: 2017.09-gbd2fa07970e-210525