[Asus PN42] PC Mode Issue

  • As of today, I *HAD* the same problem on my LG G4.

    After a lot of experimenting I came to the conclusion some signal is telling the HDMI port of the TV to jump into PC mode. Even the GUI at 1920x1080@60 jumped into PC mode.

    Then I tried @50: no PC mode. tried @30: no PC mode. So started the whitelist with only 3840x2160@30: Happy times, no more PC mode!

    Added all the other modes one by one and tested. In my case, the 3840x2160@60 and [email protected] modes on the whitelist were the culprit. Should be the same for 1920x1080 but didn't tried that yet...

    Good luck with this 'typical feature' of your LG OLED TV.

  • As of today, I *HAD* the same problem on my LG G4.

    After a lot of experimenting I came to the conclusion some signal is telling the HDMI port of the TV to jump into PC mode. Even the GUI at 1920x1080@60 jumped into PC mode.

    Then I tried @50: no PC mode. tried @30: no PC mode. So started the whitelist with only 3840x2160@30: Happy times, no more PC mode!

    Added all the other modes one by one and tested. In my case, the 3840x2160@60 and [email protected] modes on the whitelist were the culprit. Should be the same for 1920x1080 but didn't tried that yet...

    Good luck with this 'typical feature' of your LG OLED TV.

    If you're outputting 24fps content in 30fps progressive don't expect hugely watchable results.

  • I'm not.

    @30 was just a first test as I mentioned.

    My final whitelist is as recommended in the Wiki, without @60, @59,94 and @23.98. @24 is still in there.

  • Back to square one.

    It seems that after every start of LE and LG TV, HDMI4 input is reset to PC.

    After changing the icon of the HDMI4 port on the LG TV, or even change one character of the name of the HDMI4 port, the desired settings are available again. I don't have this issue with the set-top box of my Dutch ISP provider KPN connected to HDMI3.

    So is it some kind of miscommunication between LE and LG TV? Who can tell...

  • So is it some kind of miscommunication between LE and LG TV?

    It's a bug/feature of your TV's firmware. Maybe some setting in the service menu would disable PC mode.

    On a Samsung TV the PC mode activates only when you change the "Device icon" to "PC".

  • My problem (LG G4, Asus PN42 mini-pc) is the same as dmsaudio (LG C3, RPI4) describes, just like MaxMustermann (LG G4)...

    LG TV is the common factor here so let's wait for new firmware... Thanks all for your input!

  • My 65CX got new firmware a week or two ago, never had any problems with any of my 5 Pi4/5 with LE12/13, always on latest nightly, never had any problems with my Intels running LE Generic on that tv either.

  • Back to square one.

    It seems that after every start of LE and LG TV, HDMI4 input is reset to PC.

    After changing the icon of the HDMI4 port on the LG TV, or even change one character of the name of the HDMI4 port, the desired settings are available again. I don't have this issue with the set-top box of my Dutch ISP provider KPN connected to HDMI3.

    So is it some kind of miscommunication between LE and LG TV? Who can tell...

    This couldn't be as simple as RGB = PC, 4:2:2 YCbCr = Video could it? (Or infoframes flagging 0-255 = PC, 16-235 = Video levels?)

    Is there a command line command you can run on a Pi 4B to report the HDMI output format being used - that might help add some information?

  • Some info from here:

  • This couldn't be as simple as RGB = PC, 4:2:2 YCbCr = Video could it? (Or infoframes flagging 0-255 = PC, 16-235 = Video levels?)

    Is there a command line command you can run on a Pi 4B to report the HDMI output format being used - that might help add some information?

    Thanks noggin, but I already tried 16-235 video levels in the settings. It doesn't matter.

    More and more I think the problem is with LG OLED tv's and their detection methods of HDMI input signals.

    As I mentioned earlier:

    "It seems that after every start of LE and LG TV, HDMI4 input is reset to PC.

    After changing the icon of the HDMI4 port on the LG TV, or even change one character of the name of the HDMI4 port, the desired settings are available again." -----> this is very strange imho...

    smp is probably right and it is a bug in the LG firmware....

    Thank you everyone!

  • What about RGB vs YCbCr (aka 4:4:4/4:2:2/4:2:0?)


    Some info from here:

    So RGB - is there a way to force 4:2:2 ? (I realise this will only work at 30Hz refresh and below on 2160p resolutions without a high-bandwidth 'Enhanced' HDMI path and destination)


    It can't be as simple as LG interpreting RGB=PC and YCbCr=Video can it?

    Edited once, last by noggin: Merged a post created by noggin into this post. (August 1, 2024 at 9:51 AM).

  • I have several different devices connected to my LG 65CX on all 4 HDMI including a switch with 4 devices (its 5 Pi4/5 and a couple of PC & a Shield Pro) and my tv never changes its settings by itself.

  • New development: Last night I borrowed an Odroid N2+ with CoreELEC 21.

    Odroid/CoreELEC is not detected as PC, all image settings are available even after reboot/shutdown.

    LG TV reports output signal: YCBCR444 8bit on 4K HDR.

    Asus/LibreELEC does RGB on 4K HDR which the LG TV interprets as PC. Maybe the same on Pi but I don't have a Pi to test with.

  • So I bought myself a PI5 and experience exactly the same behaviour as seen on the Asus PN42 with Generic image. It doesn't matter if edid is created or not.

    LG TV detects the Pi as PC and disables all kind of settings like the mentioned Clarity/TruMotion option which I really need for 4K HDR.

    Sort of the same issue is discussed in RE: LG C3 OLED TV and Libreelect on the Pi4b - PC Mode Issue  MaxMustermann / dmsaudio

    In short:

    1. Power on TV and Pi (sequence doesn't matter in this case);

    2. Play Youtube 4k HDR (@24hz), micro stuttering al the time and options for Clarity greyed out;

    3. Use LG Homescreen to change the icon for HDMI into something else like Streaming Box or Bluray Player;

    4. Play the same video, perfect stream. TruMotion is set to Cinematic or even Natural.

    5. Switch to set-top box (TV channels);

    6. Switch back to LibreELEC on pi and we are back at #2.

    The same on the Asus PN42 with Generic LE. On the borrowed Odroid N2+ with CoreELEC no issues.

    Thanks for any input, have a great day.

  • Have you experimented with the HDMI ports the device is connected to on the TV? .. On modern TVs they are not all equal.

    Yes sir. All 4 of them.

    Even the LG G3 55" of a friend shows the same result with both Asus PN42 and RPi5. My friend owns a Homatics 4K Plus box running CoreELEC without the mentioned issues.

    So I think I will use CoreELEC on Odroid N2+ for now. Fortunately I can keep using the Odroid of my friend as long as I need it.

    I will try the nightlies now and then to see if this 'feature' has been fixed :)

    Thanks for the suggestion chewitt!

  • Display Spoiler

    diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
    index 7816b2a..758f3dc 100644
    --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
    +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
    @@ -2196,7 +2196,7 @@ intel_hdmi_output_format(struct intel_connector *connector,
        if (connector->base.ycbcr_420_allowed && ycbcr_420_output)
            return INTEL_OUTPUT_FORMAT_YCBCR420;
        else
    -        return INTEL_OUTPUT_FORMAT_RGB;
    +        return INTEL_OUTPUT_FORMAT_YCBCR444;
    }

    static int intel_hdmi_compute_output_format(struct intel_encoder *encoder,
    @@ -2215,8 +2215,8 @@ static int intel_hdmi_compute_output_format(struct intel_encoder *encoder,


        if (ycbcr_420_only && crtc_state->sink_format != INTEL_OUTPUT_FORMAT_YCBCR420) {
            drm_dbg_kms(&i915->drm,
    -                "YCbCr 4:2:0 mode but YCbCr 4:2:0 output not possible. Falling back to RGB.\n");
    -        crtc_state->sink_format = INTEL_OUTPUT_FORMAT_RGB;
    +                "YCbCr 4:2:0 mode but YCbCr 4:2:0 output not possible. Falling back to YCBCR444.\n");
    +        crtc_state->sink_format = INTEL_OUTPUT_FORMAT_YCBCR444;
        }


        crtc_state->output_format = intel_hdmi_output_format(crtc_state);
    @@ -2247,7 +2247,7 @@ int intel_hdmi_compute_config(struct intel_encoder *encoder,
            adjusted_mode->flags & DRM_MODE_FLAG_INTERLACE)
            return -EINVAL;

    -    pipe_config->output_format = INTEL_OUTPUT_FORMAT_RGB;
    +    pipe_config->output_format = INTEL_OUTPUT_FORMAT_YCBCR444;


        if (pipe_config->has_hdmi_sink)
            pipe_config->has_infoframe = true;

    This kernel patch would force YCbCr 4:4:4 on Intel.