3rd-Party Ubuntu ROM for Khadas VIM

Hi, Forks:
We research an Ubuntu image built by Balbes150, which is tested available on Khadas VIM, here we write a guidance to install the Ubuntu image on VIM for early bird, and our official will release soon.

Download the image to SD card

Download the the image and extract:

$ xd -d Armbian_5.24_Amlogic-s905x_Ubuntu_xenial_3.14.29_desktop_20161223.img.xz

Insert a SD card into your PC, and run dd command to write the disk image into SD card:

$ sudo dd if=Armbian_5.24_Amlogic-s905x_Ubuntu_xenial_3.14.29_desktop_20161223.img of=/dev/sdb bs=4M
$ sync


  • Don’t forget to run sync command to make sure synchronize cached writes to SD card.
  • You can also install the image via using a Windows PC, refer here for details.
  • As the image released by Balbes150 haven’t built-in the bootloader yet, you still need to do one more step below.

Make the SD card bootable

Insert the TF card into your PC, and make sure the disk is unmounted:

$ umount /dev/sdb1

Format the TF Card as Fat32:

$ sudo mkfs.vfat /dev/sdb1 

Download the u-boot blob released for Khads VIM, and run dd to write it into the first sector of SD Card:

$ sudo dd if=u-boot.bin.sd.bin of=/dev/sdb bs=1 count=444 && sync
$ sudo dd if=u-boot.bin.sd.bin of=/dev/sdb bs=512 skip=1 seek=1 && sync

Eject the SD card:

$ sudo eject /dev/sdb

Boot from the SD card

As Khadas VIM support many different types of boot disk(SD card, USB-Disk and onboard eMMC storage), so it’s needed to figure out one manually to boot up if there are more than two bootable media exist at the same time. Ways to boot from the bootable SD card you created aboved:

  • Erase the eMMC and Khadas VIM will boot from the SD card automately.
  • Force enter into MaskRom mode first, then Khadas VIM will try to boot from SD card.
  • Long press the Function button to boot from SD card.(Need upgrade to the latest ROM first)


  • Make sure that the SD card is a bootable card and writed with the right disk image aboved.
  • eMMC is the 1st boot disk for Khadas VIM, so if there are bootable ROM on eMMC, the hardware will boot from eMMC first.
  • Function button mode: the hardware will boot from eMMC first, then switch to load the image/ROM on SD card via software approach.

Done! You can now insert the SD card into your Khadas VIM and power up.
User: root
Password: 1234 (Will tip you to create a new one at the first booting)


Known issues:

  • There is not booting Logo displayed, so the monitor will always black until device boot into the desktop.
1 Like

Balbes150 is credited with much good work on the S905/S905x platform.

I can hardly wait for my VIM to arrive.

It should be noted, from Balbes150…

“> 1. All the latest images Armbian have u-boot. And what’s more, this u-boot has a built-in multiboot. Ie to point “Make the SD card bootable” is NOT necessary.
> 2. To erase u-boot from emmc is not necessary. To run systems with different media, there are universal multiboot. Support multi-upload is already integrated in the images Armbian.”

Of course I don’t have my VIM to test yet, but erasing emmc to boot from SD card should not be necessary.

Also, Windows users can use a utility like HDD Raw Copy, Win32 Disk Imager or Rufus to burn the images to an SD card.
Note: HDD Raw Copy has a portable version for those interested.

Please keep in mind, Balbes150 does not possess a VIM for testing, info I have posted here is based as it applies generally to the S905/S905x platforms.
I have successfully tested his images on several S905 and S912 boxes.

I didn’t carefully read all the contents you post until I write the new topic.

And I missed the comments following:

  • I’m not quite sure, but here I check again, haven’t found the u-boot built-in the Balbes150’s Armbian ROM
  • Make the SD card bootable step is not quite must, but necessary, because:
    • If the Amlogic S905X device use the Amlogic’s default U-Boot, it indeed will load the script aml_autoscript which is built-in the Armbian’s ROM, and this script will do the setup to load the Image/uInirtd and rootfs
    • I did write this steps was for a better reference for developers, in some cases, developers like me will burn a different u-boot and simplify the u-boot load process, which may not to load the aml_autoscript
  • About Erase Step, as eMMC is the 1st boot disk for S905X, in some case, the eMMC install a different u-boot and cann’t load the SD card, in this case, developers can erase the eMMC and force to boot from SD card.

Thanks for the information Gouwa.
Hopefully mine arrives soon. Looking forward to trying the new Vim Ubuntu.

I have installed lxde ubuntu on eMMC, it works, but i do have issues with my password, i can’t use anything that needs superuser rights, i am 100% sure the pass is correct, but terminal says authentication failure.

I am pretty new to Linux, i know very little to none when it comes to using terminal, but it doesn’t mean i don’t understand anything when it comes to Linux.

Hi, Tommy21:
Which ROM version did you install?
Have you read the release in another thread notes yet?

Note that the account info:

  • user: root
  • password: khadas

Good luck!

Balbes lxde ubuntu, i’ve changed user name and pass.

When i am at login screen, and log in as root with that same pass, i can use apt-get command.

I’ve got the same issue. How did you change your login settings to login as root I could really use that. This is driving me insane.
Thanks for any help

Ctrl+alt+f2 immediately after system boot, login as user root, not your login name, and pass is the original pass you created.

Good to see i am not the only one with this issue, but it would be better if none of us had this issue.

I do have further questions, is chromium available for arm, can i use any software center, how to connect to wifi, is there any youtube app working, i know Linux had one great yt app, Kodi…

I am not sure about wifi working with this image, or maybe i wasn’t looking at the right place because i was busy with this password error, but as i can remember, it should be much easier to connect to wifi than the way i had to use yesterday.

It is better to wait for official khadas image, than flashing this multi s905/s905x images.

I really like this board, didn’t regret a second, Android ran great, thus is a big jump from what i’ve had before, but i want to use some lightweight desktop OS on it.

Can you still boot from SD after installing the latest Ubuntu rom as I can not it’s a real pain been trying for hours and can not get it into upgrade mode either.

I have installed Ubuntu on eMMC, didn’t try anything from sd card, i managed to install ubuntu software center running as root, it was a pain, but i have managed.

Yeah I installed to eMMC too now I’m trying to get back to android till the official Ubuntu release but I can not do anything. It’s just looked to Ubuntu now. I can upgrade, I can not wipe eMMC, And I can’t install from SD.
I’ll figure it out but it’s a nitemare.

Wooow, i have succeeded to change the pass running as root with ctrl+alt+f2, still the same, terminal doesn’t accept it, it’s driving me mad.

I hope you’ll figure it out soon, share it here, maybe i will go back to Android until they release a working image.

I think if I can access uboot I should be able to fix it, any ideas. I think the version of u boot on the Ubuntu image is old and the button config isn’t working I wish we had keyboard short cuts for the power, reset and function buttons. Then I’d be able to test in more detail. My other option is to get the gpio to USB cable and use that.

I wish i could help you, maybe some of the mods can help you, they tested this image, i hope we aren’t stuck on this image.

1 Like

Thanks Tommy21 Hopefully a mod will help I even tried shorting the M-register but even that didn’t put me in upgrade mode

Hi, Junk:

  • The U-Boot code is release on our Github site.
  • The u-boot code is latest on u-boot, but the branch is ubuntu and different with Android which branch as Vim.
  • Yes, as what your said, we haven’t built-in the buttons in the ubuntu branch yet, will do that in next release for Ubuntu-Mate
  • Ubuntu-Mate Demo version will be released in a few days

The M-register should be okay for force boot into upgrade mode. can you describe the steps you operated?

And you can also try Serial Mode to erase eMMC if you still failed to done that.

Hi, Tommy & Junk:
Which version Ubuntu ROM did you install on VIM?

And we will release Ubuntu-Mate demo ROM soon.