Odroid C2 on 11.0.1: switching tv to 24fps?

  • Really glad I'm now using the latest LE image with all the bells and whistles of up-to-date code here :)

    I do have one question though: back in the day, Kodi could (IIRC) auto-switch the display actual refresh rate to "match" the material one. So on a 60Hz tv, when playing 24Hz material, Kodi would switch to 24Hz as well.

    Now my old Samsung can definitely play 24Hz material. When doing an OSD display of a23.976 movie and enabling the OSD information display, the system tab shows that the system rendering speed is playing around the refresh rate I've set to the Kodi playback options (60Hz in this case).

    I think I used some kind of utility or a hack to hard-insert a 1080@24 refresh rate to my libreelec/coreelec install and that worked. If someone can provide a link / howto, I'd be more than grateful. :)

    EDIT: Search does wonders: Odroid C2, auto rate switching and 24p-defying TV


    Nope, that doesn't do it. There is no /sys/class/amhdmitx/amhdmitx0/disp_cap to be found...

    Edited once, last by cosmos: Merged a post created by cosmos into this post. (April 6, 2023 at 7:51 PM).

  • You can enable "adjust refresh" in Kodi player settings, but the system will need to have a native 23.976 mode or you'll need to use an edid.bin file to fake a connected TV with more modes. The old method you found is not possible in the modern kernel used now.

    Please run "pastekodi" and "modetest | paste" and share the URLs so we can see what modes and timings exist.

  • Thanks for taking the time to look into this mate, really appreciate it.

    pastekodi -> http://ix.io/4sRT

    modetest | paste -> http://ix.io/4sRW

    This Samsung tv is ooooold. But has been happily playing 24p material from my (back at the time) PS3 as well as from other sources. Worked perfectly with my old RPi when switched to 24 (using some sort of EDID hack I don't recall, but would happily look into).

    On the topic of this jump from coreelec, and OT to this thread, I can't recall how I made a old Creative IR remote work with the C2. I do have a custom remote.xml file over the years, but it does not respond to it so I've installed a keyboard/mouse in the meantime.

    Just love the way your work and the LibreELEC team's in general keeps alive these monoliths of hardware :)

  • https://wiki.libreelec.tv/configuration/edid has instructions on configuring an edid.bin file so Kodi sees the TV as always connected. The wiki needs updating to reflect that the Intel instructions apply to all devices using the kernel DRM architecture; including Amlogic (and Allwinner, Rockchip) boards.

    https://chewitt.libreelec.tv/edid.bin was dumped from older (2012-ish?) Samsung 8-series TV, and contains 23.976/24/25/29.97/30/50/59.94/60 modes. You might not be able to use all (or any) of them, but it might work and you can disable the ones that don't in the whitelist.

    https://wiki.libreelec.tv/configuration/…ration-advanced has instructions (also needing update) on capturing and creating a custom IR config. The bit that needs updating is that the config file format has changed to "toml" .. but if you look at the wiki instructions and compare to the toml files in /usr/lib/udev/rc_keymaps/ the new format is pretty simple to crib.

  • https://wiki.libreelec.tv/configuration/edid has instructions on configuring an edid.bin file so Kodi sees the TV as always connected. The wiki needs updating to reflect that the Intel instructions apply to all devices using the kernel DRM architecture; including Amlogic (and Allwinner, Rockchip) boards.

    Thank you for your edid file, and for your extremely descriptive answer!! Truth is I found a copy in an old backup of mine which I believe is the hacked edid file (was named edid.dat but I think it's the same as a .bin)!

    I've followed the instructions but ran into a kernel panic at boot. Looking closer at the (intel) instructions, perhaps there's some minor mistake or the odroid build is a bit different: for example, extlinux.conf actually resides in a subdirectory as /flash/extlinux/extlinux.conf. Not sure if this is an issue. However, and if I understand my Linuxes right, command mv ../edid.cpio /flash/ would leave edid.cpio residing in /flash. The subsequent APPEND to extlinux.conf states that the following should be appended:

    Code
    initrd=/edid.cpio drm.edid_firmware=edid/edid.bin video=HDMI-A-1:D

    Not an expert here, but:

    1) should perhaps edid.cpio be at the root directory instead of /flash ?

    2) option drm.edid_firmware is looking for an edid directory, is that correct?

    3) finally (ok this might be an absolutely stupid question here), there's a smiley :D at the end of the above mentioned line, is that correct?

    I'll get the SD card to mount the vfat partition and play a bit with extlinux.conf to fix things.

    As for the remote option: I've been bashing my head REAL hard to find where the heck I have had some sort of configuration of the remote. I have a backup as well as the entire previous SD-based coreelec installation, but there is no file under /storage/.config/rc_keymaps


    EDIT: <off topic> For some reason I'm not getting new post notifications, even though I've enabled them. Just a FYI :) </off topic>

    Edited 2 times, last by cosmos: Merged a post created by cosmos into this post. (April 7, 2023 at 7:39 PM).

  • For the record the error at boot is:

    Failed to execute /init (error -2)

    Kernel panic - not syncing: No working init found. Try passing init= option to kernel...

    Tried your own EDID just to be certain mine was not at fault.

  • https://wiki.libreelec.tv/configuration/…ration-advanced has instructions (also needing update) on capturing and creating a custom IR config. The bit that needs updating is that the config file format has changed to "toml" .. but if you look at the wiki instructions and compare to the toml files in /usr/lib/udev/rc_keymaps/ the new format is pretty simple to crib.

    Mission accomplished on this part just by doing an ir command and creating a one-liner file that referred to an existing rc-6 MCE remote! Thanks Chewitt :)

    I still can't figure out what produces the kernel panic. It still displays beautifully but being a limited device without active cooling it would be nice to lower its load by avoiding doing 24 to 60fps conversions.

  • chewitt do you know if the intel-related instructions for EDID regarding LE 11.0.1 are actually applicable on C2? Just wondering since I do believe I've followed them correctly but ending with a kernel panic...

    Apologies for that, I've already wasted a lot of your time with this one but it feels I'm almost there... :(


    EDIT: There's a minor correction btw in the part regarding HDMI-A-2 and specifically how the line should look after appending sys/extlinux.conf. It's missing the initrd=/edid.cpio part.

    Coming to my own issue, could the fact that extlinux.conf is not in /flash but in /flash/extlinux/extlinux.conf create the panic? I don't think so, since edid.cpio in specified to be in the root during boot (the /flash dir perhaps) and the drm.edid_firmware is possibly a reference to the overlayed firmware dir, but just saying.

    Edited once, last by cosmos: Merged a post created by cosmos into this post. (April 18, 2023 at 9:51 AM).