Pi 4 HDMI woes
-
Coming back to my virtually new Pi 4 after a while (I've primarily stuck with my 3b+ on CRT via RetroTink) and am having real frustrations with getting a signal from Pi 4 RetroPie to a couple of large Sony TVs.
I've found 2-3 threads here and elsewhere that should help, but they aren't getting me there... except for one other screen that does work (so that's the proof that this can work). Perhaps you can help me see the way through this. I'll include my config.txt along with some other details.
hardware: Pi4, official power supply, no power warnings
firmware: applied the Pi 4 EEPROM update, as I read it can help get over this hump (though I saw no improvement)
cards: brand new, not knockoffs, tried a few and they look to be fine
image: new flash of the latest 4.8 RPie
screens: two large Sony TVs (an older 49" and a fairly new 65") are eluding me, yet a small TCL (32") does work
HDMI: tried different cables, two micro-to-full HDMI adapters, using the first/main one of the HDMI ports (HDMI0)
composite mode: note that this Pi 4 and RetroPie does work via composite when the config is tailored to that (I have this setup on a different card of course)config.txt:
The config below has a lot of things "turned on". This is the config that is currently outputting fine on the small TCL. Consider this a snapshot of the various config tweaks I've tried. This config however (along with many other attempts) does not work on my large Sonys, which are my target here.You can assume that I've tried several of these config tweaks in stages, different combos of them, with re-boots and a couple "starting over" re-flashes... but I've not been able to get any signal out to the two Sonys.
I was quite surprised to get the TCL to work. Prior to that I was sure there was an actual fault with the HDMI somewhere. But it working tells me there should be a solution.
I think my current use of hdmi_safe=1 trumps most or all of the other toggles, but you can refresh my knowledge on that. The hdmi_ignore_edid=0xa5000080 entry was something I read about elsewhere, and it was new to me so I tried it.
So, is this a Sony quirk? A larger screen quirk? Does anyone have any insight on how I should approach another pass at conquering this? Anyone else tackle a similar problem?
Are some of the changes in my config the ones that should get me where I want to be? Anything that might be getting in the way? I certainly won't need all of what's been tried below... but again, this is the easiest way to present what I've tried (and what is at least working on the TCL).
Thanks in advance :)
# For more options and information see # http://rpf.io/configtxt # Some settings may impact device functionality. See link above for details # uncomment if you get no picture on HDMI for a default "safe" mode hdmi_safe=1 # uncomment this if your display has a black border of unused pixels visible # and your display can output without overscan #disable_overscan=1 # uncomment the following to adjust overscan. Use positive numbers if console # goes off screen, and negative if there is too much border #overscan_left=16 #overscan_right=16 #overscan_top=16 #overscan_bottom=16 # uncomment to force a console size. By default it will be display's size minus # overscan. #framebuffer_width=1280 #framebuffer_height=720 # uncomment if hdmi display is not detected and composite is being output hdmi_force_hotplug=1 # uncomment to force a specific HDMI mode (this will force VGA) hdmi_ignore_edid=0xa5000080 hdmi_group=1 hdmi_mode=16 # uncomment to force a HDMI mode rather than DVI. This can make audio work in # DMT (computer monitor) modes hdmi_drive=2 # uncomment to increase signal to HDMI, if you have interference, blanking, or # no display config_hdmi_boost=9 # uncomment for composite PAL #sdtv_mode=2 #uncomment to overclock the arm. 700 MHz is the default. over_voltage=6 arm_freq=2147 gpu_freq=750 v3d_freq=750 # Uncomment some or all of these to enable the optional hardware interfaces #dtparam=i2c_arm=on #dtparam=i2s=on #dtparam=spi=on # Uncomment this to enable infrared communication. #dtoverlay=gpio-ir,gpio_pin=17 #dtoverlay=gpio-ir-tx,gpio_pin=18 # Additional overlays and parameters are documented /boot/overlays/README # Enable audio (loads snd_bcm2835) dtparam=audio=on [pi4] # Enable DRM VC4 V3D driver on top of the dispmanx display stack dtoverlay=vc4-fkms-v3d max_framebuffers=2 [all] #dtoverlay=vc4-fkms-v3d overscan_scale=1
-
Do you get the bootloader diagnostic screen during Pi4's startup ?
Leave justhdmi_safe=1
and remove any non-defaults - including the overclock. If it's still not working, then log in via SSH and runtvservice -s tvservice -m CEA tvservice -m DMT
and post the output.
-
@mitu No it's just black. So it's a no signal basically. I'll give that a try later, thanks.
-
Some notes, to myself, if nobody else:
One thing I hadn't tried that I finally did, just to check it off the list... boot with no card in the Pi. Still nothing with the Sony, and I do get loader text on the TCL.
Going all the way back to just HDMI safe 1, with no overclock, no anything else... Once again, nothing on the Sony, and the TCL works fine (albeit with a smaller-than-fullscreen image, so perhaps this HDMI safe mode is pushing out 720p on this 1080p TV, and/or it just needs the usual overscan tweak).
-
@mitu OK while connected to the TCL to set up the basics, I got in via my Mac and get this:
pi@retropie:~ $ tvservice -s state 0x6 [DVI CUSTOM RGB full 4:3], 640x480 @ 60.00Hz, progressive pi@retropie:~ $ tvservice -m CEA Group CEA has 4 modes: mode 4: 1280x720 @ 60Hz 16:9, clock:74MHz progressive mode 16: 1920x1080 @ 60Hz 16:9, clock:148MHz progressive mode 95: 3840x2160 @ 30Hz 16:9, clock:297MHz progressive mode 97: 3840x2160 @ 60Hz 16:9, clock:594MHz progressive pi@retropie:~ $ tvservice -m DMT Group DMT has 1 modes: (prefer) mode 4: 640x480 @ 60Hz 4:3, clock:25MHz progressive
And I'm pretty sure I'm correct that if the Pi is connected to one of the Sony TVs I'd get the same output from those commands (ie. this is just reading from the Pi itself, not anything connected to it).
-
hdmi_safe
will set the resolution to 640x480 and ignore any - preferred - resolutions reported by the display.If you get no display without any sdcard plugged in, then the issue is not with the RetroPie image, but it may be with the cable/HDMI port on the TV.
Have you tried changing the HDMI port on the TV or setting the HDMI input used as a 'Game' input ?And I'm pretty sure I'm correct that if the Pi is connected to one of the Sony TVs I'd get the same output from those commands (ie. this is just reading from the Pi itself, not anything connected to it).
Try to do that, it should show if the TV is reporting the video resolutions supported or if there's an issue with the HDMI connection between the Pi and the TV.
-
@mitu Will do, thanks. Yes, the most interesting test for me has been the no-card boot. That I get something on the TCL but not the Sonys... tells me the Pi/HDMI/cable/adapter chain is working correctly.
If so, then it's something with the Sonys, so hopefully trying Game Mode and any other tinkering on that side of the equation shows some life. I can also work with nothing else connected to the Sonys, to rule out any kind of "priority" issue. I don't think there are new firmware updates for the Sonys, but I can check again while I'm at it.
At this point, it must be something to do with the intersection between Pi 4 (since my earlier Pis work frustration-free) and Sony (or at least these particular Sonys).
-
@mitu And the result... I can't get anything from this Pi 4 on either of the two Sonys with this most basic HDMI safe 1 setup, even if I make sure the TVs are set to Game Mode, and there are no other inputs connected. Tried different cables and adapters, different ports, etc. All that stuff is in good working order.
As before, I can get RPie up on the TCL with HDMI safe 1 (and, I assume, with some config tweaks that are less safe, if you will).
So at least I know I wasn't crazy in the first place... but, I'm left truly stumped.
-
@ohmycommodore Which HDMI port on the Pi 4 are you using? I've had this before when I thought I could use whichever of the two and got no signal whatsoever. Then I learned that apparently if you're using just one HDMI output, it needs to be the one next to the USB-C port.
-
@Schmuppes said in Pi 4 HDMI woes:
Then I learned that apparently if you're using just one HDMI output, it needs to be the one next to the USB-C port.
Either port should work fine, there are no constraints when using a single HDMI output.
-
Not much more that I can try here.
I have a small 7 inch HDMI screen that was originally part of my kids Kano system. That works fine with the Pi 4, just like the TCL TV I've mentioned. I expected that. My wife has a large TCL at her office that I'd expect to work. Probably not worth the drive for that.
I tried Sony once more with a variety of things like hdmi_force_hotplug=1, monitor mode (hdmi_group=2 hdmi_mode=82) instead of TV mode (hdmi_group=1 hdmi_mode=16), and framebuffer_priority=7 to force the second HDMI port. As well I turned config_hdmi_boost way up to 9 and even 11. None of this fixes the issue.
So I'm still stumped. It must be a Sony thing, but I can't isolate what exactly. The two Sonys I have are about 5-6 years apart, so I'd assume some difference there, but that's not enough for me to get a whiff on one over the other, so I'm probably done shuffling between the two as I keep experimenting.
That said... the newer Sony is a 4K model so I suppose I could look at targeting that in the config. I'd expect a big fat nothing though the way this is trending.
-
I had a similar fight with my LG, after much frustration I traced it back to 4K detection that caused a lot of problems. Forcing the Pi to output 1080p solved all my problems.
In my (!) case I had to add /boot/config.txt:
hdmi_group=2 hdmi_mode=82
-
@Loki688 Yeah I was wondering if trying that "monitor" mode would work. I had tried it earlier today with no luck.
-
@ohmycommodore I'm not sure where I got my values (to long ago), but I do know that other people used other values...
-
Based on your "tvservice" output, have you tried ?
hdmi_group=1 hdmi_mode=16
-
@Loki688 Yes, one of the first things I did.
-
Ah, after some googling, I found the table I used, my tvservice output was not helping me either:
https://onlinelibrary.wiley.com/doi/pdf/10.1002/9781119415572.app3
-
@Loki688 just scanning through this thread. Not sure this will help, but I ran into a similar issue and it was driving me nuts. The problem I found is the pi itself won't let the mini hdmi cable seat completely in the socket. Shaved a bit of cable boot on the connector side with an x-acto knife so it could seat properly and haven't had an issue since.
-
@bob1961 It works fine on another TV though, a small, cheap TCL. And then I had it working on a small 7 inch HDMI screen too. So I'm not sure any literal hacking will work here. And the inputs on the Sonys work for other devices.
-
But nuts is pretty much where my head is at on this, yeah.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.