Technical

Setting virtual screen resolution for ESXi Arm VMs

Since the launch of the ESXi-Arm Fling, I have often seen the question of changing the screen resolution of the virtual machines. Unfortnately ESXi for Arm comes with a new, not final, version of the VMware virtual SVGA adapter, and there is at the moment no driver available for Guest OSes.

As a result, it is not possible to change the screen resolution from Linux or from any other OS. But all hope is not lost, you can ask grub to request the screen resolution using its EFI GOP driver.


From an ubuntu 20.04, you can edit /etc/default/grub, and put the resolution you want into the GRUB_GFXMODE variable:

/etc/default/grub

Then run the sudo update-grub2 command, reboot, and voilĂ !


The maximum screen resolution you can use depends on the virtual video card memory size. Here is a quick table from my experiments:

Video memory size (MB)Maximum screen resolution
41152 x 864
81600 x 1200
162048 x 1536

Finally, you can list the available video modes directly from grub with the videoinfo command:

GRUB list of available video modes.