question

jpetzrick avatar image
jpetzrick asked

HDMI blanking

win-20230205-11-01-32-pro.jpgI've been browsing here for a few weeks now. Read lots of posts and learning linux commands.

The concensus is there is no way to blank some HDMI screens. Just wanted to see if there is any new info on this front. I purchased this screen to try it out. The main reason I bought this screen was because it was the only one I could find where the connections were on the back and not the edge. I want to mount it on the wall of our motorhome with a bezel to hide the edges and have a clean look with no bulky connectors sticking out and wires through the wall. It does work quite well and after a little trial and error using the RpiSetup scripts and info on the Amz wiki page for the product I found a combination that works for the screen and touch. I have not been able to get it to blank or dim even though the slider and timeout are in the settings. I have two questions-

1. Should I see the arrow buttons on right side of the screen when the Gui is active on my display. It seems to work fine with the overview pages and I can navigate the settings via touch or USB attached keyboard. I would rather not have to take out the keyboard just to navigate or enter a name or something. Is there a setting to show the right side of the screen with the arrows/enter selection buttons? That part does show if I remote in via local IP or VRM so why not on the 7" touch screen. Does it recognize a USB keyboard so it just doesn't show that part of the screen?

2. Can someone steer me in the right direction to look for alternate display drivers or files that control the blanking. Its not a deal breaker with this display as it has a on/off button on the side, and it does work fine. It just will not be accessible once mounted in the wall. I may have to figure out a mechanical way to reach the button through the cover. Too bad they don't have a cover that works. I will make one from a plastic sheet or have a friend 3D print something. The wife hates lights on when trying to sleep, plus its a waste of energy (batteries) to have the screen on.

FYI- I'm running a Pi 4b 8G v. 1.4 and using Venus 2.92 large as I hope to use Node Red at some point, but that's a ways down the road. Also using Setup helper v4.33 GuiMods v7.12 RpiDisplaySetup v3.13 The long wires in the picture are 15 ft extensions needed to get from Rpi location to where the 7" screen will be mounted (works fine with extra 5V power injected at display). On the plus side I just got my Ruuvi tag and USB GPS plugged in and happy to report it was plug and play. Just needed to select them in settings. Victron 150/70 ve.can MPPT coming tomorrow. Solar panels in the garage waiting to test the setup.

Here is the screen I purchased off Amz-
Ingcool 7 inch Capacitive Touch Screen IPS Screen Display 1024x600 Resolution 7" HDMI LCD Module for Raspberry Pi, Jetson Nano Developer Kit, PC Supports Various Systems

Note the 1024x600 is not one of the standard options so I did a custom size. See the wiki on AMZ for lines to add to the config.txt but do it after you getting working and touch calibrated with RpiDisplaySetup, then run just the touch calibration again to get that part right.win-20230205-11-01-32-pro.jpg

display
2 |3000

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

5 Answers
Kevin Windrem avatar image
Kevin Windrem answered ·

Look around in /sys/class and see if you can find a file that will bank the display when writing a 1 to the file and unblank when you write a 0 to it. You can then reference the path to that file when running RpiDisplaySetup.

HDMI displays will typically not dim since there's no mechanism in the HDMI spec to control brightness.

2 |3000

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

jpetzrick avatar image
jpetzrick answered ·

Where do I find /sys/class?

Results of df-

Filesystem 1K-blocks Used Available Use% Mounted

/dev/root 1072940 917852 81632 92% /

devtmpfs 4009576 4 4009572 0% /dev

tmpfs 4043368 976 4042392 0% /run

tmpfs 4043368 580 4042788 0% /var/volatile

/dev/mmcblk0p1 42180 22342 19838 53% /u-boot

/dev/mmcblk0p4 2517684 15072 2355004 1% /data

/dev/sda1 7798784 1476 7797308 0% /run/media/sda1

tmpfs 4043368 976 4042392 0% /service

I wish this implementation had a tree fuction. I'm trying to learn my way around but its a slow process with lots of trial and error. Is there a way to copy an entire card so just incase I bugger it up I can switch cards?

1 comment
2 |3000

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

Kevin Windrem avatar image Kevin Windrem commented ·

As the path suggests, it's located at the root of the file system:

cd /sys/class

from there, navigation depends on what's present on your specific system.

The first place I'd look is in /sys/class/graphics.

You may find fb0 and fb1 there. These are symbolic links

try

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

then try

echo "1" >  /sys/class/graphics/fb1/blank
echo "0" >  /sys/class/graphics/fb1/blank

If either of these blanks your display.

If' you've tried all the options in RpiDisplaySetup, then the fb1 device might work and if it does you can enter /sys/class/graphics/fb1/blank as a custom blank device when running the setup script again.

If this is lost on you, I suggest you seek out some one with unix command line experience.


I don't know any way to backup the system SD card. Others may know of a way.

0 Likes 0 ·
jpetzrick avatar image
jpetzrick answered ·

Thank you! This does toggle the display off and on.-

root@raspberrypi4:/sys/class/graphics/fb1# echo "1" > /sys/class/graphics/fb1/blank

root@raspberrypi4:/sys/class/graphics/fb1# echo "0" > /sys/class/graphics/fb1/blank

If I do it manually in Putty then the display blanks but it does not come back on via screen touch or pressing the button on the side of screen itself. Will this correct itself if I get the custom device entry in setup script?

Now I just need to work it into the display setup. Is there a way too just enter the path into a config file or do I have to run RpiDisplaySetup again?

If I do it in RpiDisplaySetup do I enter "/sys/class/graphics/fb1/blank " at the prompt (with no quotes)? I'll give that a try and report back.

I don't see a file for dimming. Here is what I have in fb1-

root@raspberrypi4:/sys/class/graphics/fb1# ls -a

. blank device pan stride

.. console mode power subsystem

bits_per_pixel cursor modes rotate uevent

bl_curve dev name state virtual_size

File mode is empty.

File modes has one line- U:1024x600p-0

state has one line- 0

pan has one line- 0,0

rotate has one line- 0

bl_curve reports- no such device

uevent has 3 lines-

MAJOR=29

MINOR=1

DEVNAME=fb1

stride has one line- 4096

name has one line- BCM2709 FB

Do you see anything that may work for dimming?



2 |3000

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

Kevin Windrem avatar image
Kevin Windrem answered ·

You can edit the file that controls blanking in /etc/venus but that won't survive a firmware update. If you run the RpiDisplaySetup setup script, there's a place to enter the blanking device (the path you found that works). That will be stored in a place and update the /etc/venus blank file when firmware updates.


You won't be able to set up dimming for an HDMI display since there's no support for it in the protocol. (The GX Touch does but uses some proprietary extensions to HDMI that other displays do not have.)

2 |3000

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

jpetzrick avatar image
jpetzrick answered ·

I added the path /sys/class/graphics/fb1/blank after the prompt and it does work properly now. Thanks again for your help.

What about the lack of navigation buttons on the display? It would be nice to have them on the touch screen. I'm ordering a cheap mini keyboard with track pad so I can type and navigate.

FYI- I've been running it for a few days now and occasionally I have to reboot. It seems to lose keyboard/mouse connection. Lost GPS once also. Everything seems to reconnect on reboot.

I'm going to move on to learn node-red to try some customizations on that end.

1 comment
2 |3000

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

Kevin Windrem avatar image Kevin Windrem commented ·
It's not possible to add the navigation buttons to the GUI page. That's done in the web page only (remote console). I assume the assumption is that you either have the dedicated buttons of the CCGX or a touch screen (Cerbo / GX Touch).

You can use the arrow, space, enter and escape on a physical keyboard.

0 Likes 0 ·

Related Resources

Additional resources still need to be added for this topic