paulslocum
Posts: 75
Joined: Sun Apr 09, 2017 10:54 pm

Programmatically enabled/disable "hdmi_ignore_edid"

Thu Aug 15, 2019 8:00 pm

Is there any way to programmatically turn this on or off other than rewriting the config.txt and rebooting?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 7525
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Programmatically enabled/disable "hdmi_ignore_edid"

Mon Aug 19, 2019 9:45 am

No. The EDID is parsed at boot time, therefore any programmatical route would have to rewrite config.txt anyway. The GPU has no access to the SD card once Linux has booted, so it can't do it.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

paulslocum
Posts: 75
Joined: Sun Apr 09, 2017 10:54 pm

Re: Programmatically enabled/disable "hdmi_ignore_edid"

Mon Aug 19, 2019 6:14 pm

Based on my experience swapping out monitors, it seems like it must be re-reading the EDID when you run tvservice -p? I'm not clear how the GPU having access to the SD card is related?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 7525
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Programmatically enabled/disable "hdmi_ignore_edid"

Mon Aug 19, 2019 9:23 pm

Yes it will reread if you trigger it, but I don't believe hdmi_ignore_edid is going to help much under those situations.

Perhaps the better thing to ask is what you are trying to achieve.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

paulslocum
Posts: 75
Joined: Sun Apr 09, 2017 10:54 pm

Re: Programmatically enabled/disable "hdmi_ignore_edid"

Fri Aug 23, 2019 4:12 pm

I have various situations where it would be very useful to be able to turn that flag on and off without rebooting.

I do a lot of AV installations with Pis, and recently I frequently have a situation where I have the Pi plugged into a DVI monitor and then need to switch it to an 7.1 receiver to play multichannel audio. Normally I use EDID because it's convenient, but once it has a DVI EDID then there's no way that I can find to turn HDMI audio back on with the 7.1 receiver since it doesn't send EDID. It ends up locked into DVI mode until I reboot.

I also have a RPi AV software package, and I need to be able to build some versions of it that have EDID enabled and some that don't. Since it can only be set with the config.txt file, this requires a convoluted roping of the config.txt into my Git repository.

It sounds like there's not a way to do this now, but it would be a very useful switch to add to tvservice.

Return to “Graphics programming”