2020-03-06
md
A Second Look at the Orange Pi PC 2
ALSA and Bluetooth on the Orange Pi PC 2 with Armbian Bionic-> <-Creating a Custom Armbian Image

Almost two years after getting an Orange Pi Zero, I purchased an Orange Pi PC 2 (OPiPC2 for short) built around the AllWinner H5 system on a chip. I wrote a draft describing the board, but never got around to finishing it. That was six months ago. A few days ago, I took a second look at the board, and this time I will put up a post on it.

This announcement is now all that's left of the Orange Pi PC 2 on the "official" AliExpress store.

When did this happen? I am sure the board was available just a couple of days ago. This is not entirely unexpected. Sometimes I think Shenzhen Xunlong Software comes out with a new board every couple of weeks. Based on the number of orders for the OPiPC2 and other boards, it seems that sales of the PC 2 never really took off.

So this is a first and second look at an orphaned single board computer. Something new for me!

Table of Contents

  1. The Orange Pi PC 2
  2. Copy Armbian onto a microSD card
  3. Initial boot
    1. Connect with SSH over Ethernet
    2. Connect with a Serial Link
    3. Create a Default User
  4. U-Boot
  5. Basic Configuration
  6. Wi-Fi
  7. Updating Armbian Bionic
  8. Save the Modified OS Image
  9. On Board Hardware
    1. Real Time Clock
    2. Power Button
    3. Infrared Receiver
    4. Power and Status LEDs
    5. CPU and GPU Temperature
  10. Upcoming Posts and Some Ramblings

The Orange Pi PC 2 toc

The image below describes rather well the Orange Pi PC 2.

Source: SUNXI

On the back side there is a TF card slot, but a micro SD memory card can be used also. The OPiPC2 is more or less a direct competitor to the Raspberry Pi 3 B or B+, without Wi-Fi and Bluetooth are not on board, but it has a built-in IR receiver and microphone and it costs less. Here is a more comprehensive comparison, which I hope is accurate.

Orange Pi PC 2Raspberry Pi 3 BRaspberry Pi 3 B+
SOCAllwinner H5BCM 2837BCM 2837B0
CPUARM Cortex A53
Cores4 (64 bits)
FPUVFPv4 + NEON per core
Frequency1.2GHz1.2GHz1.4GHz
GPUMali400 (600MHz)VideoCore IV (400Mhz)
RAM1GB DDR31GB DDR2
StorageMicroSDHC
NOR Flash2MBnone
Ethernet100Mb/1GB10/100Mb10/100Mb/1Gb
Wi-Finone2.4 GHz  2.4 GHz and 5 GHz
Bluetoothnone4.1 LE4.2 LS BLE
USB 2.0 HOST34
USB 2.0 OTG1none
HDMI output1 (full size connector)
Composite videoyes (on  3.5 mm jack, shared with audio)
Display connectornoneDSI
Camera connectorCSICSICSI
GPIO40 pins
UART header3 pinnone
RUN connectornoneyes
Switchyesnone
Microphoneyesnone
IR receiveryes (CEC)none
Power supplymin. 2A at 5Vmin 1.4 A at 5Vmin. 1.2 A at 5V
Power source4.0mm/1.7mm barrel jackmicro USB
POEnoneyes
Dimensions88x55 mm85.6x56.5mm85.6x56.5mm
Price$24.00 with PSU$35.00$35.00
In productionnoUntil at least 2022Until at least 2023

The 40 pin GPIO header is probably not fully compatible with the Raspberry Pi standard but power, ground do correspond and the serial communication buses UART, I2C and SPI use the same pins if not the same names. More on that in another post. Take the power supply figures with a grain of salt. The values I found for the minimum current are different according to different sources and that makes sense. It all depends on what is running and connected to the various buses at the time the current measurements are made. I will say that because the Orange Pi Zero was fussy about its power supply and because the OPiPC2 has a barrel jack for power that is of a less common size (4.0mm/1.7mm), I purchased the power supply from the vendor at the same time as the board. Prices are in US dollars and exclude shipping, taxes, tariffs etc.

Here are some references about the board.

Copy Armbian on a microSD card toc

Getting an Armbian image from the Armbian download page for the Orange Pi PC 2 means making a choice among a number of distributions. I started with current Armbian Bionic mainline based kernel 5.4.y

The downloaded file is a 7z compressed archive so it is necessary to extract the image file,
Armbian_20.02.0-rc1_Orangepipc2_bionic_current_5.4.14.img
in order to use Balena Etcher to copy the image to an SD card. Installing the current version of balenaEtcher in a Linux system is quite simple. Extract the application, balenaEtcher-xxxxxxxx.AppImage from the downloaded archive and copy it to ~/.local/bin (it could just about anywhere in the home directory). Delete any old application desktop file. Lately, these are named appimagekit-balena-etcher-electron.desktop and are stored in the /home/michel/.local/share/applications/ directory.

Nothing needs to be done to the image once it is on the SD card. SSH is already enabled and so is the debug UART. Of course, the SD card must be inserted into the TF slot of the OPiPC2 which should be done when there is no power to the board.

Initial Boot toc

As far as I know, there are three ways to boot the Orange Pi PC 2 for the first time:

I do not use the first method because the only available monitors are connected to the desktop computer and it's too much trouble to disconnect one of them. Besides, the OPiPC2 is destined to be used as a headless server so it's just as well to start off that way by using one of the two remaining options. If all else fails, I could always go to the first option.

If the OPiPC2 is powered up without an SD card inserted, it will look dead. No LED will light up. Nevertheless it is probably working, but it is in FEL mode:
FEL is a low-level subroutine contained in the BootROM on Allwinner devices. It is used for initial programming and recovery of devices using USB. There is no FEL button on this board. Booting without an SD card automagically enters FEL mode.
Reference: FEL mode activation.

It can be found by connecting the micro USB port to one of the desktop USB ports and then listing all USB devices.

michel@hp:~$ lsusb ... Bus 003 Device 012: ID 1f3a:efe8 Onda (unverified) V972 tablet in flashing mode

Connect with SSH over Ethernet toc

Connect the OPiPC2 to the local area network with an Ethernet cable and power up the board. The first sign of life, after about 5 seconds, will come from the green LED near micro USB connector. The green LED on the bottom right side of the RJ45 connector is an activity indicator. It should begin to flash after a short while. The orange LED on the left side is a link indicator. Wait until it is solidly lit, which will take quite a while on the first boot; be patient. Once the link has been established, it should be possible to open an SSH session from a desktop on the same LAN.

Unfortunately, Armbian, unlike Raspbian does not include the avahi daemon that advertises the board on the LAN. It will be necessary to carry out the usual hunt for the dynamically assigned IP address of the OPiPC2. I used nmap on my Linux (Ubuntu) desktop to search for open SSH ports (port 22) in the range of addresses the DHCP server uses on my LAN.

michel@hp:~$ nmap --open -sV -p 22 192.168.0.100-254 Starting Nmap 7.60 ( https://nmap.org ) at 2020-02-12 16:34 AST Nmap scan report for 192.168.0.139 Host is up (0.0068s latency). PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0) Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

If the DHCP range is not known, scan the complete subnet which in my case is 192.168.0.0/24. If you don't know the LAN subnet, get the IP address of the desktop, from which it is relatively easy to deduce the subnet.

michel@hp:~$ ip -4 -o address 1: lo inet 127.0.0.1/8 scope host lo\ valid_lft forever preferred_lft forever 3: wlp3s0 inet 192.168.0.15/24 brd 192.168.0.255 scope global noprefixroute wlp3s0\ valid_lft forever preferred_lft forever

Finally, here is what the first boot using an Ethernet connection looks like.

michel@hp:~$ ssh root@192.168.0.139 The authenticity of host '192.168.0.139 (192.168.0.139)' can't be established. ECDSA key fingerprint is SHA256:CdBZoYYSWjPiZV8fxbN62a4TK8cSDNDKQoAmA73t3qX. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.0.139' (ECDSA) to the list of known hosts. Password: 1234 not echoed on screen

A default user must now be created. Skip over the following section to continue to that part of the initial boot.

Connect with a Serial Link toc

If connecting to the Ethernet is not possible, then the initial boot of the OPiPC2 can be done with a USB to UART cable/converter as long as the latter operates at 3.3 volts.

  1. Disconnect the power supply to the OPiPC2.
  2. Connect the USB-UART adapter to the OPiPC2 and to the desktop computer in the following manner:
    • Connect the UART portion of the adapter to the appropriate pins on the OPiPC2 debug serial connector near the power socket. The pins are clearly labelled. Do not forget to connect of each device Rx to Tx of the other device.
    • Check which USB devices are already connected to the desktop computer:
      michel@hp:~$ ls /dev/ttyUSB* /dev/ttyUSB1
    • Connect the USB connector of the adapter to the desktop computer.
    • Get the name of the new USB device now connected to the Linux computer.
    • Launch a communication software like Minicom, Screen or Kermit by specifying the name of the new device and the baud.
      michel@hp:~$ ls /dev/ttyUSB* /dev/ttyUSB0 /dev/ttyUSB1 michel@hp:~$ minicom -D /dev/ttyUSB0 -b 115200

Of course, the name of the device following the -D switch on the command line must be the name of the new device. Apply power to the OPiPC2 and a number of cryptic U-boot messages should start appearing in the serial communication window.

... Armbian 20.02.0-rc1 Bionic ttyS0 orangepipc2 login: root Password: 1234 not echoed on screen

Create a Default User toc

No matter how the login was performed, it will be necessary to define a default user.

You are required to change your password immediately (root enforced) Changing password for root. (current) UNIX password: 1234 not echoed on screen Enter new UNIX password: xxxxxx not echoed on screen Retype new UNIX password: xxxxxx not echoed on screen
___ ____ _ ____ ____ ____ / _ \| _ \(_) | _ \ / ___|___ \ | | | | |_) | | | |_) | | __) | | |_| | __/| | | __/| |___ / __/ \___/|_| |_| |_| \____|_____|
Welcome to Armbian Bionic with Linux 5.4.14-sunxi64 System load: 0.00 0.07 0.06 Up time: 7 min Memory usage: 8 % of 989MB IP: CPU temp: 25°C Usage of /: 7% of 15G New to Armbian? Check the documentation first: https://docs.armbian.com Thank you for choosing Armbian! Support: www.armbian.com Creating a new user account. Press <Ctrl-C> to abort Please provide a username (eg. your forename): opipc Trying to add user opipc Adding user `opipc' ... Adding new group `opipc' (1000) ... Adding new user `opipc' (1000) with group `opipc' ... Creating home directory `/home/opipc' ... Copying files from `/etc/skel' ... Enter new UNIX password: yyyyy not echoed to screen Retype new UNIX password: yyyyy not echoed to screen passwd: password updated successfully Changing the user information for opipc Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y Dear opipc, your account opipc has been created and is sudo enabled. Please use this account for your daily work from now on. root@orangepipc2:~# exit

As shown at the last line above, it is best to immediately close the root session and to login in as the default user.

If the connection was over the UART

Ubuntu 18.04.4 LTS orangepipc2 ttyS0 orangepipc2 login: opipc Password: yyyyy not echoed to the screen Last login: Wed Feb 12 17:05:49 UTC 2020 on ttyS0

If the connection was over an SSH session

logout Connection to 192.168.0.139 closed. michel@hp:~$ ssh opipc@192.168.0.139 opipc@192.168.0.139's password: yyyyy not echoed to the screen

The operationg system will display its boot screen.

___ ____ _ ____ ____ ____ / _ \| _ \(_) | _ \ / ___|___ \ | | | | |_) | | | |_) | | __) | | |_| | __/| | | __/| |___ / __/ \___/|_| |_| |_| \____|_____|
Welcome to Armbian Bionic with Linux 5.4.14-sunxi64 System load: 0.01 0.02 0.01 Up time: 17 min Memory usage: 8 % of 989MB IP: 192.168.0.139 CPU temp: 27°C Usage of /: 7% of 15G To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details.

U-Boot toc

U-Boot, the universal boot loader, is stored in NOR flash memory on the Orange Pi PC 2. It can be seen in action when a serial connection to the OPiPC2 is in place and probably on a monitor if one were connected to the board.

U-Boot SPL 2019.10-armbian (Jan 25 2020 - 21:18:31 +0100) DRAM: 1024 MiB Trying to boot from MMC1 NOTICE: BL31: v2.2(debug):b253407-dirty NOTICE: BL31: Built : 21:18:19, Jan 25 2020 NOTICE: BL31: Detected Allwinner H5 SoC (1718) NOTICE: BL31: Found U-Boot DTB at 0x40a1650, model: Xunlong Orange Pi PC 2 INFO: ARM GICv2 driver initialized INFO: Configuring SPC Controller NOTICE: PMIC: Assuming H5 reference regulator design INFO: BL31: Platform setup done INFO: BL31: Initializing runtime services INFO: BL31: cortex_a53: CPU workaround for 855873 was applied INFO: BL31: Preparing for EL3 exit to normal world INFO: Entry point address = 0x4a000000 INFO: SPSR = 0x3c9 U-Boot 2019.10-armbian (Jan 25 2020 - 21:18:31 +0100) Allwinner Technology CPU: Allwinner H5 (SUN50I) Model: Xunlong Orange Pi PC 2 DRAM: 1 GiB MMC: mmc@1c0f000: 0 Loading Environment from EXT4... ** File not found /boot/boot.env ** ** Unable to read "/boot/boot.env" from mmc0:1 ** In: serial Out: serial Err: serial Allwinner mUSB OTG (Peripheral) Net: phy interface7 eth0: ethernet@1c30000 Warning: usb_ether using MAC address from ROM , eth1: usb_ether 230454 bytes read in 14 ms (15.7 MiB/s) starting USB... Bus usb@1c1a000: USB EHCI 1.00 Bus usb@1c1a400: USB OHCI 1.0 Bus usb@1c1b000: USB EHCI 1.00 Bus usb@1c1b400: USB OHCI 1.0 Bus usb@1c1c000: USB EHCI 1.00 Bus usb@1c1c400: USB OHCI 1.0 Bus usb@1c1d000: USB EHCI 1.00 Bus usb@1c1d400: USB OHCI 1.0 scanning bus usb@1c1a000 for devices... 1 USB Device(s) found scanning bus usb@1c1a400 for devices... 1 USB Device(s) found scanning bus usb@1c1b000 for devices... 2 USB Device(s) found scanning bus usb@1c1b400 for devices... 1 USB Device(s) found scanning bus usb@1c1c000 for devices... 1 USB Device(s) found scanning bus usb@1c1c400 for devices... 1 USB Device(s) found scanning bus usb@1c1d000 for devices... 1 USB Device(s) found scanning bus usb@1c1d400 for devices... 2 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Autoboot in 1 seconds, press <Space> to stop switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... Found U-Boot script /boot/boot.scr 3033 bytes read in 3 ms (987.3 KiB/s) ## Executing script at 4fc00000 U-boot loaded from SD Boot script loaded from mmc 179 bytes read in 2 ms (86.9 KiB/s) 28703 bytes read in 6 ms (4.6 MiB/s) 374 bytes read in 5 ms (72.3 KiB/s) Applying kernel provided DT overlay sun50i-h5-i2c0.dtbo 4161 bytes read in 5 ms (812.5 KiB/s) Applying kernel provided DT fixup script (sun50i-h5-fixup.scr) ## Executing script at 44000000 9568677 bytes read in 461 ms (19.8 MiB/s) 15687688 bytes read in 753 ms (19.9 MiB/s) ## Loading init Ramdisk from Legacy Image at 4fe00000 ... Image Name: uInitrd Image Type: AArch64 Linux RAMDisk Image (gzip compressed) Data Size: 9568613 Bytes = 9.1 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 4fa00000 Booting using the fdt blob at 0x4fa00000 Loading Ramdisk to 496df000, end 49fff165 ... OK Loading Device Tree to 000000004966f000, end 00000000496defff ... OK Starting kernel ...
  1. An on chip ROM called the Boot ROM or BROM for short "Supports system boot from the following devices:
    • NAND Flash
    • SD/TF card
    • eMMC
    • Nor Flash"
    (Source: Allwinner Technology H5 Datasheet(Revision 1.0) p. 41)

    This is the "primary program loader". It's function is to load the U-Boot "secondary program loader" (or SPL).

  2. The U-Boot SPL then loads U-Boot proper.
  3. U-Boot then loads the Linux kernel and once that is done, execution is then passed on to the kernel.

From the messages, it appears that the BROM attempted to load a file named /boot/boot.env from the SD card and that failed. Then it looked for storage devices on the USB bus and that failed. So the BROM finaly loaded SPL which is in NOR flash memory. U-Boot proper and Linux are on the SD card.

Basic Configuration toc

If you don't want to be asked for a password every time sudo is used, edit the /etc/sudoers file and add an entry for the default user as shown in red below.

opipc@orangepipc2:~$ sudo visudo [sudo] password for opipc: yyyyy Not echoed to the screen
... # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # Default user privileges opipc ALL=(ALL:ALL) NOPASSWD: ALL # See sudoers(5) for more information on "#include" directives: ...

At this point basic configuration of the system can be done with the Armbian configuration utility.

opipc@orangepipc2:~$ sudo armbian-config [sudo] password for opipc: yyyyy Only if sudoer not modified as suggested above Warning: Configuration cannot work properly without a working internet connection. Only if Ethernet not connected Press CTRL C to stop or any key to ignore and continue. " ; press space bar or another key
Configuration utility, Armbian 20.02.0-rc1 stable ────────────────────────────────────────────────────────────────────────────── ┌───────────────────────────── armbian-config ─────────────────────────────── Configure Ubuntu bionic based Armbian for the Orange Pi PC2 SoC runs between 480 and 1368 MHz using ondemand governor. │ Support: https://forum.armbian.com ┌──────────────────────────────────────────────────────────────────────── System System and security settings Network Wired, wireless, Bluetooth, access point Personal Timezone, language, hostname Software System and 3rd party software install Help Documentation, support, sources ────────────────────────────────────────────────────────────────────────┘ ├──────────────────────────────────────────────────────────────────────────── < OK > < Exit > │ ────────────────────────────────────────────────────────────────────────────┘

Since this will be a headless server, there is really only one thing to do and that is to change the time zone. Use the up and down cursor keys or the mouse to select the third choice: Personal and click on < OK > or press the Enter key. Then, with the cursor keys (the mouse does not work), select your geographic area in the list, America in my case, and then press the Enter key. Repeat the process to select a city in the correct time zone. Once this is done, back out of the utility by selecting < Cancel >, < Back >, or < Exit > as needed.

Wi-Fi toc

If a Wi-Fi connection is to be used, and it must be setup in order to update the operating system without an Ethernet connection, then insert a USB-WiFi dongle in a USB port and see if the device is found.

opipc@orangepipc2:~$ lsusb ... Bus 003 Device 002: ID 0bda:8179 Realtek Semiconductor Corp. RTL8188EUS 802.11n Wireless Network Adapter ...

This was the first WI-FI dongle I purchased. Unfortunately, Raspbian no longer supports the RTL8188EUS, but luckily Armbian still does. Since Net Manager is used to manage network connections on the Armbian, it is used to enable the Wi-Fi interface and set the wireless credentials.

opipc@orangepipc2:~$ nmtui

┌─┤ NetworkManager TUI ├──┐ │ │ Please select an option │ │ │ Edit a connection │ Activate a connection │ Set system hostname │ │ │ │ Quit │ │ │ │ <OK> │ │ │ └─────────────────────────┘

Select the correct Wi-Fi network.

┌───────────────────────────────────────────────┐ │ │ ┌──────────────────────────────┐ Wired ↑ <Activate> │ * Wired connection 1 ▒ Wi-Fi ▒ RTL8186-default ▂▄▆█ ▒ WIFI-NET-2 ▂▄▆_ 10c2e7 ▂▄__ ▒ Welcome!! ▂▄__ ▒ Playteck ▂▄__ ▒ <Back> │ └──────────────────────────────┘ │ │ └───────────────────────────────────────────────┘

Press Tab key to reach the <Activate> button.

┌───────────────────────────────────────────────┐ │ │ │ ┌──────────────────────────────┐ │ │ │ Wired ↑ │ <Activate> │ │ * Wired connection 1 ▒ │ │ │ │ ▒ │ │ │ │ Wi-Fi ▒ │ │ │ │ RTL8186-default ▂▄▆█ ▒ │ │ │ │ WIFI-NET-2 ▂▄▆_ ▒ │ │ │ │ 10c2e7 ▂▄__ ▒ │ │ │ │ Welcome!! ▂▄__ ▒ │ │ │ │ Playteck ▂▄__ ▒ │ │ │ │ ▮ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ↓ │ <Back> │ │ └──────────────────────────────┘ │ │ │ └───────────────────────────────────────────────┘

Press on the Enter key.

┌───────────────────────────────────────────────┐ │ │ │ ┌──────────────────────────────┐ │ │ │ Wired ↑ │ <Activate> │ │ * Wired connection 1 ▒ │ │ │ │ ▒ │ │ │ │ Wi-Fi ▒ │ │ ┌───────┤ Authentication required by wireless network ├────────┐ │ │ │ Passwords or encryption keys are required to access the │ │ wireless network 'WIFI-NET-2'. │ │ │ Password **********____________________ │ │ │ <Cancel> <OK> │ │ └──────────────────────────────────────────────────────────────┘ │ │ ↓ │ <Back> │ │ └──────────────────────────────┘ │ │ │ └───────────────────────────────────────────────┘

Enter the Wi-Fi password.

┌───────────────────────────────────────────────┐ │ │ │ ┌──────────────────────────────┐ │ │ │ Wired ↑ │ <Activate> │ │ * Wired connection 1 ▒ │ │ │ │ ▒ │ │ │ │ Wi-Fi ▒ │ │ │ │ WIFI-NET-2 ▂▄▆_ ▒ │ │ │ │ RTL8186-default ▂▄▆█ ▒ │ │ │ │ Welcome!! ▂▄__ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▮ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ▒ │ │ │ │ ↓ │ <Back> │ │ └──────────────────────────────┘ │ │ │ └───────────────────────────────────────────────┘

After backing out of the configuration utility, check that the Wi-Fi interface has been assigned an IP address.

opipc@orangepipc2:~$ ip -4 address 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 inet 192.168.0.139/24 brd 192.168.0.255 scope global dynamic noprefixroute eth0 valid_lft 1032sec preferred_lft 1032sec 3: wlx005a39f08724: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 inet 192.168.0.138/24 brd 192.168.0.255 scope global dynamic noprefixroute wlx005a39f08724 valid_lft 1775sec preferred_lft 1775sec

Updating Armbian Bionic toc

Rather obviously, the OPiPC2 must be connected to the Internet to update the operating system. The upgrading process was interrupted twice as a decision was required to about changes to be made to files. In both case I chose "Y" to "install the package maintainer's version".

opipc@orangepipc2:~$ sudo apt update; sudo apt upgrade -y ... Configuration file '/etc/issue' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** issue (Y/I/N/O/D/Z) [default=N] ? Y Configuration file '/etc/issue.net' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** issue.net (Y/I/N/O/D/Z) [default=N] ? Y ... Processing triggers for mime-support (3.60ubuntu1) ... opipc@orangepipc2:~$

In all 33 packages were upgraded.

To list all installed packages apt can be used, but I find the list obtained from dpkg quite useful.

opipc@orangepipc2:~$ apt list --installed Listing... Done adduser/bionic,bionic,now 3.116ubuntu1 all [installed] alsa-utils/bionic,now 1.1.3-1ubuntu1 arm64 [installed] ... zlib1g/bionic,now 1:1.2.11.dfsg-0ubuntu2 arm64 [installed] opipc@orangepipc2:~$ dpkg -l Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-=======================================-========================-========================-==================================================================================== ii adduser 3.116ubuntu1 all add and remove users and groups ii alsa-utils 1.1.3-1ubuntu1 arm64 Utilities for configuring and using ALSA ii apt 1.6.12 arm64 commandline package manager ... ii xz-utils 5.2.2-1.3 arm64 XZ-format compression utilities ii zlib1g:arm64 1:1.2.11.dfsg-0ubuntu2 arm64 compression library - runtime

Quickly looking at the list, I noticed that WireGuard is included in the kernel.

opipc@orangepipc2:~$ which wg /usr/bin/wg opipc@orangepipc2:~$ which wg-quick /usr/bin/wg-quick opipc@orangepipc2:~$ sudo ls -la /etc/wireguard total 8 drwx------ 2 root root 4096 Dec 19 12:33 . drwxr-xr-x 88 root root 4096 Feb 13 03:14 ..

Presumably that means setting up the VPN server will be a matter of configuration only. At this point I decided to install the avahi-daemon to be able to reach the OPiPC2 with the address orangepipc2.local (or actually hostname.local whatever the hostname happens to be) no matter what IP address has been assigned to it.

opc2@orangepipc2:~$ apt-cache policy avahi-daemon avahi-daemon: Installed: (none) Candidate: 0.6.32-2 Version table: 0.6.32-2 500 500 http://httpredir.debian.org/debian stretch/main arm64 Packages opc2@orangepipc2:~$ sudo apt install avahi-daemon -y Reading package lists... Done ... Need to get 345 kB of archives. After this operation, 1405 kB of additional disk space will be used. ... Processing triggers for dbus (1.10.26-0+deb9u1) ... Processing triggers for systemd (232-25+deb9u11) ...

I also modified the configuration file so that the device is advertised as a workstation easily found with the avahi-browse --all command.

opc2@orangepipc2:~$ sudo nano /etc/avahi/avahi-daemon.conf

... #publish-workstation=no publish-workstation=yes ...

Save the Modified OS Image toc

It is time to back up the image to make it easy to return to this state in the future. First power down the board.

opipc@orangepipc2:~$ sudo shutdown now

Remove the SD card and insert it into the desktop card reader. Before using Gparted to shrink the partition, I made a full backup of the 16 GB SD card with the dd utility.

michel@hp:~$ df -h Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur udev 5,9G 0 5,9G 0% /dev ... /dev/sde1 15G 1,1G 14G 8% /media/michel/a948f949-ea06-4a76-9d5d-4c9da81e0efe michel@hp:~$ sudo umount /dev/sde1 michel@hp:~$ mkdir Armbian-bak michel@hp:~$ cd Armbian-bak michel@hp:Armbian-bak$ sudo dd bs=4M if=/dev/sde of=armbian_bionic_16G_2020_02_12.img ...

To shrink the partition start GParted. The latter is not installed by default on Ubuntu so I used the software library to do just that. After the utility has scanned all the storage drives connected to the computer, which can take some time, select the microSD card containing the modified Armbian image. It was /dev/sde on my machine and very easy to find as all the other drives were much bigger than it.

Right click on the ext4 partition, the only partition on the drive, and select unmount in the menu if you see a keys icon to the right of the partition. Gparted will again read the information, and the keys icon will no longer be visible. Select the ext4 partition again, and click on the resize icon which is the orange arrow pointing right. The Partition/Resize Move menu selection could be used instead.

I chose to set the partition size to 2044 MiB. Given that there was 3 MiB not allocated sectors ahead of the partition (that number will be different on other SD cards), which made for an image size of 2.99 GiB with 12.91 GiB free (again that will depend on the size of the memory card).

Click on apply button (with the green check icon) so that Gparted will resize the partition. All that remains is to copy the first 3 GiB from the microSD card into an image file. This is easily done with the dd utility. However, before doing that, look at the information about the partition just resized.

Note the last sector used near the bottom right. In my case that was sector 6275071. That means that the unallocated sectors at the start of the disk and the partition occupied (6275071+1)*512 = 3212836864 bytes. That is slightly less than 3 Gigabytes = 3*2^30 = 3221225472. The partition should not be mounted, but if it is then unmount it as shown below before saving it.

michel@hp:Armbian-bak$ sudo dd bs=4M count=768 if=/dev/sde of=armbian_bionic_3G_2020_02_12.img 768+0 enregistrements lus 768+0 enregistrements écrits 3221225472 bytes (3,2 GB, 3,0 GiB) copied, 150,573 s, 21,4 MB/s

To calculate the number of 4MB blocks to save, 768, I just divided 3 GB by 4 MB. In other words (3*2^30)/(4*2^20) = (3*2^10)/4 = 768.

Insert the SD back into the TF reader of the board and power it up. Once the Armbian has completed booting, open an SSH session and then display the disk usage.

michel@hp:~$ ssh opipc@orangepipc2.local ... opipc@orangepipc2:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT mtdblock0 31:0 0 2M 0 disk mmcblk0 179:0 0 14.9G 0 disk └─mmcblk0p1 179:1 0 3G 0 part / zram0 252:0 0 50M 0 disk /var/log zram1 252:1 0 494.7M 0 disk [SWAP]

The whole point of this exercise is that Balena Etcher can be used to copy the 3 GB image just created to any SD card to get back to this point as I experiment further with the system.

Note that the journal directory /var/log is mounted on a ram disk which should reduce the wear of the SD card.

It is a very good idea to use armbian-config to change the host name immediately on booting a fresh copy of this image. Otherwise, avahi will assign a different name to a second OPiPC2 on which this same image or the original has been copied because of the common orangepipc2 host name. It will be harder to open an SSH session. It does not really matter now that I could not purchase a second board even if I wanted to.

Hardware toc

Here is a short discussion of some on board hardware: the real time clock, the power button, the two light-emitting diodes and the two temperature sensors.

Real Time Clock toc

The H5 SOC has a built in real time clock. The datasheet overview describes it as follows (p.45).

2.2.4.3 RTC

More details are available in Section 4.8.RTC starting at page 182, Allwinner H5 Datasheet.

The clock is available as device rtc0 and can be accessed with the usual utilities: hwclock and timedatectl.

opipc@orangepipc2:~$ ls -l /dev/rtc* lrwxrwxrwx 1 root root 4 Feb 29 17:06 /dev/rtc -> rtc0 crw------- 1 root root 253, 0 Feb 29 17:06 /dev/rtc0 opipc@orangepipc2:~$ sudo hwclock -D hwclock from util-linux 2.31.1 System Time: 1583010553.968825 Trying to open: /dev/rtc0 Using the rtc interface to the clock. Assuming hardware clock is kept in UTC time. Waiting for clock tick... ...got clock tick Time read from Hardware Clock: 2020/02/29 21:09:12 Hw clock time : 2020/02/29 21:09:12 = 1583010552 seconds since 1969 Time since last adjustment is 1583010552 seconds Calculated Hardware Clock drift is 0.000000 seconds 2020-02-29 17:09:10.276241-0400 opipc@orangepipc2:~$ timedatectl status Local time: Sat 2020-02-29 17:25:42 AST Universal time: Sat 2020-02-29 21:25:42 UTC RTC time: Sat 2020-02-29 21:25:24 Time zone: America/Moncton (AST, -0400) System clock synchronized: yes systemd-timesyncd.service active: yes RTC in local TZ: no

Power Button toc

On board, there is a push button switch which is called the "power switch". Here is the description of the button from SUNXI:

The board has a momentary action switch (SW4) located on the lower left corner near the 5V DC IN power jack (J1), which pulls low PL3 (R_PL_EINT external interrupt - #77, vectored to 0x0134) and KEYADC (interrupt #62 vectored to 0x00F8).

Those two connections can be seen on the schematic. But just what happens when the button is pressed will depend on the operating system. That is why one finds contradictory descriptions of the button on the Web: AllWinner H5 - Orange Pi PC 2, power button for ACPI, power button.

In Armbian, at least on the version described here, there is a handler for the button.

opipc@orangepipc2:~$ cat /proc/bus/input/devices I: Bus=0019 Vendor=0001 Product=0001 Version=0100 N: Name="r-gpio-keys" P: Phys=gpio-keys/input0 S: Sysfs=/devices/platform/r-gpio-keys/input/input0 U: Uniq= H: Handlers=kbd event0 B: PROP=0 B: EV=3 B: KEY=10000000000000 0 ...

Pressing the button immediately shuts down the system.

opipc@orangepipc2:~$ cat /dev/input/event0 ��b^d�t��b^d���b^C�t��b^C�Connection to orangepipc2.local closed by remote host. Connection to orangepipc2.local closed.

I wanted to know if that is a panic shut down as when the RUN line is shorted to ground on a Raspberry Pi or if it an orderly shutdown as if the command shutdown now had been given. To see what was happening, the system journal configuration was changed so that the journal was stored on the SD card.

opipc@orangepipc2:~$ sudo nano /etc/systemd/journald.conf

# This file is part of systemd. # ...# See journald.conf(5) for details. [Journal] Storage=persistent ...

Then the system was rebooted, and after the system was up and running the power button was activated. Immediately, the board shut down. To restart the OPiPC2, it was necessary to unplug the power supply and then apply power again. Pressing the power button for 5 or 10 seconds did not awake the board. Once a session was opened on the restarted board, the journal for the previous boot was looked at.

opipc@orangepipc2:~$ journalctl --list-boots --no-pager Journal file /var/log/journal/e897b3cee10d4ac99c362d22a9338e00/user-1000.journal is truncated, ignoring file. -1 f82823fb248840de8f6f572cf76d6cd2 Sat 2020-02-15 20:31:02 AST—Sat 2020-02-15 20:32:06 AST 0 4b9d2c40a872417491f231eae8dde425 Sat 2020-02-15 20:32:06 AST—Sat 2020-02-15 21:00:01 AST opipc@orangepipc2:~$ journalctl -b -1 --no-pager Journal file /var/log/journal/e897b3cee10d4ac99c362d22a9338e00/user-1000.journal is truncated, ignoring file. -- Logs begin at Sat 2020-02-15 20:31:02 AST, end at Sat 2020-02-15 20:57:13 AST. -- Feb 15 20:31:02 orangepipc2 kernel: Booting Linux on physical CPU 0x0000000000 [0x410fd034] Feb 15 20:31:02 orangepipc2 kernel: Linux version 5.4.14-sunxi64 (root@builder) (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36))) #rc1 SMP Sat Jan 25 15:46:08 CET 2020 Feb 15 20:31:02 orangepipc2 kernel: Machine model: Xunlong Orange Pi PC 2 Feb 15 20:31:02 orangepipc2 kernel: cma: Reserved 128 MiB at 0x0000000078000000 Feb 15 20:31:02 orangepipc2 kernel: NUMA: No NUMA configuration found Feb 15 20:31:02 orangepipc2 kernel: NUMA: Faking a node at [mem 0x0000000040000000-0x000000007fffffff] Feb 15 20:31:02 orangepipc2 kernel: NUMA: NODE_DATA [mem 0x77ddb800-0x77ddcfff] Feb 15 20:31:02 orangepipc2 kernel: Zone ranges: Feb 15 20:31:02 orangepipc2 kernel: DMA32 [mem 0x0000000040000000-0x000000007fffffff] Feb 15 20:31:02 orangepipc2 kernel: Normal empty Feb 15 20:31:02 orangepipc2 kernel: Movable zone start for each node Feb 15 20:31:02 orangepipc2 kernel: Early memory node ranges Feb 15 20:31:02 orangepipc2 kernel: node 0: [mem 0x0000000040000000-0x000000007fffffff] Feb 15 20:31:02 orangepipc2 kernel: Initmem setup node 0 [mem 0x0000000040000000-0x000000007fffffff] Feb 15 20:31:02 orangepipc2 kernel: On node 0 totalpages: 262144 Feb 15 20:31:02 orangepipc2 kernel: DMA32 zone: 4096 pages used for memmap Feb 15 20:31:02 orangepipc2 kernel: DMA32 zone: 0 pages reserved Feb 15 20:31:02 orangepipc2 kernel: DMA32 zone: 262144 pages, LIFO batch:63 Feb 15 20:31:02 orangepipc2 kernel: psci: probing for conduit method from DT. Feb 15 20:31:02 orangepipc2 kernel: psci: PSCIv1.1 detected in firmware. Feb 15 20:31:02 orangepipc2 kernel: psci: Using standard PSCI v0.2 function IDs Feb 15 20:31:02 orangepipc2 kernel: psci: MIGRATE_INFO_TYPE not supported. Feb 15 20:31:02 orangepipc2 kernel: psci: SMC Calling Convention v1.0 Feb 15 20:31:02 orangepipc2 kernel: percpu: Embedded 21 pages/cpu s49048 r8192 d28776 u86016 Feb 15 20:31:02 orangepipc2 kernel: pcpu-alloc: s49048 r8192 d28776 u86016 alloc=21*4096 Feb 15 20:31:02 orangepipc2 kernel: pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 Feb 15 20:31:02 orangepipc2 kernel: Detected VIPT I-cache on CPU0 Feb 15 20:31:02 orangepipc2 kernel: CPU features: detected: ARM erratum 845719 Feb 15 20:31:02 orangepipc2 kernel: Built 1 zonelists, mobility grouping on. Total pages: 258048 Feb 15 20:31:02 orangepipc2 kernel: Policy zone: DMA32 Feb 15 20:31:02 orangepipc2 kernel: Kernel command line: root=UUID=a948f949-ea06-4a76-9d5d-4c9da81e0efe rootwait rootfstype=ext4 console=ttyS0,115200 console=tty1 consoleblank=0 loglevel=1 ubootpart=01635824-01 usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u cgroup_enable=memory swapaccount=1 Feb 15 20:31:02 orangepipc2 kernel: printk: log_buf_len individual max cpu contribution: 4096 bytes Feb 15 20:31:02 orangepipc2 kernel: printk: log_buf_len total cpu_extra contributions: 12288 bytes Feb 15 20:31:02 orangepipc2 kernel: printk: log_buf_len min size: 16384 bytes Feb 15 20:31:02 orangepipc2 kernel: printk: log_buf_len: 32768 bytes Feb 15 20:31:02 orangepipc2 kernel: printk: early log buf free: 14032(85%) Feb 15 20:31:02 orangepipc2 kernel: Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: mem auto-init: stack:off, heap alloc:off, heap free:off Feb 15 20:31:02 orangepipc2 kernel: Memory: 872000K/1048576K available (10942K kernel code, 728K rwdata, 2804K rodata, 768K init, 290K bss, 45504K reserved, 131072K cma-reserved) Feb 15 20:31:02 orangepipc2 kernel: SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Feb 15 20:31:02 orangepipc2 kernel: rcu: Hierarchical RCU implementation. Feb 15 20:31:02 orangepipc2 kernel: rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4. Feb 15 20:31:02 orangepipc2 kernel: rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. Feb 15 20:31:02 orangepipc2 kernel: rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 Feb 15 20:31:02 orangepipc2 kernel: NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 Feb 15 20:31:02 orangepipc2 kernel: GIC: Using split EOI/Deactivate mode Feb 15 20:31:02 orangepipc2 kernel: random: get_random_bytes called from start_kernel+0x2a8/0x430 with crng_init=0 Feb 15 20:31:02 orangepipc2 kernel: arch_timer: cp15 timer(s) running at 24.00MHz (phys). Feb 15 20:31:02 orangepipc2 kernel: clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns Feb 15 20:31:02 orangepipc2 kernel: sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns Feb 15 20:31:02 orangepipc2 kernel: Console: colour dummy device 80x25 Feb 15 20:31:02 orangepipc2 kernel: printk: console [tty1] enabled Feb 15 20:31:02 orangepipc2 kernel: Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000) Feb 15 20:31:02 orangepipc2 kernel: pid_max: default: 32768 minimum: 301 Feb 15 20:31:02 orangepipc2 kernel: LSM: Security Framework initializing Feb 15 20:31:02 orangepipc2 kernel: Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: *** VALIDATE tmpfs *** Feb 15 20:31:02 orangepipc2 kernel: *** VALIDATE proc *** Feb 15 20:31:02 orangepipc2 kernel: *** VALIDATE cgroup1 *** Feb 15 20:31:02 orangepipc2 kernel: *** VALIDATE cgroup2 *** Feb 15 20:31:02 orangepipc2 kernel: ASID allocator initialised with 32768 entries Feb 15 20:31:02 orangepipc2 kernel: rcu: Hierarchical SRCU implementation. Feb 15 20:31:02 orangepipc2 kernel: smp: Bringing up secondary CPUs ... Feb 15 20:31:02 orangepipc2 kernel: Detected VIPT I-cache on CPU1 Feb 15 20:31:02 orangepipc2 kernel: CPU1: Booted secondary processor 0x0000000001 [0x410fd034] Feb 15 20:31:02 orangepipc2 kernel: Detected VIPT I-cache on CPU2 Feb 15 20:31:02 orangepipc2 kernel: CPU2: Booted secondary processor 0x0000000002 [0x410fd034] Feb 15 20:31:02 orangepipc2 kernel: Detected VIPT I-cache on CPU3 Feb 15 20:31:02 orangepipc2 kernel: CPU3: Booted secondary processor 0x0000000003 [0x410fd034] Feb 15 20:31:02 orangepipc2 kernel: smp: Brought up 1 node, 4 CPUs Feb 15 20:31:02 orangepipc2 kernel: SMP: Total of 4 processors activated. Feb 15 20:31:02 orangepipc2 kernel: CPU features: detected: 32-bit EL0 Support Feb 15 20:31:02 orangepipc2 kernel: CPU features: detected: CRC32 instructions Feb 15 20:31:02 orangepipc2 kernel: CPU: All CPU(s) started at EL2 Feb 15 20:31:02 orangepipc2 kernel: alternatives: patching kernel code Feb 15 20:31:02 orangepipc2 kernel: devtmpfs: initialized Feb 15 20:31:02 orangepipc2 kernel: Registered cp15_barrier emulation handler Feb 15 20:31:02 orangepipc2 kernel: Registered setend emulation handler Feb 15 20:31:02 orangepipc2 kernel: clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns Feb 15 20:31:02 orangepipc2 kernel: futex hash table entries: 1024 (order: 4, 65536 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: xor: measuring software checksum speed Feb 15 20:31:02 orangepipc2 kernel: 8regs : 1615.000 MB/sec Feb 15 20:31:02 orangepipc2 kernel: 32regs : 1853.000 MB/sec Feb 15 20:31:02 orangepipc2 kernel: arm64_neon: 1676.000 MB/sec Feb 15 20:31:02 orangepipc2 kernel: xor: using function: 32regs (1853.000 MB/sec) Feb 15 20:31:02 orangepipc2 kernel: pinctrl core: initialized pinctrl subsystem Feb 15 20:31:02 orangepipc2 kernel: NET: Registered protocol family 16 Feb 15 20:31:02 orangepipc2 kernel: DMA: preallocated 256 KiB pool for atomic allocations Feb 15 20:31:02 orangepipc2 kernel: audit: initializing netlink subsys (disabled) Feb 15 20:31:02 orangepipc2 kernel: audit: type=2000 audit(0.136:1): state=initialized audit_enabled=0 res=1 Feb 15 20:31:02 orangepipc2 kernel: cpuidle: using governor menu Feb 15 20:31:02 orangepipc2 kernel: hw-breakpoint: found 6 breakpoint and 4 watchpoint registers. Feb 15 20:31:02 orangepipc2 kernel: Serial: AMBA PL011 UART driver Feb 15 20:31:02 orangepipc2 kernel: HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages Feb 15 20:31:02 orangepipc2 kernel: HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages Feb 15 20:31:02 orangepipc2 kernel: HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages Feb 15 20:31:02 orangepipc2 kernel: HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages Feb 15 20:31:02 orangepipc2 kernel: cryptd: max_cpu_qlen set to 1000 Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx8 gen() 1063 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx8 xor() 999 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx4 gen() 1012 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx4 xor() 976 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx2 gen() 773 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx2 xor() 809 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx1 gen() 516 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: neonx1 xor() 610 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x8 gen() 791 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x8 xor() 518 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x4 gen() 668 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x4 xor() 503 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x2 gen() 461 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x2 xor() 410 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x1 gen() 302 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: int64x1 xor() 312 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: using algorithm neonx8 gen() 1063 MB/s Feb 15 20:31:02 orangepipc2 kernel: raid6: .... xor() 999 MB/s, rmw enabled Feb 15 20:31:02 orangepipc2 kernel: raid6: using neon recovery algorithm Feb 15 20:31:02 orangepipc2 kernel: iommu: Default domain type: Translated Feb 15 20:31:02 orangepipc2 kernel: SCSI subsystem initialized Feb 15 20:31:02 orangepipc2 kernel: usbcore: registered new interface driver usbfs Feb 15 20:31:02 orangepipc2 kernel: usbcore: registered new interface driver hub Feb 15 20:31:02 orangepipc2 kernel: usbcore: registered new device driver usb Feb 15 20:31:02 orangepipc2 kernel: pps_core: LinuxPPS API ver. 1 registered Feb 15 20:31:02 orangepipc2 kernel: pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> Feb 15 20:31:02 orangepipc2 kernel: PTP clock support registered Feb 15 20:31:02 orangepipc2 kernel: clocksource: Switched to clocksource arch_sys_counter Feb 15 20:31:02 orangepipc2 kernel: VFS: Disk quotas dquot_6.6.0 Feb 15 20:31:02 orangepipc2 kernel: VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) Feb 15 20:31:02 orangepipc2 kernel: *** VALIDATE ramfs *** Feb 15 20:31:02 orangepipc2 kernel: *** VALIDATE hugetlbfs *** Feb 15 20:31:02 orangepipc2 kernel: thermal_sys: Registered thermal governor 'fair_share' Feb 15 20:31:02 orangepipc2 kernel: thermal_sys: Registered thermal governor 'bang_bang' Feb 15 20:31:02 orangepipc2 kernel: thermal_sys: Registered thermal governor 'step_wise' Feb 15 20:31:02 orangepipc2 kernel: thermal_sys: Registered thermal governor 'user_space' Feb 15 20:31:02 orangepipc2 kernel: thermal_sys: Registered thermal governor 'power_allocator' Feb 15 20:31:02 orangepipc2 kernel: NET: Registered protocol family 2 Feb 15 20:31:02 orangepipc2 kernel: tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: TCP: Hash tables configured (established 8192 bind 8192) Feb 15 20:31:02 orangepipc2 kernel: UDP hash table entries: 512 (order: 2, 16384 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear) Feb 15 20:31:02 orangepipc2 kernel: NET: Registered protocol family 1 Feb 15 20:31:02 orangepipc2 kernel: RPC: Registered named UNIX socket transport module. Feb 15 20:31:02 orangepipc2 kernel: RPC: Registered udp transport module. Feb 15 20:31:02 orangepipc2 kernel: RPC: Registered tcp transport module. Feb 15 20:31:02 orangepipc2 kernel: RPC: Registered tcp NFSv4.1 backchannel transport module. Feb 15 20:31:02 orangepipc2 kernel: Trying to unpack rootfs image as initramfs... Feb 15 20:31:02 orangepipc2 kernel: Freeing initrd memory: 9344K Feb 15 20:31:02 orangepipc2 kernel: Initialise system trusted keyrings Feb 15 20:31:02 orangepipc2 kernel: workingset: timestamp_bits=44 max_order=18 bucket_order=0 Feb 15 20:31:02 orangepipc2 kernel: zbud: loaded Feb 15 20:31:02 orangepipc2 kernel: squashfs: version 4.0 (2009/01/31) Phillip Lougher Feb 15 20:31:02 orangepipc2 kernel: NFS: Registering the id_resolver key type Feb 15 20:31:02 orangepipc2 kernel: Key type id_resolver registered Feb 15 20:31:02 orangepipc2 kernel: Key type id_legacy registered Feb 15 20:31:02 orangepipc2 kernel: nfs4filelayout_init: NFSv4 File Layout Driver Registering... Feb 15 20:31:02 orangepipc2 kernel: Installing knfsd (copyright (C) 1996 okir@monad.swb.de). Feb 15 20:31:02 orangepipc2 kernel: 9p: Installing v9fs 9p2000 file system support Feb 15 20:31:02 orangepipc2 kernel: async_tx: api initialized (async) Feb 15 20:31:02 orangepipc2 kernel: Key type asymmetric registered Feb 15 20:31:02 orangepipc2 kernel: Asymmetric key parser 'x509' registered Feb 15 20:31:02 orangepipc2 kernel: Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248) Feb 15 20:31:02 orangepipc2 kernel: io scheduler mq-deadline registered Feb 15 20:31:02 orangepipc2 kernel: io scheduler kyber registered Feb 15 20:31:02 orangepipc2 kernel: io scheduler bfq registered Feb 15 20:31:02 orangepipc2 kernel: sun8i-h3-r-pinctrl 1f02c00.pinctrl: initialized sunXi PIO driver Feb 15 20:31:02 orangepipc2 kernel: sun50i-h5-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver Feb 15 20:31:02 orangepipc2 kernel: Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled Feb 15 20:31:02 orangepipc2 kernel: sun50i-h5-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pa not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: printk: console [ttyS0] disabled Feb 15 20:31:02 orangepipc2 kernel: 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 28, base_baud = 1500000) is a U6_16550A Feb 15 20:31:02 orangepipc2 kernel: printk: console [ttyS0] enabled Feb 15 20:31:02 orangepipc2 kernel: sun4i-drm display-engine: bound 1100000.mixer (ops 0xffff800010bdd988) Feb 15 20:31:02 orangepipc2 kernel: sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xffff800010bd9e88) Feb 15 20:31:02 orangepipc2 kernel: sun8i-dw-hdmi 1ee0000.hdmi: 1ee0000.hdmi supply hvcc not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: sun8i-dw-hdmi 1ee0000.hdmi: Detected HDMI TX controller v1.32a with HDCP (sun8i_dw_hdmi_phy) Feb 15 20:31:02 orangepipc2 kernel: sun8i-dw-hdmi 1ee0000.hdmi: registered DesignWare HDMI I2C bus driver Feb 15 20:31:02 orangepipc2 kernel: sun4i-drm display-engine: bound 1ee0000.hdmi (ops 0xffff800010bdcd30) Feb 15 20:31:02 orangepipc2 kernel: [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). Feb 15 20:31:02 orangepipc2 kernel: [drm] No driver support for vblank timestamp query. Feb 15 20:31:02 orangepipc2 kernel: [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0 Feb 15 20:31:02 orangepipc2 kernel: [drm] Cannot find any crtc or sizes Feb 15 20:31:02 orangepipc2 kernel: cacheinfo: Unable to detect cache hierarchy for CPU 0 Feb 15 20:31:02 orangepipc2 kernel: [drm] Cannot find any crtc or sizes Feb 15 20:31:02 orangepipc2 kernel: loop: module loaded Feb 15 20:31:02 orangepipc2 kernel: sun50i-h5-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pc not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: spi-nor spi0.0: spi0.0 supply vdd not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: spi-nor spi0.0: mx25l1606e (2048 Kbytes) Feb 15 20:31:02 orangepipc2 kernel: sun6i-spi 1c68000.spi: chipselect 0 already in use Feb 15 20:31:02 orangepipc2 kernel: spi_master spi0: spi_device register error /soc/spi@1c68000/spi-flash@0 Feb 15 20:31:02 orangepipc2 kernel: spi_master spi0: Failed to create SPI device for /soc/spi@1c68000/spi-flash@0 Feb 15 20:31:02 orangepipc2 kernel: libphy: Fixed MDIO Bus: probed Feb 15 20:31:02 orangepipc2 kernel: ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver Feb 15 20:31:02 orangepipc2 kernel: ehci-platform: EHCI generic platform driver Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1a000.usb: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1a000.usb: new USB bus registered, assigned bus number 1 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1a000.usb: irq 10, io mem 0x01c1a000 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1a000.usb: USB 2.0 started, EHCI 1.00 Feb 15 20:31:02 orangepipc2 kernel: usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb1: Product: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: usb usb1: Manufacturer: Linux 5.4.14-sunxi64 ehci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb1: SerialNumber: 1c1a000.usb Feb 15 20:31:02 orangepipc2 kernel: hub 1-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 1-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver Feb 15 20:31:02 orangepipc2 kernel: ohci-platform: OHCI generic platform driver Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1a400.usb: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1a400.usb: new USB bus registered, assigned bus number 2 Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1a400.usb: irq 11, io mem 0x01c1a400 Feb 15 20:31:02 orangepipc2 kernel: usb usb2: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb2: Product: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: usb usb2: Manufacturer: Linux 5.4.14-sunxi64 ohci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb2: SerialNumber: 1c1a400.usb Feb 15 20:31:02 orangepipc2 kernel: hub 2-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 2-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: usbcore: registered new interface driver usb-storage Feb 15 20:31:02 orangepipc2 kernel: mousedev: PS/2 mouse device common for all mice Feb 15 20:31:02 orangepipc2 kernel: sun6i-rtc 1f00000.rtc: registered as rtc0 Feb 15 20:31:02 orangepipc2 kernel: sun6i-rtc 1f00000.rtc: RTC enabled Feb 15 20:31:02 orangepipc2 kernel: i2c /dev entries driver Feb 15 20:31:02 orangepipc2 kernel: sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0) Feb 15 20:31:02 orangepipc2 kernel: sdhci: Secure Digital Host Controller Interface driver Feb 15 20:31:02 orangepipc2 kernel: sdhci: Copyright(c) Pierre Ossman Feb 15 20:31:02 orangepipc2 kernel: Synopsys Designware Multimedia Card Interface Driver Feb 15 20:31:02 orangepipc2 kernel: sun50i-h5-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pf not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: sunxi-mmc 1c0f000.mmc: Got CD GPIO Feb 15 20:31:02 orangepipc2 kernel: sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB, uses new timings mode Feb 15 20:31:02 orangepipc2 kernel: sdhci-pltfm: SDHCI platform and OF driver helper Feb 15 20:31:02 orangepipc2 kernel: sun8i-h3-r-pinctrl 1f02c00.pinctrl: 1f02c00.pinctrl supply vcc-pl not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: ledtrig-cpu: registered to indicate activity on CPUs Feb 15 20:31:02 orangepipc2 kernel: hidraw: raw HID events driver (C) Jiri Kosina Feb 15 20:31:02 orangepipc2 kernel: usbcore: registered new interface driver usbhid Feb 15 20:31:02 orangepipc2 kernel: usbhid: USB HID core driver Feb 15 20:31:02 orangepipc2 kernel: NET: Registered protocol family 10 Feb 15 20:31:02 orangepipc2 kernel: Segment Routing with IPv6 Feb 15 20:31:02 orangepipc2 kernel: NET: Registered protocol family 17 Feb 15 20:31:02 orangepipc2 kernel: 8021q: 802.1Q VLAN Support v1.8 Feb 15 20:31:02 orangepipc2 kernel: 9pnet: Installing 9P2000 support Feb 15 20:31:02 orangepipc2 kernel: Key type dns_resolver registered Feb 15 20:31:02 orangepipc2 kernel: registered taskstats version 1 Feb 15 20:31:02 orangepipc2 kernel: Loading compiled-in X.509 certificates Feb 15 20:31:02 orangepipc2 kernel: zswap: loaded using pool lzo/zbud Feb 15 20:31:02 orangepipc2 kernel: Key type ._fscrypt registered Feb 15 20:31:02 orangepipc2 kernel: Key type .fscrypt registered Feb 15 20:31:02 orangepipc2 kernel: Btrfs loaded, crc32c=crc32c-generic Feb 15 20:31:02 orangepipc2 kernel: Key type encrypted registered Feb 15 20:31:02 orangepipc2 kernel: mmc0: host does not support reading read-only switch, assuming write-enable Feb 15 20:31:02 orangepipc2 kernel: sun50i-h5-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: sun50i-h5-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pg not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1b000.usb: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1b000.usb: new USB bus registered, assigned bus number 3 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1b000.usb: irq 12, io mem 0x01c1b000 Feb 15 20:31:02 orangepipc2 kernel: mmc0: new high speed SDHC card at address aaaa Feb 15 20:31:02 orangepipc2 kernel: mmcblk0: mmc0:aaaa SC16G 14.8 GiB Feb 15 20:31:02 orangepipc2 kernel: mmcblk0: p1 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1b000.usb: USB 2.0 started, EHCI 1.00 Feb 15 20:31:02 orangepipc2 kernel: usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb3: Product: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: usb usb3: Manufacturer: Linux 5.4.14-sunxi64 ehci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb3: SerialNumber: 1c1b000.usb Feb 15 20:31:02 orangepipc2 kernel: hub 3-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 3-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1c000.usb: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1c000.usb: new USB bus registered, assigned bus number 4 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1c000.usb: irq 14, io mem 0x01c1c000 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1c000.usb: USB 2.0 started, EHCI 1.00 Feb 15 20:31:02 orangepipc2 kernel: usb usb4: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb4: Product: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: usb usb4: Manufacturer: Linux 5.4.14-sunxi64 ehci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb4: SerialNumber: 1c1c000.usb Feb 15 20:31:02 orangepipc2 kernel: hub 4-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 4-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1d000.usb: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1d000.usb: new USB bus registered, assigned bus number 5 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1d000.usb: irq 16, io mem 0x01c1d000 Feb 15 20:31:02 orangepipc2 kernel: ehci-platform 1c1d000.usb: USB 2.0 started, EHCI 1.00 Feb 15 20:31:02 orangepipc2 kernel: usb usb5: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb5: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb5: Product: EHCI Host Controller Feb 15 20:31:02 orangepipc2 kernel: usb usb5: Manufacturer: Linux 5.4.14-sunxi64 ehci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb5: SerialNumber: 1c1d000.usb Feb 15 20:31:02 orangepipc2 kernel: hub 5-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 5-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1b400.usb: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1b400.usb: new USB bus registered, assigned bus number 6 Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1b400.usb: irq 13, io mem 0x01c1b400 Feb 15 20:31:02 orangepipc2 kernel: usb usb6: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb6: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb6: Product: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: usb usb6: Manufacturer: Linux 5.4.14-sunxi64 ohci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb6: SerialNumber: 1c1b400.usb Feb 15 20:31:02 orangepipc2 kernel: hub 6-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 6-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1c400.usb: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1c400.usb: new USB bus registered, assigned bus number 7 Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1c400.usb: irq 15, io mem 0x01c1c400 Feb 15 20:31:02 orangepipc2 kernel: usb usb7: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb7: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb7: Product: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: usb usb7: Manufacturer: Linux 5.4.14-sunxi64 ohci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb7: SerialNumber: 1c1c400.usb Feb 15 20:31:02 orangepipc2 kernel: hub 7-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 7-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1d400.usb: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1d400.usb: new USB bus registered, assigned bus number 8 Feb 15 20:31:02 orangepipc2 kernel: ohci-platform 1c1d400.usb: irq 17, io mem 0x01c1d400 Feb 15 20:31:02 orangepipc2 kernel: usb usb8: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb8: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb8: Product: Generic Platform OHCI controller Feb 15 20:31:02 orangepipc2 kernel: usb usb8: Manufacturer: Linux 5.4.14-sunxi64 ohci_hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb8: SerialNumber: 1c1d400.usb Feb 15 20:31:02 orangepipc2 kernel: hub 8-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 8-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: usb_phy_generic usb_phy_generic.2.auto: usb_phy_generic.2.auto supply vcc not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: musb-hdrc musb-hdrc.3.auto: MUSB HDRC host driver Feb 15 20:31:02 orangepipc2 kernel: musb-hdrc musb-hdrc.3.auto: new USB bus registered, assigned bus number 9 Feb 15 20:31:02 orangepipc2 kernel: usb usb9: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 Feb 15 20:31:02 orangepipc2 kernel: usb usb9: New USB device strings: Mfr=3, Product=2, SerialNumber=1 Feb 15 20:31:02 orangepipc2 kernel: usb usb9: Product: MUSB HDRC host driver Feb 15 20:31:02 orangepipc2 kernel: usb usb9: Manufacturer: Linux 5.4.14-sunxi64 musb-hcd Feb 15 20:31:02 orangepipc2 kernel: usb usb9: SerialNumber: musb-hdrc.3.auto Feb 15 20:31:02 orangepipc2 kernel: hub 9-0:1.0: USB hub found Feb 15 20:31:02 orangepipc2 kernel: hub 9-0:1.0: 1 port detected Feb 15 20:31:02 orangepipc2 kernel: input: r-gpio-keys as /devices/platform/r-gpio-keys/input/input0 Feb 15 20:31:02 orangepipc2 kernel: sun6i-rtc 1f00000.rtc: setting system clock to 2020-02-16T00:30:59 UTC (1581813059) Feb 15 20:31:02 orangepipc2 kernel: of_cfs_init Feb 15 20:31:02 orangepipc2 kernel: of_cfs_init: OK Feb 15 20:31:02 orangepipc2 kernel: Freeing unused kernel memory: 768K Feb 15 20:31:02 orangepipc2 kernel: Run /init as init process Feb 15 20:31:02 orangepipc2 kernel: usb 3-1: new high-speed USB device number 2 using ehci-platform Feb 15 20:31:02 orangepipc2 kernel: usb 3-1: New USB device found, idVendor=0bda, idProduct=8179, bcdDevice= 0.00 Feb 15 20:31:02 orangepipc2 kernel: usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Feb 15 20:31:02 orangepipc2 kernel: usb 3-1: Product: 802.11n NIC Feb 15 20:31:02 orangepipc2 kernel: usb 3-1: Manufacturer: Realtek Feb 15 20:31:02 orangepipc2 kernel: usb 3-1: SerialNumber: 00E04C0001 Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: IRQ eth_wake_irq not found Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: IRQ eth_lpi not found Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: PTP uses main clock Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: 1c30000.ethernet supply phy-io not found, using dummy regulator Feb 15 20:31:02 orangepipc2 kernel: usb 8-1: new full-speed USB device number 2 using ohci-platform Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Current syscon value is not the default 50006 (expect 58000) Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: No HW DMA feature register supported Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: RX Checksum Offload Engine supported Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: COE Type 2 Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: TX Checksum insertion supported Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Normal descriptors Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Chain mode enabled Feb 15 20:31:02 orangepipc2 kernel: libphy: stmmac: probed Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Found internal PHY node Feb 15 20:31:02 orangepipc2 kernel: libphy: mdio_mux: probed Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Switch mux to internal PHY Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Powering internal PHY Feb 15 20:31:02 orangepipc2 kernel: ac200: Unknown symbol ac200_reg_mod (err -2) Feb 15 20:31:02 orangepipc2 kernel: ac200: Unknown symbol ac200_reg_write (err -2) Feb 15 20:31:02 orangepipc2 kernel: libphy: mdio_mux: probed Feb 15 20:31:02 orangepipc2 kernel: dwmac-sun8i 1c30000.ethernet: Switch mux to external PHY Feb 15 20:31:02 orangepipc2 kernel: usb 8-1: New USB device found, idVendor=0a12, idProduct=0001, bcdDevice=88.91 Feb 15 20:31:02 orangepipc2 kernel: usb 8-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0 Feb 15 20:31:02 orangepipc2 kernel: usb 8-1: Product: CSR8510 A10 Feb 15 20:31:02 orangepipc2 kernel: random: fast init done Feb 15 20:31:02 orangepipc2 kernel: EXT4-fs (mmcblk0p1): mounted filesystem with writeback data mode. Opts: (null) Feb 15 20:31:02 orangepipc2 systemd[1]: systemd 237 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid) Feb 15 20:31:02 orangepipc2 systemd[1]: Detected architecture arm64. Feb 15 20:31:02 orangepipc2 systemd[1]: Set hostname to <orangepipc2>. Feb 15 20:31:02 orangepipc2 systemd[1]: File /lib/systemd/system/systemd-journald.service:36 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling. Feb 15 20:31:02 orangepipc2 systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.) Feb 15 20:31:02 orangepipc2 kernel: random: systemd: uninitialized urandom read (16 bytes read) Feb 15 20:31:02 orangepipc2 systemd[1]: Reached target Swap. Feb 15 20:31:02 orangepipc2 kernel: random: systemd: uninitialized urandom read (16 bytes read) Feb 15 20:31:02 orangepipc2 systemd[1]: Reached target Remote File Systems. Feb 15 20:31:02 orangepipc2 kernel: random: systemd: uninitialized urandom read (16 bytes read) Feb 15 20:31:02 orangepipc2 systemd[1]: Created slice System Slice. Feb 15 20:31:02 orangepipc2 systemd[1]: Started Dispatch Password Requests to Console Directory Watch. Feb 15 20:31:02 orangepipc2 systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point. Feb 15 20:31:02 orangepipc2 kernel: EXT4-fs (mmcblk0p1): re-mounted. Opts: commit=600,errors=remount-ro Feb 15 20:31:02 orangepipc2 systemd-journald[403]: Journal started Feb 15 20:31:02 orangepipc2 systemd-journald[403]: Runtime journal (/run/log/journal/e897b3cee10d4ac99c362d22a9338e00) is 1.2M, max 9.8M, 8.6M free. Feb 15 20:31:02 orangepipc2 systemd-modules-load[409]: Inserted module 'rtc_ds1307' Feb 15 20:31:02 orangepipc2 systemd-sysctl[428]: Couldn't write '1' to 'kernel/yama/ptrace_scope', ignoring: No such file or directory Feb 15 20:31:02 orangepipc2 systemd-sysctl[428]: Couldn't write 'fq_codel' to 'net/core/default_qdisc', ignoring: No such file or directory Feb 15 20:31:02 orangepipc2 fake-hwclock[414]: Current system time: 2020-02-16 00:31:02 Feb 15 20:31:02 orangepipc2 fake-hwclock[414]: fake-hwclock saved clock information is in the past: 2020-02-16 00:30:57 Feb 15 20:31:02 orangepipc2 fake-hwclock[414]: To set system time to this saved clock anyway, use "force" Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Flush Journal to Persistent Storage... Feb 15 20:31:02 orangepipc2 systemd[1]: Started Apply Kernel Variables. Feb 15 20:31:02 orangepipc2 resolvconf[427]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf Feb 15 20:31:02 orangepipc2 systemd-journald[403]: Time spent on flushing to /var is 20.404ms for 393 entries. Feb 15 20:31:02 orangepipc2 systemd-journald[403]: System journal (/var/log/journal/e897b3cee10d4ac99c362d22a9338e00) is 8.0M, max 298.4M, 290.4M free. Feb 15 20:31:02 orangepipc2 systemd[1]: Started Flush Journal to Persistent Storage. Feb 15 20:31:02 orangepipc2 systemd[1]: Started udev Coldplug all Devices. Feb 15 20:31:02 orangepipc2 systemd[1]: Started udev Kernel Device Manager. Feb 15 20:31:02 orangepipc2 systemd[1]: Started Set the console keyboard layout. Feb 15 20:31:02 orangepipc2 systemd[1]: Reached target Local File Systems (Pre). Feb 15 20:31:02 orangepipc2 systemd[1]: Mounting /tmp... Feb 15 20:31:02 orangepipc2 systemd[1]: Mounted /tmp. Feb 15 20:31:02 orangepipc2 systemd[1]: Reached target Local File Systems. Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Set console font and keymap... Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Raise network interfaces... Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Create Volatile Files and Directories... Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Armbian ZRAM config... Feb 15 20:31:02 orangepipc2 systemd[1]: Started Set console font and keymap. Feb 15 20:31:02 orangepipc2 systemd[1]: Started Create Volatile Files and Directories. Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Update UTMP about System Boot/Shutdown... Feb 15 20:31:02 orangepipc2 systemd[1]: Started Entropy daemon using the HAVEGE algorithm. Feb 15 20:31:02 orangepipc2 systemd[1]: Starting Network Name Resolution... Feb 15 20:31:02 orangepipc2 systemd[1]: Found device /dev/ttyS0. Feb 15 20:31:02 orangepipc2 kernel: mc: Linux media interface: v0.10 Feb 15 20:31:02 orangepipc2 kernel: videodev: Linux video capture interface: v2.00 Feb 15 20:31:02 orangepipc2 systemd[1]: Started Update UTMP about System Boot/Shutdown. Feb 15 20:31:02 orangepipc2 systemd-udevd[453]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable. Feb 15 20:31:02 orangepipc2 systemd-udevd[453]: link_config: could not get ethtool features for eth0 Feb 15 20:31:02 orangepipc2 systemd-udevd[453]: Could not set offload features of eth0: Device or resource busy Feb 15 20:31:02 orangepipc2 kernel: Registered IR keymap rc-empty Feb 15 20:31:02 orangepipc2 kernel: rc rc0: sunxi-ir as /devices/platform/soc/1f02000.ir/rc/rc0 Feb 15 20:31:02 orangepipc2 kernel: input: sunxi-ir as /devices/platform/soc/1f02000.ir/rc/rc0/input1 Feb 15 20:31:02 orangepipc2 kernel: rc rc0: lirc_dev: driver sunxi-ir registered at minor = 0, raw IR receiver, no transmitter Feb 15 20:31:02 orangepipc2 kernel: sunxi-ir 1f02000.ir: initialized sunXi IR driver Feb 15 20:31:02 orangepipc2 systemd-udevd[460]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable. Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ ppmmu4 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ ppmmu5 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ ppmmu6 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ ppmmu7 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: gp - mali450 version major 0 minor 0 Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: pp0 - mali450 version major 0 minor 0 Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: pp1 - mali450 version major 0 minor 0 Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: pp2 - mali450 version major 0 minor 0 Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: pp3 - mali450 version major 0 minor 0 Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ pp4 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ pp5 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ pp6 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: IRQ pp7 not found Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: l2 cache 8K, 4-way, 64byte cache line, 128bit external bus Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: l2 cache 128K, 4-way, 64byte cache line, 128bit external bus Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: bus rate = 200000000 Feb 15 20:31:02 orangepipc2 kernel: lima 1e80000.gpu: mod rate = 384000000 Feb 15 20:31:02 orangepipc2 kernel: [drm] Initialized lima 1.0.0 20190217 for 1e80000.gpu on minor 1 Feb 15 20:31:02 orangepipc2 kernel: sun4i-codec 1c22c00.codec: Failed to register our card Feb 15 20:31:03 orangepipc2 kernel: debugfs: Directory '1c22c00.codec' with parent 'H3 Audio Codec' already present! Feb 15 20:31:03 orangepipc2 kernel: sun4i-codec 1c22c00.codec: Codec <-> 1c22c00.codec mapping ok Feb 15 20:31:03 orangepipc2 kernel: Bluetooth: Core ver 2.22 Feb 15 20:31:03 orangepipc2 kernel: NET: Registered protocol family 31 Feb 15 20:31:03 orangepipc2 kernel: Bluetooth: HCI device and connection manager initialized Feb 15 20:31:03 orangepipc2 kernel: Bluetooth: HCI socket layer initialized Feb 15 20:31:03 orangepipc2 kernel: Bluetooth: L2CAP socket layer initialized Feb 15 20:31:03 orangepipc2 kernel: Bluetooth: SCO socket layer initialized Feb 15 20:31:03 orangepipc2 kernel: cfg80211: Loading compiled-in X.509 certificates for regulatory database Feb 15 20:31:03 orangepipc2 kernel: asoc-simple-card sound: i2s-hifi <-> 1c22800.i2s mapping ok Feb 15 20:31:03 orangepipc2 kernel: cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' Feb 15 20:31:03 orangepipc2 systemd-resolved[484]: Positive Trust Anchors: Feb 15 20:31:03 orangepipc2 systemd-resolved[484]: . IN DS 19036 8 2 49aac11d7b6f6446702e54a1607371607a1a41855200fd2ce1cdde32f24e8fb5 Feb 15 20:31:03 orangepipc2 systemd-resolved[484]: . IN DS 20326 8 2 e06d44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d Feb 15 20:31:03 orangepipc2 systemd-resolved[484]: Negative trust anchors: 10.in-addr.arpa 16.172.in-addr.arpa 17.172.in-addr.arpa 18.172.in-addr.arpa 19.172.in-addr.arpa 20.172.in-addr.arpa 21.172.in-addr.arpa 22.172.in-addr.arpa 23.172.in-addr.arpa 24.172.in-addr.arpa 25.172.in-addr.arpa 26.172.in-addr.arpa 27.172.in-addr.arpa 28.172.in-addr.arpa 29.172.in-addr.arpa 30.172.in-addr.arpa 31.172.in-addr.arpa 168.192.in-addr.arpa d.f.ip6.arpa corp home internal intranet lan local private test Feb 15 20:31:03 orangepipc2 systemd-resolved[484]: Using system hostname 'orangepipc2'. Feb 15 20:31:03 orangepipc2 systemd[1]: Started Network Name Resolution. Feb 15 20:31:03 orangepipc2 systemd[1]: Reached target Host and Network Name Lookups. Feb 15 20:31:03 orangepipc2 systemd[1]: Reached target Sound Card. Feb 15 20:31:03 orangepipc2 systemd[1]: Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch. Feb 15 20:31:03 orangepipc2 kernel: usbcore: registered new interface driver btusb Feb 15 20:31:03 orangepipc2 systemd[1]: Starting Load/Save RF Kill Switch Status... Feb 15 20:31:03 orangepipc2 kernel: sunxi_cedrus: module is from the staging directory, the quality is unknown, you have been warned. Feb 15 20:31:03 orangepipc2 kernel: cedrus 1c0e000.video-codec: Device registered as /dev/video0 Feb 15 20:31:03 orangepipc2 kernel: bFWReady == _FALSE call reset 8051... Feb 15 20:31:03 orangepipc2 systemd[1]: Starting Network Time Synchronization... Feb 15 20:31:03 orangepipc2 systemd[1]: Started Load/Save RF Kill Switch Status. Feb 15 20:31:03 orangepipc2 systemd-udevd[456]: Process '/usr/sbin/alsactl -E HOME=/run/alsa restore 0' failed with exit code 99. Feb 15 20:31:03 orangepipc2 kernel: usbcore: registered new interface driver 8188eu Feb 15 20:31:03 orangepipc2 kernel: lib80211: common routines for IEEE802.11 drivers Feb 15 20:31:03 orangepipc2 kernel: lib80211_crypt: registered algorithm 'NULL' Feb 15 20:31:03 orangepipc2 kernel: r8188eu: module is from the staging directory, the quality is unknown, you have been warned. Feb 15 20:31:03 orangepipc2 kernel: usbcore: registered new interface driver r8188eu Feb 15 20:31:03 orangepipc2 systemd-udevd[465]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable. Feb 15 20:31:03 orangepipc2 kernel: 8188eu 3-1:1.0 wlx005a39f08724: renamed from wlan0 Feb 15 20:31:03 orangepipc2 kernel: zram: Added device: zram0 Feb 15 20:31:03 orangepipc2 kernel: zram: Added device: zram1 Feb 15 20:31:03 orangepipc2 kernel: zram: Added device: zram2 Feb 15 20:31:03 orangepipc2 systemd-udevd[465]: Process '/sbin/iwconfig wlan0 power off' failed with exit code 250. Feb 15 20:31:03 orangepipc2 systemd[1]: Started Network Time Synchronization. Feb 15 20:31:03 orangepipc2 kernel: zram1: detected capacity change from 0 to 518750208 Feb 15 20:31:03 orangepipc2 systemd[1]: Started Raise network interfaces. Feb 15 20:31:03 orangepipc2 haveged[483]: haveged: ver: 1.9.1; arch: generic; vend: ; build: (gcc 6.4.0 CTV); collect: 128K Feb 15 20:31:03 orangepipc2 haveged[483]: haveged: cpu: (VC); data: 16K (D); inst: 16K (D); idx: 10/40; sz: 15464/70644 Feb 15 20:31:03 orangepipc2 haveged[483]: haveged: tot tests(BA8): A:1/1 B:1/1 continuous tests(B): last entropy estimate 8.00038 Feb 15 20:31:03 orangepipc2 haveged[483]: haveged: fills: 0, generated: 0 Feb 15 20:31:03 orangepipc2 kernel: random: crng init done Feb 15 20:31:03 orangepipc2 kernel: random: 7 urandom warning(s) missed due to ratelimiting Feb 15 20:31:03 orangepipc2 armbian-zram-config[474]: Setting up swapspace version 1, size = 494.7 MiB (518746112 bytes) Feb 15 20:31:03 orangepipc2 armbian-zram-config[474]: no label, UUID=fdd37d38-5048-4fc5-8e9c-a2d58ac746e5 Feb 15 20:31:03 orangepipc2 kernel: Adding 506588k swap on /dev/zram1. Priority:5 extents:1 across:506588k SSFS Feb 15 20:31:04 orangepipc2 kernel: zram0: detected capacity change from 0 to 52428800 Feb 15 20:31:04 orangepipc2 armbian-zram-config[474]: mke2fs 1.44.1 (24-Mar-2018) Feb 15 20:31:04 orangepipc2 armbian-zram-config[474]: [74B blob data] Feb 15 20:31:04 orangepipc2 armbian-zram-config[474]: Creating filesystem with 12800 4k blocks and 12800 inodes Feb 15 20:31:04 orangepipc2 armbian-zram-config[474]: [41B blob data] Feb 15 20:31:04 orangepipc2 armbian-zram-config[474]: [38B blob data] Feb 15 20:31:04 orangepipc2 armbian-zram-config[474]: [75B blob data] Feb 15 20:31:04 orangepipc2 systemd[1]: Started Armbian ZRAM config. Feb 15 20:31:04 orangepipc2 systemd[1]: Starting Armbian memory supported logging... Feb 15 20:31:04 orangepipc2 kernel: EXT4-fs (zram0): mounted filesystem without journal. Opts: discard Feb 15 20:31:04 orangepipc2 kernel: ext4 filesystem being mounted at /var/log supports timestamps until 2038 (0x7fffffff) Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: Mounting /dev/zram0 as /var/log/ Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: Sat Feb 15 20:31:04 AST 2020: Loading logs from storage Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: sending incremental file list Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: ./ Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: alternatives.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: armbian-hardware-monitor.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: auth.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: bootstrap.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: btmp Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: dpkg.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: faillog Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: kern.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: lastlog Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: syslog Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: tallylog Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: wtmp Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: apt/ Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: apt/history.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: apt/term.log Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: chrony/ Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: journal/ Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: journal/e897b3cee10d4ac99c362d22a9338e00/ Feb 15 20:31:04 orangepipc2 armbian-ramlog[695]: journal/e897b3cee10d4ac99c362d22a9338e00/system.journal Feb 15 20:31:14 orangepipc2 systemd[1]: Started /etc/rc.local Compatibility. Feb 15 20:31:14 orangepipc2 systemd[1]: Started Getty on tty1. Feb 15 20:31:14 orangepipc2 systemd[1]: Started Serial Getty on ttyS0. Feb 15 20:31:14 orangepipc2 systemd[1]: Reached target Login Prompts. Feb 15 20:31:14 orangepipc2 systemd[1]: Reached target Multi-User System. Feb 15 20:31:14 orangepipc2 systemd[1]: Reached target Graphical Interface. Feb 15 20:31:14 orangepipc2 systemd[1]: Starting Update UTMP about System Runlevel Changes... Feb 15 20:31:14 orangepipc2 systemd[1]: Started Update UTMP about System Runlevel Changes. Feb 15 20:31:14 orangepipc2 systemd[1]: Startup finished in 4.483s (kernel) + 13.211s (userspace) = 17.694s. Feb 15 20:31:14 orangepipc2 avahi-daemon[835]: Registering new address record for fd00:fc:8d4f:71b2:5028:4a81:7595:912b on wlx005a39f08724.*. Feb 15 20:31:14 orangepipc2 avahi-daemon[835]: Registering new address record for 2607:fea8:f1a0:d1d8:5028:4a81:7595:912b on wlx005a39f08724.*. Feb 15 20:31:15 orangepipc2 wpa_supplicant[842]: wlx005a39f08724: WPA: Group rekeying completed with 00:fc:8d:4f:71:b8 [GTK=CCMP] Feb 15 20:31:18 orangepipc2 chronyd[1134]: Selected source 91.189.91.157 Feb 15 20:31:18 orangepipc2 chronyd[1134]: System clock wrong by 14.384997 seconds, adjustment started Feb 15 20:31:32 orangepipc2 chronyd[1134]: System clock was stepped by 14.384997 seconds Feb 15 20:31:33 orangepipc2 chronyd[1134]: Can't synchronise: no selectable sources Feb 15 20:31:33 orangepipc2 sshd[1488]: Accepted password for opipc from 192.168.0.15 port 53236 ssh2 Feb 15 20:31:33 orangepipc2 chronyd[1134]: Selected source 91.189.89.199 Feb 15 20:31:33 orangepipc2 sshd[1488]: pam_unix(sshd:session): session opened for user opipc by (uid=0) Feb 15 20:31:33 orangepipc2 systemd[1]: Created slice User Slice of opipc. Feb 15 20:31:33 orangepipc2 systemd[1]: Starting User Manager for UID 1000... Feb 15 20:31:33 orangepipc2 systemd-logind[757]: New session 2 of user opipc. Feb 15 20:31:33 orangepipc2 systemd[1]: Started Session 2 of user opipc. Feb 15 20:31:33 orangepipc2 systemd[1509]: pam_unix(systemd-user:session): session opened for user opipc by (uid=0) Feb 15 20:31:33 orangepipc2 chronyd[1134]: Selected source 198.27.76.102 Feb 15 20:31:34 orangepipc2 systemd[1509]: Listening on GnuPG cryptographic agent and passphrase cache (restricted). Feb 15 20:31:34 orangepipc2 systemd[1509]: Listening on GnuPG cryptographic agent (ssh-agent emulation). Feb 15 20:31:34 orangepipc2 systemd[1509]: Reached target Timers. Feb 15 20:31:34 orangepipc2 systemd[1509]: Listening on GnuPG cryptographic agent and passphrase cache (access for web browsers). Feb 15 20:31:34 orangepipc2 systemd[1509]: Reached target Paths. Feb 15 20:31:34 orangepipc2 systemd[1509]: Listening on GnuPG network certificate management daemon. Feb 15 20:31:34 orangepipc2 systemd[1509]: Listening on GnuPG cryptographic agent and passphrase cache. Feb 15 20:31:34 orangepipc2 systemd[1509]: Reached target Sockets. Feb 15 20:31:34 orangepipc2 systemd[1509]: Reached target Basic System. Feb 15 20:31:34 orangepipc2 systemd[1509]: Reached target Default. Feb 15 20:31:34 orangepipc2 systemd[1509]: Startup finished in 131ms. Feb 15 20:31:34 orangepipc2 systemd[1]: Started User Manager for UID 1000. Feb 15 20:31:34 orangepipc2 chronyd[1134]: Selected source 199.182.221.110 Feb 15 20:31:34 orangepipc2 chronyd[1134]: Selected source 91.189.94.4 Feb 15 20:31:34 orangepipc2 chronyd[1134]: Source 91.189.94.4 replaced with 2001:67c:1560:8003::c7 Feb 15 20:31:34 orangepipc2 wpa_supplicant[842]: wlx005a39f08724: WPA: Group rekeying completed with 00:fc:8d:4f:71:b8 [GTK=CCMP] Feb 15 20:31:34 orangepipc2 chronyd[1134]: Selected source 216.232.132.77 Feb 15 20:31:34 orangepipc2 chronyd[1134]: Selected source 91.189.89.198 Feb 15 20:31:34 orangepipc2 chronyd[1134]: Selected source 91.189.91.157 Feb 15 20:31:36 orangepipc2 chronyd[1134]: Selected source 216.232.132.77 Feb 15 20:31:39 orangepipc2 wpa_supplicant[842]: wlx005a39f08724: WPA: Group rekeying completed with 00:fc:8d:4f:71:b8 [GTK=CCMP] Feb 15 20:31:44 orangepipc2 kernel: usb0-vbus: disabling Feb 15 20:31:47 orangepipc2 systemd-timesyncd[556]: Synchronized to time server [2001:67c:1560:8003::c8]:123 (ntp.ubuntu.com). Feb 15 20:31:56 orangepipc2 systemd-logind[757]: Power key pressed.
Feb 15 20:31:56 orangepipc2 systemd-logind[757]: Powering Off... Feb 15 20:31:56 orangepipc2 systemd-logind[757]: System is powering down. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Host and Network Name Lookups. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Timers. Feb 15 20:31:56 orangepipc2 bluetoothd[826]: Terminating Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Daily apt upgrade and clean activities. Feb 15 20:31:56 orangepipc2 sshd[1488]: pam_unix(sshd:session): session closed for user opipc Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Daily Cleanup of Temporary Directories. Feb 15 20:31:56 orangepipc2 chronyd[1134]: chronyd exiting Feb 15 20:31:56 orangepipc2 systemd[1]: Closed Load/Save RF Kill Switch Status /dev/rfkill Watch. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping User Manager for UID 1000... Feb 15 20:31:56 orangepipc2 sshd[1145]: Received signal 15; terminating. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Daily apt download activities. Feb 15 20:31:56 orangepipc2 rsyslogd[841]: [origin software="rsyslogd" swVersion="8.32.0" x-pid="841" x-info="http://www.rsyslog.com"] exiting on signal 15. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Authorization Manager... Feb 15 20:31:56 orangepipc2 avahi-daemon[835]: Got SIGTERM, quitting. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Message of the Day. Feb 15 20:31:56 orangepipc2 avahi-daemon[835]: Leaving mDNS multicast group on interface wlx005a39f08724.IPv6 with address 2607:fea8:f1a0:d1d8:8913:1b71:cdaf:8372. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Bluetooth. Feb 15 20:31:56 orangepipc2 avahi-daemon[835]: Leaving mDNS multicast group on interface wlx005a39f08724.IPv4 with address 192.168.0.138. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Bluetooth service... Feb 15 20:31:56 orangepipc2 avahi-daemon[835]: Leaving mDNS multicast group on interface lo.IPv6 with address ::1. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Sound Card. Feb 15 20:31:56 orangepipc2 avahi-daemon[835]: Leaving mDNS multicast group on interface lo.IPv4 with address 127.0.0.1. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Session 2 of user opipc. Feb 15 20:31:56 orangepipc2 bluetoothd[826]: Stopping SDP server Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Graphical Interface. Feb 15 20:31:56 orangepipc2 bluetoothd[826]: Exit Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Multi-User System. Feb 15 20:31:56 orangepipc2 avahi-daemon[835]: avahi-daemon 0.7 exiting. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping System Logging Service... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Dispatcher daemon for systemd-networkd... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Regular background program processing daemon... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping chrony, an NTP client/server... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Resets System Activity Data Collector. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping OpenBSD Secure Shell server... Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.4283] device (D8:50:E6:72:E1:EA): state change: disconnected -> unmanaged (reason 'removed', sys-iface-state: 'removed') Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Avahi mDNS/DNS-SD Stack... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Login Prompts. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Getty on tty1... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Serial Getty on ttyS0... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping LSB: Advanced IEEE 802.11 management daemon... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping rng-tools.service... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping LSB: Set sysfs variables from /etc/sysfs.conf... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Discard unused blocks once a week. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target System Time Synchronized. Feb 15 20:31:56 orangepipc2 systemd[1509]: Stopped target Default. Feb 15 20:31:56 orangepipc2 systemd[1509]: Stopped target Basic System. Feb 15 20:31:56 orangepipc2 systemd[1509]: Stopped target Timers. Feb 15 20:31:56 orangepipc2 systemd[1509]: Stopped target Sockets. Feb 15 20:31:56 orangepipc2 systemd[1509]: Closed GnuPG cryptographic agent (ssh-agent emulation). Feb 15 20:31:56 orangepipc2 systemd[1509]: Closed GnuPG cryptographic agent and passphrase cache (restricted). Feb 15 20:31:56 orangepipc2 systemd[1509]: Closed GnuPG cryptographic agent and passphrase cache. Feb 15 20:31:56 orangepipc2 systemd[1509]: Stopped target Paths. Feb 15 20:31:56 orangepipc2 systemd[1509]: Closed GnuPG network certificate management daemon. Feb 15 20:31:56 orangepipc2 systemd[1509]: Closed GnuPG cryptographic agent and passphrase cache (access for web browsers). Feb 15 20:31:56 orangepipc2 systemd[1509]: Reached target Shutdown. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Save/Restore Sound Card State... Feb 15 20:31:56 orangepipc2 systemd[1509]: Starting Exit the Session... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Regular background program processing daemon. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Bluetooth service. Feb 15 20:31:56 orangepipc2 systemd[1509]: Received SIGRTMIN+24 from PID 1631 (kill). Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Dispatcher daemon for systemd-networkd. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Avahi mDNS/DNS-SD Stack. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped System Logging Service. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped chrony, an NTP client/server. Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.4973] bluez5: NAP: removed interface 00:1A:7D:DA:71:13 Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped OpenBSD Secure Shell server. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Authorization Manager. Feb 15 20:31:56 orangepipc2 systemd[1510]: pam_unix(systemd-user:session): session closed for user opipc Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Getty on tty1. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Serial Getty on ttyS0. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped User Manager for UID 1000. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped LSB: Advanced IEEE 802.11 management daemon. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Save/Restore Sound Card State. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Session 2 of user opipc. Feb 15 20:31:56 orangepipc2 systemd[1]: Removed slice User Slice of opipc. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Login Service... Feb 15 20:31:56 orangepipc2 systemd[1]: Removed slice system-serial\x2dgetty.slice. Feb 15 20:31:56 orangepipc2 systemd[1]: Removed slice system-getty.slice. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Permit User Sessions... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped /etc/rc.local Compatibility. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Network is Online. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Network Manager Wait Online. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped LSB: Set sysfs variables from /etc/sysfs.conf. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping LSB: set CPUFreq kernel parameters... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Permit User Sessions. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Network. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping WPA supplicant... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Network Name Resolution... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Raise network interfaces... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping Network Manager... Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.5632] caught SIGTERM, shutting down normally. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Network Name Resolution. Feb 15 20:31:56 orangepipc2 wpa_supplicant[842]: wlx005a39f08724: CTRL-EVENT-DISCONNECTED bssid=00:fc:8d:4f:71:b8 reason=3 locally_generated=1 Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.5826] device (wlx005a39f08724): state change: activated -> deactivating (reason 'unmanaged', sys-iface-state: 'managed') Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Login Service. Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.5859] manager: NetworkManager state is now DISCONNECTING Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped LSB: set CPUFreq kernel parameters. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping LSB: Load kernel modules needed to enable cpufreq scaling... Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6086] device (wlx005a39f08724): state change: deactivating -> unmanaged (reason 'removed', sys-iface-state: 'managed') Feb 15 20:31:56 orangepipc2 dbus-daemon[760]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service' requested by ':1.7' (uid=0 pid=828 comm="/usr/sbin/NetworkManager --no-daemon ") Feb 15 20:31:56 orangepipc2 dbus-daemon[760]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.nm-dispatcher.service': Refusing activation, D-Bus is shutting down. Feb 15 20:31:56 orangepipc2 wpa_supplicant[842]: nl80211: deinit ifname=wlx005a39f08724 disabled_11b_rates=0 Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped LSB: Load kernel modules needed to enable cpufreq scaling. Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6422] dhcp4 (wlx005a39f08724): canceled DHCP transaction, DHCP client pid 1340 Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6423] dhcp4 (wlx005a39f08724): state changed bound -> done Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Raise network interfaces. Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6453] dhcp6 (wlx005a39f08724): canceled DHCP transaction, DHCP client pid 1490 Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6454] dhcp6 (wlx005a39f08724): state changed bound -> done Feb 15 20:31:56 orangepipc2 wpa_supplicant[842]: wlx005a39f08724: CTRL-EVENT-TERMINATING Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped WPA supplicant. Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6745] manager: NetworkManager state is now DISCONNECTED Feb 15 20:31:56 orangepipc2 dbus-daemon[760]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service' requested by ':1.7' (uid=0 pid=828 comm="/usr/sbin/NetworkManager --no-daemon ") Feb 15 20:31:56 orangepipc2 dbus-daemon[760]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.nm-dispatcher.service': Refusing activation, D-Bus is shutting down. Feb 15 20:31:56 orangepipc2 NetworkManager[828]: <info> [1581813116.6892] exiting (success) Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped Network Manager. Feb 15 20:31:56 orangepipc2 systemd[1]: Stopping D-Bus System Message Bus... Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped target Network (Pre). Feb 15 20:31:56 orangepipc2 systemd[1]: Stopped D-Bus System Message Bus. Feb 15 20:32:06 orangepipc2 rng-tools[1626]: Stopping Hardware RNG entropy gatherer daemon: rngd. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped rng-tools.service. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target Basic System. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target Slices. Feb 15 20:32:06 orangepipc2 systemd[1]: Removed slice User and Session Slice. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target Sockets. Feb 15 20:32:06 orangepipc2 systemd[1]: Closed D-Bus System Message Bus Socket. Feb 15 20:32:06 orangepipc2 systemd[1]: Closed Syslog Socket. Feb 15 20:32:06 orangepipc2 systemd[1]: Closed Avahi mDNS/DNS-SD Stack Activation Socket. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target Paths. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped resolvconf-pull-resolved.path. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target System Initialization. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Apply Kernel Variables. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target Local Encrypted Volumes. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Dispatch Password Requests to Console Directory Watch. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Forward Password Requests to Wall Directory Watch. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopping Network Time Synchronization... Feb 15 20:32:06 orangepipc2 systemd[1]: Stopping Armbian memory supported logging... Feb 15 20:32:06 orangepipc2 systemd[1]: Stopping Restore / save the current clock... Feb 15 20:32:06 orangepipc2 haveged[483]: haveged: Stopping due to signal 15 Feb 15 20:32:06 orangepipc2 systemd[1]: Stopping Entropy daemon using the HAVEGE algorithm... Feb 15 20:32:06 orangepipc2 haveged[483]: haveged starting up Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Load Kernel Modules. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopping Update UTMP about System Boot/Shutdown... Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped target Remote File Systems. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Entropy daemon using the HAVEGE algorithm. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Network Time Synchronization. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopping Load/Save Random Seed... Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Restore / save the current clock. Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: Sat Feb 15 20:32:06 AST 2020: Syncing logs to storage Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Update UTMP about System Boot/Shutdown. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Load/Save Random Seed. Feb 15 20:32:06 orangepipc2 systemd[1]: Stopped Create Volatile Files and Directories. Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: sending incremental file list Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: armbian-hardware-monitor.log Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: auth.log Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: kern.log Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: lastlog Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: syslog Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: wtmp Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: journal/e897b3cee10d4ac99c362d22a9338e00/ Feb 15 20:32:06 orangepipc2 armbian-ramlog[1669]: journal/e897b3cee10d4ac99c362d22a9338e00/system.journal

The first half of the messages is all about the sequence of events as the system is booted. Then about half way through the listing, there is an entry showing that the power key was activated. From then on the operating system is being closed down properly. That process is shown in a blue background.

The conclusion is that the power button is a shutdown button only, but it does initiate a proper shutdown. So far I have not found a way to wake the board after a shutdown except for the plug/unplug dance.

Infrared Receiver toc

SUNXI describes the infrared receiver.

Consumer Infrared Receiver
The PC2 board has a Consumer Infrared Receiver (CIR) module located to the right of GPIO connector (CON3) to receive data from a received infrared (IR) signal to port PL11 on H5 Soc. The CIR module is implemented in hardware and provides full physical layer implementation, supports IR for remote control, has 64x8 bits FIFO for data buffer and programmable FIFO thresholds. The CIR registers are at base address: 0x01F02000.

It looks like the infrared receiver (IR) is enabled by default in the lastest version of Armbian Bionic.

opipc@orangepipc2:~$ lsmod | grep cir sunxi_cir 16384 0 rc_core 45056 2 sunxi_cir opipc@orangepipc2:~$ ls -l /dev/input/by-path total 0 lrwxrwxrwx 1 root root 9 Mar 6 14:45 platform-1f02000.ir-event -> ../event1 lrwxrwxrwx 1 root root 9 Mar 6 14:45 platform-r-gpio-keys-event -> ../event0

Results using evtest were underwhelming.

opipc@orangepipc2:~$ evtest /dev/input/event1 Input driver version is 1.0.1 Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100 Input device name: "sunxi-ir" Supported events: Event type 0 (EV_SYN) Event type 1 (EV_KEY) Event code 152 (KEY_SCREENLOCK) Event type 2 (EV_REL) Event code 0 (REL_X) Event code 1 (REL_Y) Event type 4 (EV_MSC) Event code 4 (MSC_SCAN) Key repeat handling: Repeat type 20 (EV_REP) Repeat code 0 (REP_DELAY) Value 500 Repeat code 1 (REP_PERIOD) Value 125 Properties: Property type 5 (INPUT_PROP_POINTING_STICK) Testing ... (interrupt to exit)

Nothing would appear as I tried a KEYES and a Hauppauge IR remote. While there was no visible rc0 device, there is a lirc0 character device which could be read.

opipc@orangepipc2:~$ ls -l /dev/lirc0 crw-rw---- 1 root video 243, 0 Mar 6 19:35 /dev/lirc0

Reading that device showed that the IR receiver was working with both remotes.

opipc@orangepipc2:~$ cat /dev/lirc0 | xxd 00000000: 1804 0001 e002 0000 0804 0001 d802 0000 ................ 00000010: 2804 0001 d802 0000 e003 0001 0003 0000 (............... 00000020: 9004 0001 6802 0000 3004 0001 b002 0000 ....h...0....... 00000030: 8807 0001 d802 0000 2004 0001 d802 0000 ........ ....... 00000040: 3004 0001 b002 0000 5004 0001 b002 0000 0.......P....... 00000050: 5004 0001 9002 0000 4004 0001 3806 0000 P.......@...8... 00000060: 4804 0001 0054 0003 bc10 0200 1804 0001 H....T.......... 00000070: e002 0000 5804 0001 8802 0000 4804 0001 ....X.......H... 00000080: b002 0000 7003 0001 7003 0000 3004 0001 ....p...p...0... 00000090: d002 0000 2804 0001 b802 0000 8807 0001 ....(........... 000000a0: d002 0000 0804 0001 f802 0000 2804 0001 ............(... 000000b0: b802 0000 5004 0001 a802 0000 0804 0001 ....P........... 000000c0: d802 0000 7004 0001 0806 0000 1004 0001 ....p........... 000000d0: 0054 0003 4b95 1200 2804 0001 d802 0000 .T..K...(....... 000000e0: a007 0001 3806 0000 3804 0001 a802 0000 ....8...8....... 000000f0: 4804 0001 b802 0000 4804 0001 9002 0000 H.......H....... 00000100: b007 0001 b002 0000 2004 0001 e002 0000 ........ ....... 00000110: 8003 0001 5803 0000 3804 0001 c802 0000 ....X...8....... 00000120: c003 0001 a006 0000 5807 0001 0054 0003 ........X....T..

At that point it dawned on me that appropraite IR protocols had not been enabled.

opipc@orangepipc2:~$ cat /sys/class/rc/rc0/protocols rc-5 nec rc-6 jvc sony rc-5-sz sanyo sharp mce_kbd xmp imon rc-mm [lirc] opipc@orangepipc2:~$ echo "nec +rc-5" | sudo tee /sys/class/rc/rc0/protocols nec +rc-5 opipc@orangepipc2:~$ cat /sys/class/rc/rc0/protocols [rc-5] [nec] rc-6 jvc sony rc-5-sz sanyo sharp mce_kbd xmp imon rc-mm [lirc]

After enabling the rc-5 and nec protocols, respectively used by the KEYES and Hauppague remotes, evtest behaved as expected.

opipc@orangepipc2:~$ evtest /dev/input/event1 Input driver version is 1.0.1 Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100 Input device name: "sunxi-ir" Supported events: Event type 0 (EV_SYN) Event type 1 (EV_KEY) Event code 152 (KEY_SCREENLOCK) Event type 2 (EV_REL) Event code 0 (REL_X) Event code 1 (REL_Y) Event type 4 (EV_MSC) Event code 4 (MSC_SCAN) Key repeat handling: Repeat type 20 (EV_REP) Repeat code 0 (REP_DELAY) Value 500 Repeat code 1 (REP_PERIOD) Value 125 Properties: Property type 5 (INPUT_PROP_POINTING_STICK) Testing ... (interrupt to exit) Pressed the OK button on the Hauppague remote Event: time 1583538161.012080, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1e25 Event: time 1583538161.012080, -------------- SYN_REPORT ------------ Event: time 1583538161.125975, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1e25 Event: time 1583538161.125975, -------------- SYN_REPORT ------------ Pressed the OK button on the KEYES remote Event: time 1583538173.064728, type 4 (EV_MSC), code 4 (MSC_SCAN), value 40 Event: time 1583538173.064728, -------------- SYN_REPORT ------------ Event: time 1583538173.115926, type 4 (EV_MSC), code 4 (MSC_SCAN), value 40 Event: time 1583538173.115926, -------------- SYN_REPORT ------------ Event: time 1583538173.223649, type 4 (EV_MSC), code 4 (MSC_SCAN), value 40 Event: time 1583538173.223649, -------------- SYN_REPORT ------------ Event: time 1583538173.331465, type 4 (EV_MSC), code 4 (MSC_SCAN), value 40 Event: time 1583538173.331465, -------------- SYN_REPORT ------------ Event: time 1583538173.439219, type 4 (EV_MSC), code 4 (MSC_SCAN), value 40 Event: time 1583538173.439219, -------------- SYN_REPORT ------------ Event: time 1583538173.546982, type 4 (EV_MSC), code 4 (MSC_SCAN), value 40 Event: time 1583538173.546982, -------------- SYN_REPORT ------------

Clearly the kernel driver for the IR receiver is installed by default. Which begs the question, what is the purpose of the cir overlay? Enabling and disabling the cir with the armbian-config does not seem to change anything except for adding or removing cir in the /boot/armbianEnv.txt file.

Power and Status LEDs toc

Let's turn to SUNXI once again from a description of the two on board LEDs

The board has two LEDs mid-way between the Micro USB jack (CN1) and the H5 SoC (U1):
opipc@orangepipc2:~$ ls -l /sys/devices/platform/leds/leds/ total 0 drwxr-xr-x 3 root root 0 Dec 31 1969 orangepi:green:pwr drwxr-xr-x 3 root root 0 Dec 31 1969 orangepi:red:status

There's a commutation of the PWR and STATUS labels which does not matter much. It is obvious that the green LED is used by the system; so the red LED is available.

The content of the brightness file in each directory indicates if the LED is off (content = "0") or on (content = "nn" where nn is any number between 1 and 255).

opipc@orangepipc2:~$ cat /sys/devices/platform/leds/leds/orangepi:green:pwr/brightness 255 opipc@orangepipc2:~$ cat /sys/devices/platform/leds/leds/orangepi:red:status/brightness 0

To turn on or off the red led just write a numeric value to the same file. Note that file belongs to root

opipc@orangepipc2:~$ sudo su root@orangepipc2:/home/opipc# echo 255 > /sys/devices/platform/leds/leds/orangepi:red:status/brightness full brightness root@orangepipc2:/home/opipc# echo 32 > /sys/devices/platform/leds/leds/orangepi:red:status/brightness full brightness opipc@orangepipc2:~$ cat /sys/devices/platform/leds/leds/orangepi:red:status/brightness 32 root@orangepipc2:/home/opipc# echo 0 > /sys/devices/platform/leds/leds/orangepi:red:status/brightness off root@orangepipc2:/home/opipc# echo 1 > /sys/devices/platform/leds/leds/orangepi:red:status/brightness full brightness root@orangepipc2:/home/opipc# exit opipc@orangepipc2:~$

One cannot simply use the sudo prefix with these commands to avoid switching to the super user. However a one line command is possible.

opipc@orangepipc2:~$ $ echo 255 | sudo tee /sys/devices/platform/leds/leds/orangepi:red:status/brightness 255

Here is a little bash script that will make it easy to turn on or of the red led or to find out if it is on or off. Put it somewhere in the search path and don't forget to make it executable.

opipc@orangepipc2:~$ nano .local/bin/redled

#!/bin/bash function usage { me=$(basename -- $0) echo "Usage: $me [on|off]" } function setled { echo $1 | sudo tee /sys/devices/platform/leds/leds/orangepi:red:status/brightness > /dev/null } if [ $# -eq 0 ] then if [ "$(cat /sys/devices/platform/leds/leds/orangepi:red:status/brightness)" == "0" ] then echo "off" else echo "on" fi elif [ $# -ge 2 ] then usage elif [ "$1" == "on" ] then setled "255" elif [ "$1" == "off" ] then setled "0" else usage fi

opipc@orangepipc2:~$ chmod +x .local/bin/redled

CPU and GPU Temperature toc

The H5 datasheet mentions two temperature sensors, but there are three thermal zones defined by the system.

opipc@orangepipc2:~$ ls -l /sys/class/thermal/thermal_zone? lrwxrwxrwx 1 root root 0 Dec 31 1969 /sys/class/thermal/thermal_zone0 -> ../../devices/virtual/thermal/thermal_zone0 lrwxrwxrwx 1 root root 0 Dec 31 1969 /sys/class/thermal/thermal_zone1 -> ../../devices/virtual/thermal/thermal_zone1 lrwxrwxrwx 1 root root 0 Dec 31 1969 /sys/class/thermal/thermal_zone2 -> ../../devices/virtual/thermal/thermal_zone2 opipc@orangepipc2:~$ cat /sys/class/thermal/thermal_zone?/type cpu-thermal gpu-thermal gpu_thermal

I don't know what to make of the second GPU thermal zone (thermal_zone2) which, in any case, cannot be read. Getting the temperatures of the CPU and GPU is straightforward.

opipc@orangepipc2:~$ cat /sys/class/thermal/thermal_zone0/temp 29701 CPU temperature in thousandths of degrees celsius opipc@orangepipc2:~$ cat /sys/class/thermal/thermal_zone1/temp 33870 GPU temperature in thousandths of degrees celsius

Again here is a short script to get the temperature

#!/bin/bash function usage { me=$(basename -- $0) echo "Usage: $me cpu|gpu" } function showthermal { zonetemp=$(cat /sys/class/thermal/thermal_zone$1/temp) ztemp=$(bc <<<"scale=1; $zonetemp/1000") echo "$ztemp°C" } if [ $# -ne 1 ] then usage elif [ "$1" == "cpu" ] then showthermal "0" elif [ "$1" == "gpu" ] then showthermal "1" else usage fi

Upcoming Posts and Some Ramblings toc

Two further posts about the Orange Pi PC 2 are in the works. One will be about using the general purpose input/output pins with emphasis on UART and I2C buses and perhaps something about SPI. I have a lot to learn about GPIO on Armbian, but I2C is working without problems and I have never used SPI, so just when the post will be available remains to be seen. The other post will be about using Bluetooth. That post may appear sooner as Bluetooth is functioning using a USB adapter.

I bought the Orange Pi PC 2 to replace the Orange Pi Zero that runs rather hot and has some problems with Wi-Fi connectivity. I deliberately purchased an Orange Pi that did not have built-in Wi-Fi so that I could use a USB Wi-Fi dongle in the hope of getting reliability. However the Orange Pi Zero has been doing very well running HA-Bridge and as an IR receiver for turning some house lights on and off with a remote. The only problem encountered are that it does not recover well from power outages. I am not sure if the board is not rebooting at all or if there is a problem with Wi-Fi only.

So what will happen to the Orange Pi PC 2? I don't know for sure. Wi-Fi, Bluetooth, and audio (ALSA) all work, so perhaps it could be the base of the Internet radio project since that I have been planning for years but putting off as new and interesting toys show up, such as the now orphaned Orange Pi PC 2.

I would be remiss if I did not express my thanks for the team at SUNXI and Armbian. Without their work these cute little boards would be next to useless.

ALSA and Bluetooth on the Orange Pi PC 2 with Armbian Bionic-> <-Creating a Custom Armbian Image