This is the second of two different, but similar Armbian desktop images I am sharing for the Khadas VIM3. This one is arm64 native, with a kernel compiler environment. This is an alternative to the hybrid armhf/arm64 image announced here, a̶n̶d̶ ̶s̶u̶i̶t̶a̶b̶l̶e̶ ̶f̶o̶r̶ ̶m̶o̶s̶t̶ ̶u̶s̶e̶s̶ ̶t̶h̶a̶t̶ ̶d̶o̶n̶’̶t̶ ̶r̶e̶q̶u̶i̶r̶e̶ ̶a̶u̶d̶i̶o̶ ̶o̶u̶t̶p̶u̶t̶ ̶t̶h̶o̶u̶g̶h̶ ̶H̶D̶M̶I̶ FIXED.
Again, I’d like to thank the individual efforts by @Spikerguy and help from @jtremblant for my earlier TwisterOS image, which provided many of the configurations to make this functional. Additional credit goes to lanefu, a contributor on the Armbian forums, for his valuable information on the Armbian firstboot mechanisms.
Please feel free to offer input and feedback for possible improvements, and to use this as a possible basis for your own unofficial community efforts.
Community Armbian arm64 Image for Khadas VIM3 Pro, Single Board Computer.
Description:
This is a clean system Image of Armbian 21.02.3, derived from the Armbian supported image for the ODroid N2+ SBC, using the Meson64 current Armbian Linux kernel images, prepared for the Khadas VIM3 SBC. Selective configuration items are derived from the Khadas Fenix build tool, tested to interoperate with Armbian.
The image is tuned for Amlogic A311D SOC, including support for the native G12 audio device, NOW WITH HDMI audio output, and the Khadas cooling-fan implementation, with a minimum of changes to installed software baselines.
This is a fully native ARM64 image, with the inclusion of Linux headers and C compiler environment. It is suited to building custom kernel modules, etc. for use in the Armbian image for Khadas VIM3 that I provided with a 32-bit package environment.
Compatibility:
The image includes a mainline uBoot, prepared with the Khadas Fenix tools specifically for VIM3.
This Armbian image is partitioned with an MBR as a single EXT4 root FS, and 8192 beginning sectors of unpartitioned space for the uBoot loader. This image layout is not compatible with the Khadas kRescue installer or Amlogic USB Tool, and may not be fully compatible with imaging tools intended for use with Raspberry Pi SBCs.
-N̶O̶T̶E̶:̶ ̶A̶u̶d̶i̶o̶ ̶o̶u̶t̶p̶u̶t̶ ̶v̶i̶a̶ ̶t̶h̶e̶ ̶V̶I̶M̶3̶ ̶H̶D̶M̶I̶ ̶c̶o̶n̶n̶e̶c̶t̶o̶r̶ ̶i̶s̶ ̶n̶o̶t̶ ̶f̶u̶n̶c̶t̶i̶o̶n̶a̶l̶.̶ ̶T̶h̶i̶s̶ ̶i̶s̶ ̶a̶ ̶p̶r̶o̶b̶l̶e̶m̶ ̶w̶i̶t̶h̶ ̶t̶h̶e̶ ̶a̶u̶d̶i̶o̶ ̶s̶t̶a̶c̶k̶ ̶i̶n̶ ̶6̶4̶-̶b̶i̶t̶ ̶D̶e̶b̶i̶a̶n̶ ̶a̶n̶d̶ ̶U̶b̶u̶n̶t̶u̶ ̶d̶i̶s̶t̶r̶i̶b̶u̶t̶i̶o̶n̶s̶ ̶f̶o̶r̶ ̶t̶h̶e̶ ̶V̶I̶M̶3̶ ̶a̶n̶d̶ ̶o̶t̶h̶e̶r̶ ̶A̶m̶l̶o̶g̶i̶c̶ ̶A̶3̶1̶1̶D̶ ̶S̶O̶C̶ ̶s̶y̶s̶t̶e̶m̶s̶.̶ ̶I̶f̶ ̶y̶o̶u̶ ̶r̶e̶q̶u̶i̶r̶e̶ ̶e̶a̶s̶y̶ ̶a̶u̶d̶i̶o̶ ̶o̶u̶t̶p̶u̶t̶,̶ ̶I̶ ̶h̶a̶v̶e̶ ̶a̶n̶ ̶[̶A̶r̶m̶b̶i̶a̶n̶ ̶3̶2̶-̶b̶i̶t̶,̶ ̶a̶r̶m̶h̶f̶ ̶i̶m̶a̶g̶e̶ ̶f̶o̶r̶ ̶t̶h̶e̶ ̶V̶I̶M̶3̶]̶(̶h̶t̶t̶p̶s̶:̶/̶/̶f̶o̶r̶u̶m̶.̶k̶h̶a̶d̶a̶s̶.̶c̶o̶m̶/̶t̶/̶c̶o̶m̶m̶u̶n̶i̶t̶y̶-̶a̶r̶m̶b̶i̶a̶n̶-̶2̶1̶-̶0̶2̶-̶3̶-̶i̶m̶a̶g̶e̶-̶f̶o̶r̶-̶k̶h̶a̶d̶a̶s̶-̶v̶i̶m̶3̶-̶p̶r̶o̶-̶w̶i̶t̶h̶-̶3̶2̶-̶b̶i̶t̶-̶u̶s̶e̶r̶s̶p̶a̶c̶e̶/̶)̶ ̶t̶h̶a̶t̶ ̶u̶s̶e̶s̶ ̶t̶h̶e̶ ̶s̶a̶m̶e̶ ̶6̶4̶-̶b̶i̶t̶ ̶k̶e̶r̶n̶e̶l̶ ̶a̶s̶ ̶t̶h̶i̶s̶ ̶a̶r̶m̶6̶4̶ ̶s̶y̶s̶t̶e̶m̶.̶ ̶O̶f̶ ̶c̶o̶u̶r̶s̶e̶ ̶h̶i̶n̶t̶s̶ ̶h̶e̶r̶e̶ ̶f̶r̶o̶m̶ ̶o̶t̶h̶e̶r̶ ̶m̶a̶i̶n̶t̶a̶i̶n̶e̶r̶s̶,̶ ̶b̶u̶i̶l̶d̶e̶r̶s̶ ̶a̶n̶d̶ ̶u̶s̶e̶r̶s̶ ̶a̶r̶e̶ ̶w̶e̶l̶c̶o̶m̶e̶!̶
Audio output now working for HDMI.
Compatible installation methods are described below.
How to Install:
uBoot:
The image is ready-to-write, for SD-card or USB media, providing a live, running system. This is dependent on having a multi-boot capable uBoot from Khadas is present on the VIM3 eMMC, or that the eMMC is blank. uBoot may be current and capable on your VIM3.
Download:
Begin by download the image.xz file and corresponding .md5 files for validation from the Archive.org links:
Armbian_21.02.3_kvimpro_arm64_focal_current_5.10.21_xfce_desktop.img.xz
Armbian_21.02.3_kvimpro_arm64_focal_current_5.10.21_xfce_desktop.img.xz.md5
Alternative .torrent transfer:
armbian-21.02.3-kvimpro-arm-64-focal-current-5.10.21-xfce-desktop.img_archive.torrent
Downloaded images may be verified with the hash in the provided .md5 file
Imaging:
Armbian provide guidance on transferring the downloaded image.xz to an SD card. You may already have a preferred method. During testing, all of my images were transferred to removable media with the standard Gnome Disks utility, included with many Linux distributions.
https://docs.armbian.com/User-Guide_Getting-Started/#how-to-prepare-a-sd-card
Khadas have similar, brief instructions that also describe USB flash drives:
https://docs.khadas.com/vim3/BootFromExtMedia.html
Booting:
At this point, you should have an SD card or USB flash drive, that inserted in your VIM3, will boot Armbian into “first boot” setup when powered on.
If booting is not successful from your external media after following Armbian and Khadas guidance, it’s likely that your VIM3 has an incompatible uBoot on the built-in eMMC. This can be updated.
Khadas offer a guide to install the latest uBoot with their “krescue” recovery tool:
https://docs.khadas.com/vim3/index.html#Krescue-Khadas-Rescue-OS
Logging in:
On successful booting, Armbian will begin several one-time tasks, including expansion of the root filesystem for all available space on the installed target media, and creation of a new user account. This is expected to take several minutes before settling, so be patient and don’t interrupt the process.
ROOT PASSWORD: 1234 (Changed on first boot, this is the Armbian standard configuration)
USERNAME: (Configured on first boot)
PASSWORD: (Configured on first boot)
After successfully booting and initially configuring Armbian on your VIM3, the system can be transferred to the onboard 32GB eMMC storage from this running SD or USB image. Transfer of the system from SD/USB media (mmcblk1 / sda) to the VIM3 eMMC (mmcblk2) has ben tested, through use of the Armbian “nand-sata-install” tool, provided in the image.
https://docs.armbian.com/User-Guide_Getting-Started/#how-to-install-to-emmc-nand-sata-usb
References:
- Armbian Information: https://www.armbian.com/
- Armbian Guide: Getting Started - Armbian Documentation
- Khadas VIM3 SBC: https://www.khadas.com/vim3
UPDATE:
Announcement on the Armbian Forums:
UPDATE 2:
With further testing, HDMI AUDIO NOW WORKS in arm64 image build!
Heads up! @jtremblant of the TwisterOS project, and a great systems guy, just informed me that HDMI audio output now works out-of-the-box for pure arm64 builds!
This was not true of earlier test builds. I suspect that I did not track a change, copying /var/lib/alsa/asound.state from my armhf build. These correct settings for ALSA mixer seem to be a likely solution.
Users of Fenix Ubuntu on VIM3 may want to verify if this solves audio issues, along with my other configuration details found here:
₩₳ł₮ł₦₲ ₣ØⱤ ₮ⱧɆ ₲ł₣₮ Ø₣ ₴ØɄ₦Đ ₳₦Đ Vł₴łØ₦
— Jeremiah