NanoPi NEO2 Board Benchmarks with Ubuntu 16.04.2 using Linux 3.10 and Linux 4.10

I’ve received NanoPi NEO 2 boards, add-boards and sensor modules last week, where we could see how small the boards were, and how it could be suitable for IoT projects or “hardware hacking” education.  Before testing the board with the add-ons, I have to select the image to run on the board, and currently we have two choices: Ubuntu 16.04.2 FriendlyELEC image with Linux 3.10 “legacy” kernel, or Armbian Ubuntu 16.04.2 Xenial nightly build with Linux 4.10 “mainline” kernel. So I decided to try both: dfssf

  • (296 MB) is the image from FriendlyELEC (previously FriendlyARM)
  • Armbian_5.27.170401_Nanopineo2_Ubuntu_xenial_dev_4.10.0.7z (222 Mb) is the image from Armbian, which I downloaded on March 31st despite the filename including “170401” string

You can flash the image with Win32DiskImager (Windows) or dd (linux) to a micro SD card the usual way, and while I’ve never personally had troubles with dd, I’ve been told Etcher was better, as it verifies the SD card after flashing, and dd may miss errors. Etcher works in Windows, Linux, and Mac OS with a graphical user interface or from the command line. I used Etcher GUI in my Ubuntu 16.04 computer, and it’s indeed easy to use, shows the progress, and a big plus for me is that you can’t mess with your USB hard drive, as it will filter them. Another small advantage is that you don’t need to uncompress the firmware, as Etcher will do that for you, at least for zip files, but i had to manually uncompress Armbian .7z archive before loading to Etcher.

Note that I used the exact same micro SD card (the 8GB SanDisk Ultra sold by FriendlyELEC) and the same board for both images. I started with FriendlyELEC image, and then repeated the test with Armbian image.

I connected the Gigabit Ethernet port to my GbE switch, as well as FriendlyELEC Matrix USB2UART board with the provide cabled including 5V, GND, Tx and RX. It will power the board too, but if you’re going to run benchmarks, there won’t always be enough, and I also used a USB power supply connected to the micro USB port. Having 5V on the serial cable makes it inconvenient, because when I need to power cycle the board I had to remove both the debug board and the extra USB power supply. So instead I used 3 jumper wires without 5V as shown in the picture below.

Click to Enlarge

FriendlyELEC Ubuntu 16.04.2 Boot Log and Info

I used minicom connected to /dev/ttyUSB0 with 115200 8N1 configuration to boot the board, and this is the boot log for Ubuntu 16.04.2 image with Linux 3.10 once I got the debug board issue mentioned above out of the way (so it’s not the very first boot):

It will login automatically in the console, and you don’t need to to enter the username & password. If you need to use sudo later the password for “pi” user is simply “pi”

Let’s check some of the system details:

Linux 3.10.65 is used, and the root file system was automatically resized during the first boot to make use of the complete storage available on the micro SD card. We have 928 MB used out of 7.2 GB. It will show four Aarch64 cores part of sun50iw2 family. There are some module loaded specifically for camera support such as vfe_v4l2 module, which you could disable in /etc/modules if you don’t need it.  I’ll need GPIO support for BakeBit Starter Kit, and it seems enabled by default.

Just like in NanoPi NEO Ubuntu, there’s a Qt demo enabled in /etc/rc.local, so you may want to remove the lines below since we don’t have an LCD display connected to the board:

Armbian Ubuntu 16.04.2 Boot Log and Info

The boot log for Armbian is much shorter (and cleaner):