Display resolution hack?

The official word from OF has always been that the monitor (their 10 inch in my case) must always be powered on before the controller to insure the controller boots using the proper screen resolution. I would really like to be able to power both the controller and display from a single switched outlet though, so wondering if anyone has discovered a hack or trick as a workaround?

John
Mine power up at the same time I have all my power leads except the spindle and water pump plugged into a bank of sockets that are controlled by a double isolator. When i boot up i just turn the isolator on and everything comes to life, shutting down I use the flyout on the controller to power off then once the screen goes to default mode i switch the isolator off. so far not caused me any issues

Darren

Variation in power-on components, I guess - for me, powering both on at the same time is a crap shoot - sometimes all is good, sometimes I end up with the wrong screen resolution.

Could you split the outlet and use two switches, then just make sure you turn the one to the screen on first. You could also just make the outlet going to the screen ‘on’ all the time if you don’t mind the small amount of power use.

On mine I bought an outlet (that I turn on/off with a switch)with built in USB ports and use that to power the monitor and I haven’t had any problems with the screen turning on too late.

Hey John,

you could do the following:

  1. Open a terminal window on the controller (by typing <Ctrl>+t <Ctrl>+c), or ssh into the controller (as user “bbmc” with password “onefinity”).
  2. Then enter the following commands:
sudo -i
mount -o remount,rw /boot
cd /boot
cp -ai config.txt config.old
nano config.txt

Inside nano editor, jump at the end of file and add the following lines:

hdmi_group=2
hdmi_mode=82
# Note: HDMI mode 82 is 1920 x 1080p, 60 Hz

Note: This setting will set the display resolution to FullHD with 60 Hz. For other resolutions see the link below.

Exit nano with saving file by doing <Ctrl>-x, y, <Enter>. Then enter the command:

reboot

Note: Be sure that in /boot/config.txt, there is no line active that says hdmi_safe=1

Explanation: The default behaviour at boot is that the video core requests the monitor’s capabilities like maximum resolution using EDID. This may fail in case the monitor is not ready at boot and result in a fallback to VGA resolution. Forcing a HDMI Mode in /boot/config.txt works around the problem by avoiding EDID auto-detect. This way I never have to worry to turn on monitors first. I even have raspis that are connected to a KVM switch which see no monitor at all, but with this method they always boot with the right resolution. The only disadvantage is that the resolution is fixed by configuration then, so you got to remember to alter this setting in case you replace the monitor by one with a different resolution.

I use ‘hdmi_mode’ in /boot/config.txt in all my raspis, since I rarely change the monitor that they are conntected to.

Further reading

1 Like

Where did you get your isolator from and which one are you using?

Les
I am in the UK and my setup is.
I have 5 double sockets on a dedicated power spur fed from the distribution board via a dedicated MCB
Just above the where the 5 double sockets are located I have a 20amp Double Pole Switch with an indicator light on .
The bank of sockets supply The Onefinity controller, The Onefinity laser, Power to the LED lighting in the Onefinity enclosure, a powered USB hub, a laptop charger, a feed to a 100mm extract fan used when laser engraving.
Hope this helps

I’d like to know as well. It seems like more often than not, mine boots to the wrong resolution. Yesterday, I restarted the controller three times with no effect on the resolution. Finally just figured out how far below the button to push on the screen and started a five hour carve. My monitor and controller are both plugged into the same surge protector. I turn on the surge protector (monitor comes on) then a minute or so later I turn on the controller.