HDMI alive at boot

Have Pi 3b+ running latest OSMC connected to a TCL android TV.

Really struggling to keep the HDMI alive. Added the following to config:
hdmi_mode=16
hdmi_force_hotplug=1
config_hdmi_boost=7
hdmi_group=1
hmdi_drive=2
And now if TV is put in standby when it is turned back on, the signal is there. However if TV is off (or in standby) when PI/ OSMC boots there is no signal when I turn TV on.

Any ideas - very flaky power in this house causes numerous power outs, so this is a common problem for me :wink:

Thanks

You should be able to hardcode an EDID. This may help.

@sam_nazarko thanks for the reply. Can you give me any pointers how to do this? Searched the forum but can only find d one post about a similar issue in the veto with the command:

sudo cp /sys/class/amhdmitx/amhdmitx0/disp_cap /home/osmc/.kodi/userdata/disp_cap

But that file path does not exist on my install?

These paths are applicable for Vero devices, not Raspberry Pi unfortunately.

With your TV on and correct image displayed:

#capture the edid file and save it to file

sudo /opt/vc/bin/tvservice -d /boot/edid.dat

#add this line to config.txt

hdmi_edid_file=1

2 Likes

thanks @shamael your help is much appreciated.

Done as you suggested but still no joy. Was never a problem with this PI and TV until I upgraded from 18 to 19.

Might try a fresh install just to see if something has broken in the upgrade process…

EDID needs to now be specified by cmdline.txt now it seems.
@grahamh seemed to know the details, but I can’t find it easily here.

I’ve found the following works. There may be ‘better’ methods in the RPi forums.

Boot with your display attached and make sure you can get all the display modes you expect.

sudo mkdir -p /lib/firmware/edid
sudo cp /sys/devices/platform/gpu/drm/card0/card0-HDMI-A-1/edid /lib/firmware/edid/edid.dat

Then edit /boot/cmdline.txt (sudo nano /boot/cmdline.txt)

root=/dev/mmcblk0p2 rootfstype=ext4 rootwait quiet osmcdev=rbp2 drm.edid_firmware=HDMI-A-1:edid/edid.dat video=HDMI-A-1:D

Note that tvservice no longer works as it used to.

I don’t think anything special is needed in config.txt with the recipe above.

1 Like

@sam_nazarko Indeed possible. So far I read it’s an alternative but doesn’t seems mandatory. Curious to see if such impact or not
config_txt reference

@getyogg
Something to try: as en edid file is provided, may you comment the below lines in your config.txt file and reboot? (with the edid still defined as in my previous post). It may conflict with the edid info

hdmi_mode=16
hdmi_group=1

And I see @grahamh post during my post writing, some testing needed :wink:

Indeed. When I looked, the RPi docs were not clear about which options and commands still apply in the KMS world. I was concentrating on getting Pi to boot without a display attached and can’t remember if I eventually got a picture after attaching a display after a headless boot. Some lines in config.txt may be needed.

Thanks @shamael

I had already tried that, with no success

@grahamh @sam_nazarko

Thanks for your help.

I have tried your suggestion but in /sys/devices/platform I do not have a folder “gpu”. Having searched for EDID in the platform folder I have found it located at:

/sys/devices/platform/soc/soc:gpu/drm/card0/card0-HDMI-A-1

I have copied this file across and edited the cmdline.txt file as suggested.

So happy to confirm everything is now working as it should!

Thanks to everyone for taking the time to assist, really is much apprciated.

Have a great weekend all

3 Likes

You’re right! I don’t know why my notes had a different path. The same info is available at /sys/class/drm/card0-HDMI-A-1/edid with less typing :wink:

2 Likes