PC Engines Home
This webpage contains a collection of answers to frequently asked questions and problems people have.
Suggestions, corrections, additions, etc. may be sent to support1207[at]pcengines.ch
Please also see our forum for more information at pcengines.info/forums
alix Prepare a CF with this FreeDOS image and add the files found in the BIOS file alix v0.99m found here
Then boot the alix and execute sb.com
As an alternative there is also an Xmodem upload methode, for alix2 see alix2.upd and for alix3d2 see alix3.upd
If an alix board is bricked an
LPC1a adapter for the corresponding board is needed. Please leave a note when ordering which board it is needed for.

The alix3d3 and alix1d have an AwardBIOS, because TinyBIOS does not support VGA and AC97.
In case of the alix3d3, if the VGA port and AC97 are not used, the TinyBIOS of the alix3d2 can be used instead.

apu1/apu2 We suggest using TinyCore which comes with the tool flashrom. Once an USB stick is prepared with TinyCore the BIOS file needs to be copied to the USB stick.

apu1 To update the BIOS, enter e.g. flashrom -w apu140809.rom
If an apu1 board is bricked an LPC1aapu adapter is needed.

Build 9/8/2014 (beta, reduced "spew level")
Build 7/8/2014 (beta)
Build 4/5/2014 (current production)
Build 4/1/2014 (beta)

apu2 The latest BIOS versions are:

apu2_v4.0.11.rom.tar.gzsee changelogMD5 sum is in the zip file
apu2_v4.6.0.rom.tar.gzcoreboot mainstream versionMD5 sum is in the zip file

To update the BIOS, enter e.g. flashrom -w apu151109.rom
If an apu2 board is bricked an spi1a is needed.
To flash the spi1a use flashrom -w apuXYZ.rom -p internal:recovery_dongle=SPI

apu3 The latest BIOS versions are:

apu3_v4.0.11.rom.tar.gzsee changelogMD5 sum is in the zip file
apu3_v4.6.0.rom.tar.gzcoreboot mainstream versionMD5 sum is in the zip file

To update the BIOS, enter e.g. flashrom -w apu3_20160519.rom
If an apu3 board is bricked an spi1a is needed.

mailing list for new BIOS releases
Please visit http://linux.voyage.hk/.
The root password of Voyage Linux is 'voyage'.

General informations How to prepare any storage device with Voyage Linux on any Linux machine based on the official Voyage tarball:
  • run some Linux, perhaps Voyage Linux on an alix board or any other PC
  • attach the target storage device
  • get the Voyage Linux tar.gz file, wget http://...
  • decompress the image with tar xfvj
  • cd into the new directory and execute ./usr/local/sbin/voyage.update and follow the steps

apu Instead of getting an USB-mSATA adapter for a single use, you can boot the apu from USB and write an image on the mSATA inserted in the apu board.
To install Voyage Linux on an mSATA module follow these steps:
  • prepare an USB stick with TinyCore USB installer v1.8
  • get the latest amd64.tar.bz2 file from http://www.voyage.hk/download/voyage/amd64/, and copy it to the TinyCore USB-Stick
  • boot TinyCore on the apu board
  • cp voyage-0.X_amd64.tar.bz2 /tmp/
  • cd /tmp/
  • mkdir /mnt/cf
  • tar xf voyage-0.X_amd64.tar.bz2
  • cd voyage-0.X_amd64
  • start the installation script with /tmp/voyage-0.X_amd64/usr/local/sbin/voyage.update

for autologin install mingetty and change /etc/inittab accordingly
#T0:23:respawn:/sbin/getty -L ttyS0 115200
T0:23:respawn:/sbin/mingetty --autologin root --noclear ttyS0

See: IPFire vs. pfSense

apu1 coreboot source: www.pcengines.ch/tmp/coreboot_140908.tar.gz
Voyage Linux image for apu with the complete toolchain to build the BIOS: www.pcengines.ch/tmp/apu_bios_builder.img.gz


apu2 For building apu2 coreboot please see: Building firmware using APU2 image builder
Many installation images do not redirect the console to the serial port.
The redirection is usually needed in two places.
  1. the bootloader: see syslinux.cfg
  2. the console prompt: /etc/inittab which might need something like this: ttyS0::respawn:/sbin/getty -nl /sbin/autologin 115200 ttyS0
Linux installation images usually have a compressed filesystem like initrd.gz which can be expanded. After changing some files, it can be compressed again.
These are the typical steps:
  1. decompress
    • gunzip initrd.gz (returns one file called 'initrd')
    • mkdir initrd_rootfs
    • sudo sh -c 'cd initrd_rootfs && cpio -i' < initrd
  2. change some files
  3. compress
    • sh -c 'cd cinitrd_rootfs && sudo find . | sudo cpio -H newc -o' | gzip -9 > initrd.gz

Important: the SD slot on the apu2 boards is directly connected to the CPU and needs the module SDHCI to work.
Do not use an SD to boot FreeBSD based OS like pfSense and OPNSense on apu2 boards. Only very recent kernel versions fully support booting via SDHCI.
Try an USB-SD adapter in case of related troubles. If it works with the USB-SD adapter, but not in the SD slot, then the SDHCI module is missing ...
This is a short and incomplete list of working 3G miniPCIe modems:

Sierra WirelessMC8790http://www.sierrawireless.com/...
Sierra WirelessMC730xhttp://www.sierrawireless.com/...
Sierra WirelessMC77xxhttp://www.sierrawireless.com/...

Avoid Sierra Wireless modules ending with a "V" standing for voice, as they have a proprietary pinout.

Many usefull informations can also be found here: TXLAB.

Hint: check for SIM card with:

The MAC address of the first NIC on all PC Engines boards is derived of its serial number, the following NICs have subsequent addresses.
This is the conversion from MAC ID to serial number and vice versa:

MAC ID = 00:0d:b9 (our OUI) : (serial + 64) * 4
serial = (MAC ID & 0x000000FFFFFF) / 4 - 64

MAC ID Serial converter
Serial number

alix The alix boards have 4 GPIOs available, the three LEDs D4, D5, D6 plus the button S1. These are also connected to J13.
If you intend using the GPIOs where the LEDs are connected as inputs, then the LEDs should be removed. Otherwise the LEDs will die due to the appllied 3.3V.
For additional GPIOs an I2C IO-Expander from various chip manufacturer are available, like NXP or TI. There are also many inexpensive easy to use modules available at aliexpress.com.
Also see here and here.

apu1 The apu1 boards have two types of GPIOs:
  • The three LED's D5, D6, D7 plus the button S1 are directly connected to the southbridge
  • The pin-header J19 has 16 GPIOs connected to the NCT5104
If you intend using the GPIOs where the LED's are connected as inputs, then the LEDs should be removed. Otherwise the LEDs will die due to the appllied 3.3V.

For all apu boards please see : https://github.com/pcengines/linux-gpio-nct5104d and https://github.com/pcengines/apu_gpio_lib

apu2 The apu2 boards have two types of GPIOs:
  • The three LED's D4, D5, D6 plus the button S1 are directly connected to the CPU
  • The pin-header J17 has 16 GPIOs connected to the NCT5104
If you intend using the GPIOs where the LED's are connected as inputs, then the LEDs should be removed. Otherwise the LEDs will die due to the appllied 3.3V.

NCT5104 Datasheet v1.9
Please also see https://daduke.org/linux/apu2/ where it says:
A kernel module to access the 3 front LEDs on the apu2 boards and a small daemon to use LEDs 2 and 3 as network up/downstream indicators.
Use LED 1 as a load indicator:
modprobe ledtrig_default_on; modprobe ledtrig_heartbeat
echo heartbeat > /sys/class/leds/apu2:1/trigger
and run apuled like this:
apu2led eth0 -c nrt -f

apu3 The apu3 boards has one additional GPIO compared to the apu2 for controlling the SIM switch:
See https://github.com/pcengines/apu_gpio_lib
apu2 i2cpiix4.tar.gz

This section provides information about add-on cards for apu boards.

known good
Function Manufacturer Card type Chipset Comment Source
Network LogiLink PCIe RTL8111
USB LogiLink PCIe μPD720202datasheet
SATAIOcrestPCIeMarvell 88SE9215gets rather hotAmazon aliexpress

known bad
Function Manufacturer Card type Chipset CommentSource
Network unknown half-sized miniPCIe RTL8111
SATA asmedia PCIe asm106x

alix Disk Images
winxpe_raw_files-tools-instructions.rar *
winxp16gb.img.gz *
winxp_4gb_image.rar *

*Please make sure you have a valid license

Use this alix_FreeDOS_Installer_v1.3 to create FreeDOS bootable CF card.

apu Disk Images
centosapu20140822.gz *
ESXi 6 Image (root pw: vmwareesxi) also see Instructions for vSphere Hypervisor ESXi 6.5.0 installation on APU2c4

How to write compressed disk images to mSATA Prepare an USB stick with TinyCore, add the compressed image to the stick and boot the apu board with it.
Use the command "fdisk -l" to determine the device name of the target storage.
In the following commands it is presumed that /dev/sdX is the target device name (but sda or sdb is more likely):

zipunzip -p diskimage.img.zip | pv | dd of=/dev/sdX bs=1M
gzgzip -dc diskimage.img.gz | pv | dd of=/dev/sdX bs=1M
tar.gztar xzOf diskimage.img.tar.gz | pv | dd of=/dev/sdb bs=1M
xztar xvfJ diskimage.tar.xz | pv | dd of=/dev/sdb bs=1M
bz2bzip2 -dc diskimage.img.bz2 | pv | dd of=/dev/sdb bs=1M

Note: "pv" is a pipe-viewer and displays the progress.

Links to installation instructions for apu
Install CentOS / RHEL v6.x
Install NethServer over CentOS

© 2002-2016 PC Engines GmbH. All rights reserved.