question

ste7of1 avatar image
ste7of1 asked

RPi4 Venus OS HDMI 10” display blanking control

Is it possible to add a blank (black or dark gray) display “page” that could be accessed like the other display pages for the purpose of blanking an hdmi display. I realize this won’t cut energy usage, but, according to venus/rPi and rpiDisplaySetup documentation the normal ‘hdmi_blanking = 1’ is not supported. It seems GuiMods adds display pages (like the ”Tank Monitor” page). I tried reviewing QML docs but have no clue how this is implemented (or how to accomplish this).

gui mods
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

1 Answer
Kevin Windrem avatar image
Kevin Windrem answered ·

You should be able to get the display to go black even if the specific display doesn't support powering down the backlight. The key is to find out what device is being used to feed the display. I suspect it is fb0 or fb1. in /sys/class/backlight you should find subfolders for the display frame buffer that is in use.

RpiDisplaySetup may be of some help.

https://github.com/kwindrem/RpiDisplaySetup

It would be possible to add a blank page. The page is added in main.qml. The modified version included in GuiMods should give you an idea where to add the page, then create a .qml file that just has a background and no other objects.

6 comments
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

ste7of1 avatar image ste7of1 commented ·
Thanks, and thanks for your work on Gui mods. I manually edited config file for display parameters. RpiDisplaySetup said I needed to run from commandline but I don’t remember what that result was - i just ended up editing.

Anyway, I will attempt to follow your direction and see what happens. Thanks again.

0 Likes 0 ·
ste7of1 avatar image ste7of1 ste7of1 commented ·

@Kevin Windrem I have looked (but did not find) /sys/class/backlight. I did however find fb0 and fb1 and fbcon in /sys/class/graphics. Don’t know if this is the right place or whether it is completely unrelated. Also, if these are related, i’m not sure what to do with them or how to tell what is being used as you have indicated. as an aside, I reinstalled the graphics option on my pi4 using your RpiDisplaySetup/setup from the commandline. I did have to use the touch calibrate, which i didn’t when manually configuring, but, graphically it works, but, still no blanking.

thanks,

steve

0 Likes 0 ·
Kevin Windrem avatar image Kevin Windrem ste7of1 commented ·

You first need to figure out what frame buffer your display is using. I'd start with .../fb0/...

look around in /sys/class/graphics/... and see if there is a file called "blank" or something like it.

First make sure the file is readable:

cat /sys/class/graphics/fb0/blank

This should return a 0 or a 1

use echo to change the state and see if the display blanks:

echo 1 > /sys/class/graphics/fb0/blank
echo 0 > /sys/class/graphics/fb0/blank

If so, you've found the interface to display blanking.

If not, look for another similar file.

Add a custom blanking file to /data/setupOptions/RpiDisplaySetup (discussed in the ReadMe) with the blanking file you find. Then install RpiDispaySetup again.

0 Likes 0 ·
Lars Filusch avatar image Lars Filusch Kevin Windrem commented ·

@Kevin Windrem

echo 1 > /sys/class/graphics/fb1/blank is working

can you please explain a little more details how to creat/modify files in

/data/setupOptions/RpiDisplaySetup 

to make blanking working

thanks

Lars

0 Likes 0 ·
Kevin Windrem avatar image Kevin Windrem Lars Filusch commented ·

You don't edit files in setupOptions.

Run the setup script and walk through all the prompts. Eventually, it will ask you for custom blanking and dimming devices.

Enter /sys/class/graphics/fb1/blank to the prompt for the blanking device.

0 Likes 0 ·
Lars Filusch avatar image Lars Filusch Kevin Windrem commented ·

this works from the console

                         
  1. echo 1 > /sys/class/graphics/fb1/blank
  2. echo 0 > /sys/class/graphics/fb1/blank



but even when running the setup again with:

hdmi_blanking = 1


display want blank automatically.

Any ideas?


thx

Lars



0 Likes 0 ·

Related Resources

Additional resources still need to be added for this topic