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 flashrom and the latest apu BIOS file are included in our TinyCore image. Later BIOS files can be copied to the root directory of the FAT file system - our TinyCore setup will automatically mount the file system and set the current directory there.

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_160311.zipadded iPXE payload (can yet not be disabled in the setup)
apu2_160307.zipadded boot from SD
apu2_160211.zip(probably) fixed reboot
apu2_160120.zipfix miniPCIe IRQ assignments, wle200nx working
apu2_151109.zipboots from mSATA
apu2_151106sd.zipboots from SD

To update the BIOS, enter e.g. flashrom -w apu151109.rom -p internal
If an apu2 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 apu-tinycore-usb-installer.exe*
  • 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/
  • tar xfvj 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

* please use the TinyCore installer for apu1 also for apu2 boards to install Voyage Linux, some needed tools are missing on the later installers.

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

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.

Sample C-code for driving the LEDs:apu1-leds.tgz
NCT5104 Datasheet & GPIO-Patch:nct5104.tar.bz2

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.

Sample C-code for driving the LEDs & S1:gpio_apu2.tar.gz
NCT5104 Datasheet & GPIO-Patch:nct5104.tar.bz2

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. Download is here, just run
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
apu2 i2cpiix4.tar.gz

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

*Please make sure you have a valid license

apu Disk Images
centosapu20140822.gz *
ESXi 5.5 Image – 8GB Image *

* for apu2 ESXi 6.0.0 Update 2 is needed, see 'OS installations'

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.