Jump to content

How to change resolution HDMI display (Armbian5.27)?

Recommended Posts

Donate your old hardware to community. Start a giveaway Raffle!

On 11/21/2018 at 3:59 AM, Fenn said:

I ended up working this out with the help of this post - specifically, if you add the following to /boot/armbianEnv.txt, you can force the video mode.


Some examples:



extraargs=drm_kms_helper.edid_firmware=HDMI-A-1:edid/640x480.bin video=HDMI-A-1:640x480-24@60



extraargs=drm_kms_helper.edid_firmware=HDMI-A-1:edid/1920x1080.bin video=HDMI-A-1:1920x1080@60


I didn't have to install any extra packages or anything using Armbian Debian Stretch / 4.14.78-sunxi, it just worked out of the box (edid files already installed/etc).

Thx mate..this is the right answer on question!

Link to comment
Share on other sites

In Armbian-Config you can set the Boot-Env, there was :




I've changed that to "1280x1024p50" but still get the 1024x768.   


The TV-DVI-Input I use is a little bad so EDID does not work, but forced 1280x1024 works with my raspberry pi. 


Is 1920x1080p60 wrong syntax may be, may be something with -24@50 is needed?


Link to comment
Share on other sites

Does someone solved the problem with wrong resolution on boot?

I have Waveshare touchscreen LCD(B) with resolution 800x480. Sometimes it detects as expected and after boot my GUI application run well with correct touchscreen coordintaes.

If I run

DISPLAY=:0 xrandr -q

I got output

Screen 0: minimum 320 x 200, current 800 x 480, maximum 8192 x 8192
HDMI-1 connected primary 800x480+0+0 (normal left inverted right x axis y axis) 150mm x 100mm
   800x480       65.68*+

The screen detects default resolution and even screen physical size.

However sometimes it detects wrong and touchscreen coordinates doesn't match to physical position.

If run 

DISPLAY=:0 xrandr -q

I got output

Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
HDMI-1 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00* 
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94  

The resolution is wrongs as well as the physical coordinates isn't detected.

I've tried to put this row to armbianEnv.txt

extraargs=drm_kms_helper.edid_firmware=HDMI-A-1:edid/800x480.bin video=HDMI-A-1:800x480-24@60

This solved correct position of bootlogo during boot, but does't solve wrong touchscreen coordinates after boot. Moreover it causes very long boot time (more than 1 minute)

I've tried to put U-boot env and save it

setenv video-mode sunxi:800x480-24@60,monitor=hdmi,hpd=0,edid=0

It doesn't work at all.

I've tried to set U-Boot variable


I was thinking the wrong detection of screen dimension may lay in surface of screen initialization time. However it doesn't help too. The screen initialized before that delay.

I've tried to put conf file to xorg conf according to this topic. It give correct resolution and touchscreen coordinates after boot, but form time to time wrong position of bootlogo.

Does someone find the best solution?

Link to comment
Share on other sites

ok so it seems fen's solution would work, but I'm in a pickle here as my monitor resolution is 480x800. I got this screen for KlipperScreen, and it doesn't display anything despite having only an HDMI cable to send the display signal. It's a waveshare display from softpear.


Never messed with U-boot btw so if Fenn's solution works with this display that'd be great

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...