RPI3 - No HDMI Output if RPI3 is powered before TV is on - no Problem after Reboot

  • edit: two workarounds can be found here:

    RPI3 - No HDMI Output if RPI3 is powered before TV is on - no Problem after Reboot


    Hello,

    I have a very strange issue with the HDMI Output of my RPI3 (however I tried 2 RPI3s and 2 different TVs) - I think this is a Software issue on the Rpi. Same scenario on my Wetek Play2 --> no Problem.

    Steps to reproduce:

    1) Give Power to Rpi3 and TV at the same time (e.g. with a switch)

    2) RPi3 Powers up before my TV can power up

    3) Startup TV and select HDMI channel: no picture/sound via HDMI

    4) RPI is awake and can be restarted with Kore App (ore SSH)

    5) Picture is showing up and everything is running without issues

    As i said: 2 different RPI3s, 2 different TVs - same problem. Same scenario on wetek play2: no issues since about 2 years!

    my guess would be, that on "startup without tv" the follwing screen resolution is choosen:

    720 x 480 with 720 x 480i @ 60.000000 Hz

    This resolution is not in the list when started with TV (only without the i). I tried Libreelec alpha 6,8,9 - is this a known issue? Can this be fixed?

    Thank you,

    Linkin

    attached log with startup without tv (13:05) with issue and startup after reboot with tv (13:14) which works without issues.

    only noticeable difference i find in the log:

    on startup without TV (13:05):

    Display Spoiler
    Quote
    13:05:53.430 T:1937027088 NOTICE: Found resolution 720 x 480 with 720 x 480i @ 60.000000 Hz
    13:05:53.431 T:1937027088 NOTICE: Found ([email protected]) at 16, setting to RES_DESKTOP at 16

    on startup with TV:

    Display Spoiler

    13:14:45.803 T:1937498128 NOTICE: Config:
    device_tree=-
    13:14:45.805 T:1937498128 NOTICE: Found resolution 640 x 480 with 640 x 480 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 640 x 480 with 640 x 480 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 800 x 600 with 800 x 600 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 800 x 600 with 800 x 600 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1024 x 768 with 1024 x 768 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1024 x 768 with 1024 x 768 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1152 x 864 with 1152 x 864 @ 75.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1280 x 1024 with 1280 x 1024 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1280 x 1024 with 1280 x 1024 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1680 x 1050 with 1680 x 1050 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1680 x 1050 with 1680 x 1050 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1600 x 900 with 1600 x 900 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1600 x 900 with 1600 x 900 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 720 x 480 with 720 x 480 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 720 x 480 with 720 x 480 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1280 x 720 with 1280 x 720 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1280 x 720 with 1280 x 720 @ 59.940063 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 60.000000 Hz
    13:14:45.805 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 59.940063 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 720 x 576 with 720 x 576 @ 50.000000 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 1280 x 720 with 1280 x 720 @ 50.000000 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 50.000000 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 24.000000 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 23.976025 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 30.000000 Hz
    13:14:45.806 T:1937498128 NOTICE: Found resolution 1920 x 1080 with 1920 x 1080 @ 29.970032 Hz
    13:14:45.806 T:1937498128 NOTICE: Found ([email protected]) at 33, setting to RES_DESKTOP at 16

    Edited 5 times, last by Linkinsoldier (December 22, 2018 at 12:44 PM).

  • thats for your feedback and tipps! I looked into it more detailed and have a few interesting findings:


    I have a recent andoid TV (from Sony) and it looks, like the android tv needs to "power up" before "answering" to the pi. When I use the "force HDMI Hotplug" option in config.txt, I get HDMI every time, however it only shows a "small picture in the middle of the screen". Its about 640p (instead of the choosen 1080p) - I guess there is a bug?


    I "fixed" it for me by using the boot_delay=20 option in /flash/config.txt. My TV takes something between 15-19s to boot up into android (if i turn it on fast enough, I still see the android tv boot logo). With delay 15s I still get the error, 20s is working reproducable!


    Thank you for the help. I leave it like this for the moment. Will the config.txt be changed via future updates or will it keep the new option?

    Is this "how it should be" or will this be improved for "plug and play users"? Like a "wait x seconds if no hdmi connections is present, otherwise boot up now". That would actually be quite nice, because with this boot delay a reboot takes forever :)

  • For the record: if anybody finds this via search - here a 2 possible solutions:

    I) Solution: Boot up Delay:

    Display Spoiler

    1) ssh into rpi

    ssh root@libreelec

    2) By default /flash is mounted read-only so you need to:

    mount -o remount,rw /flash

    3) Edit the config.txt

    nano /flash/config.txt

    4) Introduce a new line for a boot up delay at the end of the config.txt:

    boot_delay=20

    Remark:here you have to do a "try and error". My android TV takes about something between 15-19s to boot up, therefore 20s works for me.

    5) Save the change (CTLR+X -> Y -> Return -> Return)

    Now it should work on the next boot!

    II) Solution: Store the edid.dat and use this if no hotplug is present.

    https://kodi.wiki/view/raspberry_pi_faq#tv_is_not_detected_unless_powered_on_first

    Display Spoiler

    1) ssh into rpi

    ssh root@libreelec

    2) By default /flash is mounted read-only so you need to:

    mount -o remount,rw /flash

    3) If the display is now correct (precondition!) create edid Data for this HDMI connection

    tvservice -d edid.dat

    4) Copy the created edid.dat to /flash

    cp edid.dat /flash/

    5) Edit the config.txt

    nano /flash/config.txt

    6) Uncomment the line, so the HDMI connection is forced even if unplugged:

    hdmi_force_hotplug=1

    7) Introduce a new line to force using the edid data from the file:

    hdmi_edid_file=1

    8) Save the change (CTLR+X -> Y -> Return -> Return)

    Now it should work on the next boot!

    Remark: This only works for the setup you created the edid.dat with.

    If there is any chance in your hardware setup, you have to redo steps 1-4!

  • Hey everyone!

    I have the same Problem on Odroid C2 and the workaround didn't work. I hope you can help me.

    I used libreelec 8.2.5 without problems and it works like a charm.

    My Odroid was allways on and I only shut off the TV. When I started the TV again libreelec was directly on TV.

    Now I upgradet on 9.0.2 and it doesn't work anymore. Now I have to reboot everytime the Odroid after I started the TV.

    I think it RPi and Odroid shouldn't be so different.

    THANK YOU everyone