Rothirsch Technologies Hintergrund


Looks like the hardware I was searching for

Clearfog eMMC

Armbian installation on a clearfog (base/pro) with eMMC using UART connection. You will need

  • a FAT formatted USB Stick where you can store the Armbian image and some bootloader files
  • an USB A to microUSB B cable
  • Clearfog Base or Pro with a power adapter

For this article I simply used other articles from the Web and combined that to write a complete Armbian installation instruction for a Clearfog with eMMC. You can find all articles at the end of this side.

Prepare installation files

mkdir -p /opt/clearfog_installation
cd /opt/clearfog_installation
export CURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
curl --output clearfog-emmc-v3.tar.gz
tar xfz clearfog-emmc-v3.tar.gz

Copy following files to an USB stick

mount <your usb> /mnt/
mv u-boot-clearfog-base-mmc.kwb zImage armada-388-clearfog.dtb /mnt/

Put Armbian to the stick

You have to create the extlinux directory and put the extlinux.conf into it. You’ll need this do boot a linux image. With it you will be able to write the Armbian image to the eMMC memory

mkdir -p /mnt/extlinux
mv extlinux.conf /mnt/extlinux/
cd /mnt/extlinux/

Clearfog Pro


Clearfog Base


Extract and check integrity

7za e Buster_current
shasum -a 256 -c Armbian_19.11.3_Clearfogpro_*.sha Armbian_*.img
Armbian_5.59_Clearfogpro_Debian_stretch_next_4.14.66.img: OK
cd /opt/clearfog_installation
umount /mnt


  • Plug in USB stick to the Clearfog
  • Plug in USB cable (USB A site) to the PC
  • Plug in USB cable (microUSB B site) to the Clearfog
  • Set Jumper to UART 0 1 0 0 1

On my clearfog pro jumper for UART is 01001 not 11110 like described here

The maintainer also describes this issue here


The maintainer delivers kwboot for the installation. With it you can send the u-boot bootloader to the device

./kwboot -t -b u-boot-clearfog-base-uart.kwb /dev/ttyUSB0


  • Power up the Clearfog
  • Wait a few minutes for the U-Boot image to download
  • !! Hit a key to stop autoboot !!
    • Wait for it. It’ll come faster then you think
  • Configure the eMMC to boot from hardware boot partition

PC (kwboot terminal)

mmc partconf 0 1 1 0
date reset
run bootcmd_usb0

login with root

mount /dev/sda1 /mnt
dd if=$(ls /mnt/extlinux/Armbian_*.*.*_Clearfogpro_buster_current_*.*.*.img)  of=/dev/mmcblk0 bs=1M conv=fsync
hdparm -z /dev/mmcblk0
umount /mnt/
mount /dev/mmcblk0p1 /mnt/
[ 432.634521] EXT4-fs (mmcblk0p1): couldn’t mount as ext3 due to feature incompatibilities
[ 432.643043] EXT4-fs (mmcblk0p1): couldn’t mount as ext2 due to feature incompatibilities
[ 432.658936] EXT4-fs (mmcblk0p1): mounted filesystem with writeback data mode. Opts: (null)


echo 0 > /sys/block/mmcblk0boot0/force_ro
dd if=$(ls /mnt/usr/lib/linux-u-boot-current-clearfogpro_*_armhf/u-boot.emmc)  of=/dev/mmcblk0boot0
sed -i 's/emmc_fix=off/emmc_fix=on/g' /mnt/boot/armbianEnv.txt
umount /mnt/

PC (a second terminal)

killall kwboot
screen /dev/ttyUSB0 115200


  • Unplug power adapter
  • Set jumpers to 0 0 1 1 1
  • Plugin power jack

Now you should see Armbian booting up in the terminal were you executed the screen command