Hi there,
I have LibreELEC 11.0.6 running on RPi 3. I recently switched TVs from an unsatisfactory smart 4K down to a half-HD (720p, native resolution is 1360x768@60Hz) I had previously. Now, the problem is, even if I turn on the TV first, then LibreELEC, the TV displays "not supported" because the previous resolution is out of range for this TV. Usually, I leave the LibreELEC box turned on and just turn off the TV when I don't watch it. Of course, as I don't have a working display, everything has to be done through SSH, or the Web interface (which is unaffected).
I came across a similar topic, but the proposed solution (capture EDID and set it up as a boot parameter) didn't work for me.
Another topic gave a slightly different solution, that didn't work wither. It advised to put "video=HDMI-A-1:1360x768M@60" (I adapted from the topic according to my TV) among the kernel parameters in /flash/cmdline.txt
What I tried, in details:
Setting the resolution from the Web interface
- System > Display > Resolution
- Selected 1360x768
- Save
- The TV briefly flashed and I could see the Estuary skin color, but then turned dark and kept on displaying "Not supported".
Capturing EDID and using it as a boot parameter
The Wiki page doesn't give any specifics for RPi, so I loosely followed the x86_64 Intel instructions:
Mounted /flash with read-write permissions: mount -o remount,rw /flash
Tested display connection: tail /sys/class/drm/*/status
Got:
==> /sys/class/drm/card0-HDMI-A-1/status <==
connected
==> /sys/class/drm/card0-Writeback-1/status <==
unknownDumped EDID: getedid create
Got:
Created the path and the actual EDID file:
mkdir -p /storage/.config/firmware/edid
cat /sys/class/drm/card0-HDMI-A-1/edid > /storage/.config/firmware/edid/edid.binThen the cpio archive that will be loaded:
cd ~
mkdir -p cpio/lib/firmware/edid
cp .config/firmware/edid/edid.bin cpio/lib/firmware/edid/
cd cpio/
find . -print | cpio -ov -H newc > ../edid.cpioMoved the file to the boot partition /flash:
There it is:
# ls /flash
LICENCE.broadcom            bcm2711-rpi-400.dtb
SYSTEM                      bcm2711-rpi-cm4-io.dtb
SYSTEM.md5                  bcm2711-rpi-cm4.dtb
bcm2708-rpi-0-w.dtb         bcm2711-rpi-cm4s.dtb
bcm2708-rpi-b-plus.dtb      bcm2712-rpi-5-b.dtb
bcm2708-rpi-b-rev1.dtb      bootcode.bin
bcm2708-rpi-b.dtb           cmdline.txt
bcm2708-rpi-cm.dtb          config.txt
bcm2708-rpi-zero-w.dtb      config.txt.old
bcm2708-rpi-zero.dtb        distroconfig-composite.txt
bcm2709-rpi-2-b.dtb         distroconfig.txt
bcm2709-rpi-cm2.dtb         edid.cpio
bcm2710-rpi-2-b.dtb         fixup.dat
bcm2710-rpi-3-b-plus.dtb    hat_map.dtb
bcm2710-rpi-3-b.dtb         kernel.img
bcm2710-rpi-cm3.dtb         kernel.img.md5
bcm2710-rpi-zero-2-w.dtb    overlays
bcm2710-rpi-zero-2.dtb      start.elf
bcm2711-rpi-4-b.dtbThat's were the instructions for x86_64 don't work anymore: there's no syslinux.cfg or extlinux.conf in /flash on LibreELEC, so I edited cmdline.txt instead. It now looks like this:
boot=/dev/mmcblk0p1 disk=/dev/mmcblk0p2 quiet
initrd=/edid.cpio drm.edid_firmware=HDMI-A-1:edid/edid-HDMI-A-1.bin video=HDMI-A-1:DAccording to the Wiki, a reboot is the last step. Except that it doesn't work. In the Web interface, the claimed resolution is correct at 1360x768, even kmsprint gives the correct resolution:
Connector 0 (32) HDMI-A-1 (connected)
  Encoder 0 (31) TMDS
    Crtc 3 (90) [email protected] 85.500 1360/256/112/64/+ 768/18/6/3/+ 60 (60.02) P|D 
      Plane 4 (91) fb-id: 296 (crtcs: 0 1 2 3) 0,0 1360x768 -> 0,0 1360x768 (XR24 AR24 AB24 XB24 RG16 BG16 AR15 XR15 RG24 BG24 YU16 YV16 YU24 YV24 YU12 YV12 NV12 NV21 NV16 NV61 RGB8 BGR8 XR12 AR12 XB12 AB12 BX12 BA12 RX12 RA12)
        FB 296 1360x768 XR24What I want to achieve
Set LibreELEC so it automatically probes for the highest supported resolution or, if probe gives no result (TV is turned off or disconnected), then use the latest one, much like a laptop does when first connecting to an unknown projector.
While at it:
I also wanted to give it a slight overclock and perhaps allocate more RAM to the GPU in order to get a more "fluid" experience and finally allow for basic x265 decoding. How much RAM should I give the GPU in LibreELEC?
I'd like the boot time splash screen to be displayed with a 16/9 ratio. For as long as I can remember, the splash screen LibreELEC logo was always stretched from 4/3. This really is a minor detail.
 
		 
		
		
	 1360x768 is old, but not weird! AFAIK this TV has 768 horizontal lines.
 1360x768 is old, but not weird! AFAIK this TV has 768 horizontal lines.




