Change resolution in multi-user.target

Hi,

So i have an NX with jetpack 4.5.1, connected to a small industrial monitor that supports a max resolution of 800×600.

When i connect the monitor, it doesn’t work by default and i have to use xrandr command to change the resolution and be able to use it. My main goal, however, is using the NX in multi-user.target (console mode), so i can’t use xrandr command, so how can i change the resolution in multi-user.target and how can i make this change permanent.

It’s worth mentioning that i tried to change the mode in /sys/class/graphics/fb0/mode to one of the modes in /sys/class/graphics/fb0/modes but it didn’t work.

Sorry, not able to understand your question.

So what do you expect to see in console mode?

My problem is that the monitor doesn’t work at all in console mode (i only get “out of range” message from the monitor indicating that the resolution/refresh rate is not suitable for the monitor) so i need to change the default resolution of the NX in console mode.

Is that in text mode? Is your monitor HDMI without an adapter?

Are you using rel-35 or you are using rel-32?

I am using rel-32

That happens in both text mode and GUI mode.
My Monitor is VGA but i use VGA-HDMI adapter to connect it to the NX.

VGA-HDMI adapter is not guarantee. Please try to use native HDMI monitor and see if issue is still.

I tried a native HDMI monitor that supports the default resolution of the NX, it worked without issues, but when i tried to change the resolution in console mode using /sys/class/graphics/fb0/mode it still didn’t work.

Also, using xrandr command in GUI works in changing the resolution even when i use the VGA-HDMI, so i don’t think the adapter is the issue here (i could be wrong of course).

Ultimately, My goal is not to get a working monitor, my goal is to be able to change the resolution to work with any monitor (including my 800x600 industrial monitor).

Hi,

One question here. What would happen to the console when your “resolution change” is successful? or it never happens so you don’t know?

And what is the error case? Your monitor just goes into blanked?

Did you try to blank and ublank the monitor manually by yourself after you change the resolution?

And one thing to test here.

Please enable the GUI again. Use xrandr to change the resolution. After you change it, use usb keyboard and run ctrl+alt +F1~F6 to switch to console mode. Will the result meet your expectation under such situation?

Sadly I was never successful in changing the resolution in console mode so i don’t know.

And to answer your question regarding the error case, When i try to change the resolution using the fb method, the monitor just goes blank and then turns off.

I am not sure what you mean by blank and unblank the monitor, but if you mean turn in off then On again, i already tried that and didn’t work.

Also tried changing the resolution using xrandr then going into console mode using the keyboard.
Unfortunately, the monitor just displays “out of range” again

No, I mean below command.

sudo echo 4 > /sys/class/graphics/fb0/blank #blank display and power down
sudo echo 1 > /sys/class/graphics/fb0/blank #blank display and show the background color
sudo echo 0 > /sys/class/graphics/fb0/blank #unblank display

Could you share me the dmesg when you see that “out of range” in your monitor? Also, are we still using native HDMI to hit the issue you are talking about?

I don’t know about text console, but graphical mode must use true HDMI. The plug-n-play configuration uses the DDC wire with the EDID2 protocol, whereas VGA usually cuts that wire, or if it is present would use an earlier EDID protocol (they are supposed to be backwards compatible, but in reality are not). It does have me very curious though whether or not the framebuffer console (in multi-user.target, not graphical.target) ever uses EDID data.

1 Like

blanking and unblanking the monitor using those commands after changing the resolution in console mode using fbset worked.
Thanks for the help.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.