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
Troubleshooting
  • The loop-back test: put a paper clip in the female DB9 connector which would go on the alix/apu board at pins 2 and 3, then you should receive typed characters in your terminal emulation program. This tests the terminal emulation program, the USB-RS232 and the serial cable and this test MUST work before blaming any board attached to it. But this test does not prove whether or not a null-modem cable is used.
  • The most common mistake people make is not using a null-modem cable: If you have a multimeter, check that the pins 2 and 3 are crossed. Do NOT use gender changers!
  • The default baud rate for alix boards is 38400,8n1 and for apu boards 115200,8n1.
  • The recommended terminal emulation program for any platform is PuTTY.
  • Pressing the button S1 while powering up, temporarily enables a previously in the BIOS disabled serial console.
  • To test if an apu board boots up, even if there is no serial console, boot it with TinyCore and a beep should be heard after about 30s-40s.

The output of the BIOS redirected to the serial port can be disabled, this can be useful when the port is needed for a controlling device.
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.

APU2 The latest BIOS versions are:

apu151109.zip boots from mSATA apu2_151106sd.zip boots from SD apu2_160120.zip fix miniPCIe IRQ assignments, wle200nx working


To update the BIOS, enter e.g. flashrom -w apu151109.rom -p internal
If an apu2 board is bricked dediprog is needed or send it in.

mailing list for new BIOS releases
Setup of a bootable drive to support apu flash upgrades can be a bit tricky.
TinyCore Linux is a small system that boots up quite quickly. The apu board can boot TinyCore from an USB memory stick or from an SD card in the internal slot.

Installation under Windows
apu1 TinyCore USB installer for apu1:
apu-tinycore-usb-installer.exe

apu2 TinyCore 6.4 USB installer for apu2:
apu2-tinycore6.4-usb-installer.exe
apu2-tinycore6.4.img.gz
apu2-tinycore6.4.tar.bz2


Installation under Linux or MacOS Format a USB stick or SD card with a FAT file system, then make it bootable with syslinux. Finally extract the files found in apu_tinycore.tar.bz2 to the target device.

Source for building apu-tinycore-usb-installer.exe using NSIS
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

ALIX This is a 1GB Voyage Linux Image for alix boards ready to run:
http://www.pcengines.ch/file/voyage-0.9.2.img.zip

For alix3d3 and alix1d boards changes in two files are needed to get the console on the VGA port on:

/etc/inittab
  comment "T0:23:respawn:/sbin/getty -L ttyS0"
  uncomment "#1:2345:respawn:/sbin/getty 38400 tty1"

/boot/grub/menu.lst
  comment "serial --speed=38400"
  replace "terminal serial" with "terminal console"
  replace "kernel ... console=ttyS0" with " ... console=tty0"

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

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

SageBios_PCEngines_APU_sources_for_publishing_20140401_GPL_package.tar.gz
SageBios_PCEngines_APU_sources_for_publishing_20140405_GPL_package.tar.gz
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
The apu1 board can boot via iPXE and get the installation image directly from IPfire via HTTP without the need of preparing a bootable storage device. These are the steps:
  • enable network boot in the APU BIOS setup
  • boot the APU and press CTRL-B to get into the iPXE console
  • receive an IP address from your local DHCP Server by typing: ifconf
  • type: chain http://mirror1.ipfire.org/releases/ipfire-boot/latest/undionly.kpxe
  • install IPfire with the serial console option
The unmodified files 'initrd.gz' and 'linux' from netboot.tar.gz plus a modified 'syslinux.cfg' can be found here.
This allows an easy installation of Ubuntu on apu boards.
Simply add these three files to the FAT partition of an USB stick previously prepared with the TinyCore USB installer.
  1. make an USB stick bootable with syslinux or use the convenient TinyCore USB installer.
    The USB installer labels the disc TINYCORE, which syslinux.cfg refers to, change as needed, see below
  2. copy all folders from the CentOS-7-x86_64-Minimal.iso to the USB drive
  3. change the content of syslinux.cfg in the root directory of the USB drive to this:

    SERIAL 0 115200
    CONSOLE 0

    default centos

    ALLOWOPTIONS 0
    TIMEOUT 600

    label centos
    kernel isolinux/vmlinuz
    append initrd=isolinux/initrd.img inst.stage2=hd:LABEL=TINYCORE quiet console=ttyS0,115200n8
This is a short and incomplete list of working 3G miniPCIe modems:

ManufacturerSeriesURLcomment
Sierra WirelessMC8790http://www.sierrawireless.com/...
Sierra WirelessMC730xhttp://www.sierrawireless.com/...
Sierra WirelessMC77xxhttp://www.sierrawireless.com/...
Ericssonf5521
Ericssonf5321gw

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
ALIX Disk Images
winxpe_raw_files-tools-instructions.rar *
winxp16gb.img.gz *
winxp_4gb_image.rar *
voyage-0.9.2.img.zip

*Please make sure you have a valid license

APU Disk Images
centosapu20140822.gz *
OpenBSD_install55_Serial115200_amd64.img.tar.gz
apu_bios_builder.img.gz
debian-7.8-amd64-CD-1.iso
ESXi 5.5 Image – 8GB Image *

* installation instructions see below

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
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
VMWare ESXi 5.5
Intel igb driver for ESXi
Install NethServer over CentOS

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