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


    ROCK Pi S >  Ubuntu

Work with ROCK Pi S Ubuntu

Introduction to ROCK Pi S Ubuntu

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

ROCK Pi S Ubuntu uses systemd to manage system.

Access from the Host PC/Laptop

Option 1: USB access(adb)

By default, the ROCK Pi S Linux image enables adbd services, which is a debug bridge from Android now ported on Linux. With one USB A to C cable you can power and access the board, very handy.

To use adb, you need to install adb tool on the PC/Laptop. Check instructions for Windows and Linux.

After you have adb installed successfully, run the following command on console to login the shell of ROCK Pi S:

   adb shell

Check Using adb.

Option 2: Serial console

Check Serial Console

Option 3: SSH

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

Please use angryip to find your board IP address.

To access ROCK Pi S by SSH, try

   ping rockpis.local
   ssh rock@rockpis.local

or if your router/network doesn't support Local Domain, you need to check your network/router administrator page and look for the ROCK Pi S ip address.

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

Note: You can also get the IP of ROCK Pi S from option 1 or option 2 if you can not access network administrator page.

Default User Account

Non-root User:

   User Name : rock
   Password  : rock

Update necessary packages

Add Radxa APT, see Radxa APT.

Install packages:

 $ sudo apt-get update
 $ sudo apt-get install -y apt-utils # without this, the adb connection might break during installation of rockchip-adb
 $ sudo apt-get install -y rockchip-overlay
 $ sudo apt-get install -y linux-4.4-rockpis-latest rockpis-dtbo
 $ sudo apt-get install -y rtl8723ds-firmware rockchip-adb resize-assistant
 $ sudo apt-get install -y rockpis-dtbo # For those ROCK Pi S system images released before March 1st, 2020

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 Pi S to the network. The ROCK Pi S 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
  • If failed to connect to a normal domain. , try
 $ sudo dhclient eth0

WIFI Connection

When there is not a network cable for your ROCK Pi S the WIFI connection is another good choice. ROCK Pi S supports 2.4G WIFI wireless network.

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 iperf.


Update necessary packages

 $ sudo apt-get update
 $ sudp apt-get install -y rockchip-overlay
 $ sudo apt-get install -y linux-4.4-rockpis-latest # kernel version(>=
 $ sudo apt-get install -y rtl8723ds-firmware bluez

Check Bluetooth service

 $ systemctl status bluetooth

Run Bluetooth service if the Bluetooth service is inactive.

 $ systemctl start bluetooth

Check Bluetooth device

 $ hciconfig
 hci0:   Type: Primary  Bus: UART
         BD Address: 22:22:AA:25:49:1E  ACL MTU: 1021:8  SCO MTU: 255:12
         UP RUNNING 
         RX bytes:4424 acl:0 sco:0 events:81 errors:0
         TX bytes:3820 acl:0 sco:0 commands:52 errors:0

Example: Connect to Bluetooth Speaker.

Change to root mode.

 $ sudo su

Install pulseaudio packages

 # apt-get install -y pulseaudio-module-bluetooth pulseaudio

Run pulseaudio

 # pulseaudio --start

Connect using bluetoothctl

 # 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.

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

The ROCK Pi S system images released before March 1st, 2020 use hw_intfc.conf to configure interfaces while those which released after March 1st, 2020 use uEnv.txt. We suggest that you use the latest system images.

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

For more details about device tree overlays, see Device Tree Overlays and ROCK Pi S Libmraa.


To enable I2C-0 (/dev/i2c-0), add item "rk3308-i2c0" to the "overlays=" line.


To enable I2C-1 (/dev/i2c-1), add item "rk3308-i2c1" to the "overlays=" line.


To enable I2C-2 (/dev/i2c-2), add item "rk3308-i2c2" to the "overlays=" line.


To enable I2C-2 (/dev/i2c-3), add item "rk3308-i2c3" to the "overlays=" line.



To enable PWM1, add item "rk3308-pwm1" to the "overlays=" line.


To enable PWM2, add item "rk3308-pwm2" to the "overlays=" line.


To enable PWM3, add item "rk3308-pwm3" to the "overlays=" line.



To enable SPI2, add item "rk3308-spi-spidev" to the "overlays=" line.



The debugger console baud rate options: 1500000n8 and 115200n8.

To disable debugger console, just need to delete "console=" line in file /boot/uEnv.txt.

To set ttyS0 as debugger console, add item "rk3308-uart0" to the "overlays=" line. Also need to set console value.


To set ttyS1 as debugger console, add item "rk3308-uart1" to the "overlays=" line. Also need to set console value.


To set ttyS2 as debugger console, add item "rk3308-uart2" to the "overlays=" line. Also need to set console value.


To set ttyS0, ttyS1 and ttyS2 as common serial communication devices, add these items "rk3328-uart0", "rk3328-uart1" and "rk3328-uart2" to the "overlays=" line. The device /dev/ttyS0, /dev/ttyS1, /dev/ttyS2, are available.

 overlays=rk3308-uart0 rk3308-uart1 rk3308-uart2


USB port, working in host mode, enables the attachment of peripherals such U Disk, keyboards, mice, USB dongle like USB camera, etc.

USB port, working in OTG mode, supports USB gadget function including adb, USB RNDIS, USB subnet etc.

There are two USB ports on ROCK Pi S. One is Type-A port and the other is Type-C port. By default, on Ubuntu system Type-A port is working in host mode. Type-C port is configured in OTG mode. With software configuration, Type-C port can also work in host mode.

Use USB Camera

Check ROCK Pi S Camera module.

Use USB Device Network

Check ROCK Pi S USB Device Network.

Type-C port in host mode

To configure Type-C port in host mode, add item "rk3308-usb20-host" to the "overlays=" line in file /boot/uEnv.txt.

Kernel version: >=



See ROCK Pi S Display.

Use Array Microphones with ROCK Pi S PoE

Storage Device

  • uSD Card: /dev/mmcblk0
  • SD Nand: /dev/mmcblk1

Boot Device Order

SD Nand -> uSD Card




  • Fix the issue of failing to find root device. System boot log may show like this.
 [    1.478059] RAMDISK: gzip image found at block 0
 [    1.581744] RAMDISK: incomplete write (23864 != 32768)
 [    1.581801] write error
 [    1.581895] Waiting for root device UUID=37055840-4ec4-444f-979b-9e47ee4bd848...
  • Kernel version: 4.4.143-52-rockchip-g7ed61b60d176



  • Kernel version: 4.4.143-48-rockchip-geacd15ae244f
  • Rename rockchip-adb package to rockchip-adbd.
  • U-boot version: 2017.09-02378-g6de46245e6
  • Update uEnv and boot.scr.
  • Use ttySx as debuger console instead of ttyFIQ0.



  • Available for at least 256 MB DDR SDRAM
  • Kernel version: 4.4.143-39-rockchip-gdaf243b9655a
  • Support uEnv and boot.scr
  • The version of systemd: 237
  • U-boot version: 2017.09-02377-gc3d3bc84be



  • U-boot version: 2017.09-02370-g6d65a50f1e
  • Kernel version: 4.4.143-34-rockchip-g3c9d2019dba7
  • System partitions: boot and rootfs
  • Default serial console: UART0
  • Default non-root user: rock (password: rock)
  • Hostname: rockpis
  • Support adb by default.
  • Support SSH by default.
  • Resize root filesystem to fit available disk space for the first boot
  • Automatically load Bluetooth firmware after system startup.