APL1 Ubuntu user documentation

From AAEON Community Wiki
Jump to: navigation, search

How to install your operating system

Install Ubuntu

Download the Ubuntu 16.04 ISO from the Ubuntu download page:


Burn the image on a USB stick. We suggest using Etcher for doing that. You can download it from


Insert the USB installer disk in a empty USB port and proceed with a normal Ubuntu installation. After the system reboots, open a terminal and run:

sudo apt update
sudo apt full-upgrade -y
sudo reboot

Install AAEONC kernel from PPA

After the reboot you need to add our repository and replace the default kernel:

$ sudo add-apt-repository ppa:ubilinux/aaeonc

The output will be:

   PPA containing the kernel and support packages for aaeon community boards
   More info: https://launchpad.net/~ubilinux/+archive/ubuntu/aaeonc
   Press [ENTER] to continue or ctrl-c to cancel adding it
   gpg: keyring `/tmp/tmpeoxw49hz/secring.gpg' created
   gpg: keyring `/tmp/tmpeoxw49hz/pubring.gpg' created
   gpg: requesting key E952D27B from hkp server keyserver.ubuntu.com
   gpg: /tmp/tmpeoxw49hz/trustdb.gpg: trustdb created
   gpg: key E952D27B: public key "Launchpad PPA for ubilinux team" imported
   gpg: Total number processed: 1
   gpg:               imported: 1  (RSA: 1)

After that, type the following commands to remove the generic kernel and install the specific one for the PICO-APL1 board

$ sudo apt-get update
$ sudo apt-get --purge remove linux-*generic*
$ sudo apt-get install linux-image-generic-hwe-16.04-aaeonc
$ sudo apt-get --purge autoremove
$ sudo reboot

After the reboot you can verify that the kernel is indeed installed by typing:

$ uname -srv
    Linux 4.10.0-42-generic #5000~aaeonc6-Ubuntu SMP Thu Jan 11 12:27:30 UTC 2018

Intel graphics stack

You can install Intel graphics firmware from:


Select the .deb package to download:


Change directory to “file path”

$ cd <filepath>/

install gdebi package manager:

$ sudo apt-get install gdebi

Install the package with the following command: for Ubuntu* 16.04(64bits)

$ sudo gdebi intel-graphics-update-tool_2.0.2_amd64.deb

Add PPA repository for stable mesa-utils

$ sudo add-apt-repository ppa:paulo-miguel-dias/pkppa && sudo apt-get update

Once installed, you can find the Intel® Graphics Update Tool for Linux* OS in your application dashboard. Just look for the Intel® logo, or begin typing ‘Intel’.

Or, if you are a power user, you can open a terminal and execute:

$ intel-graphics-update-tool

Follow the instructions to install the driver and wait for the installation. After that, you must to reboot the board.

Brightness Controller for Ubuntu

Install Brightness Controller with the following commands:

$ sudo add-apt-repository ppa:apandada1/brightness-controller
$ sudo apt-get update
$ sudo apt-get install brightness-controller

After installation, search the “Brightness Controller” in your Ubuntu and control the brightness settings.

How to test the single interfaces


All the GPIO interfaces are based in /sys/class/gpio/.

You first have to request a GPIO. So if we wanted to request GPIO 0, we would do:

root:/> echo 0 > /sys/class/gpio/export

If this process was successful, you would end up with a /sys/class/gpio/gpio0 directory.

Then when we were done with it, we would release it by doing:

root:/> echo 0 > /sys/class/gpio/unexport

To set GPIO 0 to an input:

root:/> echo in > /sys/class/gpio/gpio0/direction

To set GPIO 0 to a high output:

root:/> echo high > /sys/class/gpio/gpio0/direction

To set GPIO 0's value to 0:

root:/> echo 0 > /sys/class/gpio/gpio0/value

To read GPIO 0's current value:

root:/> cat /sys/class/gpio/gpio0/value

Hardware monitoring sensors

Use lm-sensors to access:

Step 1. Install lm-sensors.

    $ sudo apt-get install lm-sensors

Step 2. Run sensors-detect and answer YES to “Super I/O sensors” questions.

    $ sudo sensors-detect

Step 4. Test the sensor output using the lm-sensors utility "sensors".

    $ sensors

You should see one sensor output like:

Adapter: ISA adapter
in0:          +0.89 V  
in1:          +2.97 V  
in2:          +1.35 V  
in3:          +2.97 V  
in4:          +2.97 V  
in5:          +2.97 V  
fan1:           0 RPM
temp1:        +36.0°C  
Adapter: ISA adapter
Package id 0:  +40.0°C  (high = +105.0°C, crit = +105.0°C)
Core 0:        +40.0°C  (high = +105.0°C, crit = +105.0°C)
Core 1:        +40.0°C  (high = +105.0°C, crit = +105.0°C)
Core 2:        +38.0°C  (high = +105.0°C, crit = +105.0°C)
Core 3:        +38.0°C  (high = +105.0°C, crit = +105.0°C)



You can use i2c-tools to access i2c bus on EC.

$ sudo apt-get install i2c-tools
$ sudo i2cdetect -l

You should see one i2c device list like that:

i2c-3	i2c       	i915 gmbus misc                 	I2C adapter
i2c-1	i2c       	i915 gmbus dpb                  	I2C adapter
i2c-6	i2c       	Synopsys DesignWare I2C adapter 	I2C adapter
i2c-4	i2c       	Synopsys DesignWare I2C adapter 	I2C adapter
i2c-2	i2c       	i915 gmbus dpc                  	I2C adapter
i2c-0	smbus     	EC I2C Host Controller 1        	SMBus adapter
i2c-5	i2c       	Synopsys DesignWare I2C adapter 	I2C adapter

If you can't see the above output, be sure to have the i2c-dev kernel module loaded with

sudo modprobe i2c-dev

And then try again to list the i2c devices with

sudo i2cdetect -l



Enter as root user:

$ sudo -i

Reboot after 1 minute:

$ echo 1 > /dev/watchdog


Download from:


Build the eltt2 tool and run:

./eltt2 -g
TPM capability information:
TPM_PT_FAMILY_INDICATOR:      <wbr></wbr>  2.0\00
TPM_PT_LEVEL:                 <wbr></wbr>  0
TPM_PT_REVISION:              <wbr></wbr>  116
TPM_PT_DAY_OF_YEAR:           <wbr></wbr>  209
TPM_PT_YEAR:                  <wbr></wbr>  2015
TPM_PT_MANUFACTURER:          <wbr></wbr>  IFX\00
TPM_PT_VENDOR_STRING:         <wbr></wbr>  SLB9665\00\00\00\00\00\00\00\<wbr></wbr>00\00
TPM_PT_VENDOR_TPM_TYPE:       <wbr></wbr>  0
TPM_PT_FIRMWARE_VERSION:      <wbr></wbr>  5.51.2098.0

Shared RAM:                     0 CLEAR
Shared NV:                      1 SET
Object Copied To Ram:           1 SET

Owner Auth Set:                 0 CLEAR
Sendorsement Auth Set:          0 CLEAR
Lockout Auth Set:               0 CLEAR
Disable Clear:                  1 SET
In Lockout:                     1 SET
TPM Generated EPS:              0 CLEAR

Ph Enable:                      0 CLEAR
Sh Enable:                      0 CLEAR
Eh Enable:                      1 SET
Orderly:                      <wbr></wbr>  0 CLEAR