mglae I'm wondering if this is the cause? https://github.com/xbmc/xbmc/pull/26873
Posts by chewitt
-
-
The first thing to do is wire up a UART cable to the board. The pads are in a row of four at the top-right of the board in the upper photo. The square pad is ground, the next two are TX/RX, then +3.3v which doesn't need to be wired. The UART runs at 115200 8/n/1 and allows you to see what happens during boot. Without this you are flying blind and the only response to further posts asking for help and/or saying "that didn't work" is

If the eMMC storage is fully erased you can write an AMLGX 'board' image for another GXL/GXM hardware device., e.g VIM1, VIM2, LePotato, etc. to an SD card and see if any of them will boot; first edit the exlinux.conf file to use the p212 device-tree which should work (enough) with any Android box. If the image doesn't boot, try another. The goal is to find an image with u-boot compiled with an acs.bin (which contains RAM spec info) that works with the board. The board has SSV6051P sdio WiFi which is the cheapest of cheap WiFi modules and that normally implies low-spec (low-bin) RAM that's less likely to match against an SBC manufactured with better quality components. Experimenting is free though, and over time I've found quite a few Android boxes that will boot using e.g. LePotato or VIM2 images. If you can boot an image, then you can download the same image to /storage, uncompress it and then 'dd' the image to the /dev/mmcblk1 (eMMC) device and the box should then boot from eMMC again.
If the board has traces of a wrong u-boot on eMMC (only visible with UART output) then you will need to desolder the eMMC chip to run the u-boot experiments as the bootrom always attempts boot from eMMC first, and the BGA packacing prevents you from doing the normal 'short pins' method (sounds like you figured that out already). The board will then be stuck booting from SD card as resoldering will reinstate the wrong u-boot, but perhaps with the BGA package removed you can see traces and figure out another way to temp short/disable the chip. If you can disable it and boot from SD then you can 'release' the short post boot. The chip can then be detected and becomes something you can erase/overwrite from the console.
-
If extlinux is /FDTDIR the boot firmware auto-selects the correct device-tree to use whereas /FDT defines a specific device-tree to boot with. I'm not sure how the auto-select in u-boot works for Rockchip (I'd need to go look at current u-boot source) but I trust that Kwiboo knows/knew what he was doing when setting things up like that. To triage the problem you need to attach a UART cable to the board and capture the early boot messages.
-
LE has some patches for v4l2_request and v4l2_m2m support. We cannot upstream them to Kodi because they depend upon the corresponding set of patches for ffmpeg that are also not upstream. Once the ffmpeg patches get merged and the ABI becomes defined, we'll be able to finalise the Kodi patches and get them merged.
The issues with Jellyfin files were related to selecting the correct plane supporting 10-bit pixfmt. This is currently done with some simple patches applied to RK images only as Kodi lacks proper logic for plane selection and plane ordering. If you run Kodi under Wayland, the compositor handles this for you, but for GBM use Kodi needs to have its own similar logic.
-
Dunno if that is in some way relevant for LibreELEC, but it may provide a clue
I'd expect Wayland to be using zero-copy rendering as this is supported by the DRM layer and Mesa on RK hardware. For zero-copy to work mpv needs to use DRMPRIME pixfmt so buffers contain a pointer to a frame (in DMA) not a decoded frame. I'm not familiar with mpv config options but I'd guess --vo=dmabuf-wayland forces the correct output buffer format (that the compositor expects) for that to work.
LE is not using mpv or Wayland, but Kodi and ffmpeg support both zero-copy (DRMPRIME) and normal (EGL) output. DRMPRIME is the default in all our ARM SoC images as it's more efficient, which is important for ARM SoC boards.
NB: I have no playback issues with any of your private test samples on newer RK boards (356X, 3576, 3588).
-
So that means getting a s905x or x2, x3, r any other le supported chipset would give the same result or is this "no deinterlace" and the playback issues only on s905?
It's the same on all upstream supported chips. There is no hardware deinterlace driver implemented in the kernel so they must all use the same software deinterlace configuration.
-
There is no magic Kodi configuration that will fix this problem on your hardware. The three solutions are:
a) Use a monitor or TV that has the required 4K@25 or (doubled) 4K@50 refresh rate so the RK3328 board can play media at native refresh rates without needing CPU conversion to 4K@60 or 1080@60 that a low-spec ARM SoC chip cannot handle.
b) Use high-spec hardware that can handle the required CPU conversion to 4K@60 or 1080@60.
c) Convert problem media (offline, using Handbrake) from 4K@25 to something that matches monitor modes, i.e. 4K@30 so the low-spec ARM SoC hardware can play media at native rates (as with the BBB file).
-
Code
Display More2025-10-05 10:14:27.279 T:1188 debug <general>: [WHITELIST] whitelisted modes: 3840x2160 @ 60.000000 Hz 3840x2160 @ 60.000000 Hz 3840x2160 @ 59.940063 Hz 3840x2160 @ 30.000000 Hz 3840x2160 @ 29.970032 Hz 3840x2160 @ 24.000000 Hz 3840x2160 @ 23.976025 Hz 1920x1080 @ 60.000000 Hz 1920x1080 @ 60.000000 Hz 1920x1080 @ 59.940063 Hz 1920x1080 @ 50.000000 Hz 2025-10-05 10:14:46.722 T:1251 info <general>: ffmpeg[0xb7d5d00]: Stream #0:0: Video: hevc (Main 10), yuv420p10le(tv, bt709), 3840x2160 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn (default) 2025-10-05 10:14:46.795 T:1251 error <general>: ffmpeg[0xb7d5d00]: Impossible to convert between the formats supported by the filter 'src' and the filter 'auto_scale_0'Comments:
a) The desktop resolution is 1080@60.
b) The whitelist has been configured but the whitelist decision-tree (evaluating what mode from the configuration to use) is not visible when media is played and this normally means adjust-refresh and/or the whitelist are not enabled.
c) The family-movie file is 3840x2160@25 but there is no 4K@25 mode in the whitelist or EDID data. This means Kodi cannot play media at its native rate or a 'double' of the native rate (4K@50) and must adapt the content. This does not give great results, and there is also no mention of a rate change in the log so it might be converting 4K@25 to 1080@60?
d) The log does not show playback of the BBB file, but this media is 3840x2160@60 and there is a 3840x2160@60 mode available so Kodi will be able to output at the native resolution/refresh.
e) The "Impossible to convert between the formats" error is unusual (first time that I see it) and I'm not sure where in code that comes from, but the mention of scaling also makes me think it might be trying to scale 4K@25 to 1080@60.
f) EDID data shows "IIyama" which is a Monitor brand. If this is a monitor? using a TV with a full selection of modes, ensuring that adjust-refresh and whitelist are enabled and set correctly (as per the article I linked before) the results should be better. The EDID data shows 4K@25/50 and [email protected]/24/25/29.97/30 modes are missing; although enabling rate-doubling means the 25/29.97/30 modes can match with 50/59.94/60. The lack of [email protected] mode means HD movies must be CPU scaled to [email protected] and this can impact overall device performance.
g) If this is the only screen you have, download Handbrake and convert the problem files to 4K@30 and they should play better on a device that has a 4K@30 (and 4K@60) mode. Configure the phone? to use 4K@30 and then future movies don't require you to convert them with Handbrake.
TL/DR: Monitors make rubbish TV's

-
No debug log = Nobody looking at your problem.
-
2013:0462
The last contribution to linux-media from the Hauppague maintainer was adding some 461 variants. The '0462' PID variant doesn't exist in the Linux 6.17.y kernel and I don't see any patches on kernel mailing lists.
Hauppague might be under the no-longer-true assumption that LE packages downstream driver collections. That turned out to be a pain in the rear to maintain as we were regularly being held back waiting for sources to be kernel bumped, so we dropped them and we now only support upstream drivers. I'll be happy to pick patches that add drivers that are being upstreamed (patches might need a few more iterations but they are visible on lists etc.) but we aren't adding patches with no plan.
-
error <general>: CDVDVideoCodecDRMPRIME::FilterOpen - avfilter_graph_config: Function not implemented (-38)
This ^ is harmless and can be ignored.
I've set resolution to 4K in preferences and in inputstream resolution to 4K too
Forcing the default resolution to 4K won't help the GUI experience, see https://wiki.libreelec.tv/configuration/4k-hdr and follow the recommendations for setup including the whitelist. Correct config on all ARM SoC hardware is DRMPRIME enabled, HW decoding enabled. Then retest with a current LE13 nightly. If there's still an issue, put Kodi in debug mode, reboot and demonstrate the issue and then "pastekodi" to share the log.
-
I spend a lot of time in Hotels with work and have a couple of small devices. It's a 50/50 idea. Networking is the achilles heel:
- Hotels have rubbish WiFi
- LE has no interface for handling WiFi captive portals
- LE has no interface for handling Ethernet tethering
- ConnMan has no interface for tethering NIC selection
- Hotels have inadequate bandwidth
- Kodi doesn't support transcoding to deal with bandwidth
- Kodi expects 'Library' DBs and media files to be LAN accessible
ConnMan is intentionally simple; it was built for a phone which has a maximum of one interface per interface type (Wifi, Ethernet, etc.) so while it will work in multi-NIC scenarios it's not particularly elegant sometimes.
After connecting to hotel WiFi it's often easier to connect to the LE device over Ethernet to bypass whatever captive portal or auth system the hotel has. Or vice-versa; if there is Ethernet in the room, use it as it'll be more stable. LE doesn't handle swapping the tethering NIC well (currently needs to be done over SSH).
I use Kodi at home but also have a Plex server running on the NAS that contains media as this doesn't require me to run a VPN to connect to the library, and will transcode to a smaller resolution/bitrate on-demand based on the available bandwidth, although it can take a while to iterate down the quality ladder to a point where it works. I'm not wow'd with Plex, and if I hadn't been given a free lifetime pass some years ago (when the Plex 'embedded' fork of LE was a thing) I'd probably go looking for something else.
Most of the time connecting a laptop to the TV in the room with an HDMI cable and using Plex from macOS (with flirc USB IR for remote work) requires considerably less effort, and ensures the laptop is on a table/desk not on the bed .. better for Zzz quality.
-
What do you mean with "Piers" version of add-ons ?
Where can i decide it ?K22 codename is "Piers" .. it just means add-ons updated to correct versions
-
There is no indication anywhere I can see that the tuner is recognised!
You didn't bother to look in the log then?
Code
Display MoreOct 03 14:50:12 LibreELEC31 kernel: mei_hdcp 0000:00:0f.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops 0xffffffff9c31fcf0) Oct 03 14:50:12 LibreELEC31 kernel: em28xx 1-5:1.0: New device HCW dualHD @ 480 Mbps (2040:0265, interface 0, class 0) Oct 03 14:50:12 LibreELEC31 kernel: em28xx 1-5:1.0: DVB interface 0 found: isoc Oct 03 14:50:12 LibreELEC31 kernel: em28xx 1-5:1.0: chip ID is em28174 Oct 03 14:50:13 LibreELEC31 kernel: em28xx 1-5:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0xd0e2c6c8 Oct 03 14:50:13 LibreELEC31 kernel: em28xx 1-5:1.0: EEPROM info: Oct 03 14:50:13 LibreELEC31 kernel: em28xx 1-5:1.0: microcode start address = 0x0004, boot configuration = 0x01 Oct 03 14:50:13 LibreELEC31 kernel: em28xx 1-5:1.0: AC97 audio (5 sample rates) Oct 03 14:50:13 LibreELEC31 kernel: em28xx 1-5:1.0: 500mA max power Oct 03 14:50:13 LibreELEC31 kernel: em28xx 1-5:1.0: Table at offset 0x27, strings=0x0e6a, 0x1888, 0x087e Oct 03 14:50:14 LibreELEC31 kernel: em28xx 1-5:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) Oct 03 14:50:14 LibreELEC31 kernel: tveeprom: Hauppauge model 204109, rev C2I6, serial# 14049275 Oct 03 14:50:14 LibreELEC31 kernel: tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) Oct 03 14:50:14 LibreELEC31 kernel: tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) Oct 03 14:50:14 LibreELEC31 kernel: tveeprom: audio processor is None (idx 0) Oct 03 14:50:14 LibreELEC31 kernel: tveeprom: has no radio, has IR receiver, has no IR transmitter Oct 03 14:50:14 LibreELEC31 kernel: em28xx 1-5:1.0: We currently don't support analog TV or stream capture on dual tuners. Oct 03 14:50:14 LibreELEC31 kernel: em28xx 1-5:1.0: dvb set to isoc mode. Oct 03 14:50:14 LibreELEC31 kernel: em28xx 1-5:1.0: chip ID is em28174 Oct 03 14:50:15 LibreELEC31 kernel: usbcore: registered new interface driver em28xx Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: Binding DVB extension Oct 03 14:50:15 LibreELEC31 kernel: i2c i2c-6: Added multiplexed i2c bus 9 Oct 03 14:50:15 LibreELEC31 kernel: si2168 6-0064: Silicon Labs Si2168-B40 successfully identified Oct 03 14:50:15 LibreELEC31 kernel: si2168 6-0064: firmware version: B 4.0.2 Oct 03 14:50:15 LibreELEC31 kernel: si2157 9-0060: Silicon Labs Si2157 successfully attached Oct 03 14:50:15 LibreELEC31 kernel: dvbdev: DVB: registering new adapter (1-5:1.0) Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)... Oct 03 14:50:15 LibreELEC31 kernel: dvbdev: dvb_create_media_entity: media entity 'Silicon Labs Si2168' registered. Oct 03 14:50:15 LibreELEC31 kernel: dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered. Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: DVB extension successfully initialized Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: Binding DVB extension Oct 03 14:50:15 LibreELEC31 kernel: i2c i2c-8: Added multiplexed i2c bus 10 Oct 03 14:50:15 LibreELEC31 kernel: si2168 8-0067: Silicon Labs Si2168-B40 successfully identified Oct 03 14:50:15 LibreELEC31 kernel: si2168 8-0067: firmware version: B 4.0.2 Oct 03 14:50:15 LibreELEC31 kernel: si2157 10-0063: Silicon Labs Si2157 successfully attached Oct 03 14:50:15 LibreELEC31 kernel: dvbdev: DVB: registering new adapter (1-5:1.0) Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: DVB: registering adapter 1 frontend 0 (Silicon Labs Si2168)... Oct 03 14:50:15 LibreELEC31 kernel: dvbdev: dvb_create_media_entity: media entity 'Silicon Labs Si2168' registered. Oct 03 14:50:15 LibreELEC31 kernel: dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered. Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: DVB extension successfully initialized Oct 03 14:50:15 LibreELEC31 kernel: em28xx: Registered (Em28xx dvb Extension) extension Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: Registering input extension Oct 03 14:50:15 LibreELEC31 kernel: Registered IR keymap rc-hauppauge Oct 03 14:50:15 LibreELEC31 kernel: rc rc0: Hauppauge WinTV-dualHD DVB as /devices/pci0000:00/0000:00:15.0/usb1/1-5/1-5:1.0/rc/rc0 Oct 03 14:50:15 LibreELEC31 kernel: rc rc0: lirc_dev: driver em28xx registered at minor = 0, scancode receiver, no transmitter Oct 03 14:50:15 LibreELEC31 kernel: input: Hauppauge WinTV-dualHD DVB as /devices/pci0000:00/0000:00:15.0/usb1/1-5/1-5:1.0/rc/rc0/input18 Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: Input extension successfully initialized Oct 03 14:50:15 LibreELEC31 kernel: em28xx 1-5:1.0: Remote control support is not available for this card. Oct 03 14:50:15 LibreELEC31 kernel: em28xx: Registered (Em28xx Input Extension) extension Oct 03 14:50:18 LibreELEC31 kernel: si2168 8-0067: downloading firmware from file 'dvb-demod-si2168-b40-01.fw' Oct 03 14:50:18 LibreELEC31 kernel: si2168 8-0067: firmware version: B 4.0.25 Oct 03 14:50:18 LibreELEC31 kernel: si2157 10-0063: found a 'Silicon Labs Si2157-A30 ROM 0x50' Oct 03 14:50:18 LibreELEC31 kernel: si2157 10-0063: downloading firmware from file 'dvb_driver_si2157_rom50.fw' Oct 03 14:50:19 LibreELEC31 kernel: si2157 10-0063: firmware version: 3.0.5 Oct 03 14:50:19 LibreELEC31 kernel: si2168 6-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw' Oct 03 14:50:19 LibreELEC31 kernel: si2168 6-0064: firmware version: B 4.0.25 Oct 03 14:50:19 LibreELEC31 kernel: si2157 9-0060: found a 'Silicon Labs Si2157-A30 ROM 0x50' Oct 03 14:50:19 LibreELEC31 kernel: si2157 9-0060: downloading firmware from file 'dvb_driver_si2157_rom50.fw' Oct 03 14:50:20 LibreELEC31 kernel: si2157 9-0060: firmware version: 3.0.5Looks detected to me

-
I know that I can manually go to 12.2, but I want to see normal update working.
LE will auto-update within the same release, e.g. 12.0.0 > 12.0.1 > 12.0.2 but not 12.0.x to 12.2.x as 12.2 contains breaking changes for some hardware: not RPi boards, but there's a single rule that applies to all to avoid confusion.
TL/DR: all is working correctly, do a manual update.
-
Run "journalctl | paste" after booting to pastebin the system log, then share the URL generated.
-
For kicks, update to the latest LE12.2 nightly. It probably doesn't fix anything, but you never know.
On the assumption it doesn't: enable debug logging in Kodi, then reboot to get a clean log, then demonstrate the problem, then SSH in and run "pastekodi" to pastebin logs and generate a URL you can share here. The logfiles dir will not show anything; it is 'special' and auto-generates a set of logs when (and only when) accesed over SMB. However that results in you creating and uploading a zip archive to the forum that everyone on staff avoids investigating because we have to download, unzip, and open files. It sounds petty, but repeat it 10,000 times and the novelty wears off vs. just clicking a URL link.
-
The realtek device probes first and iwd sees this as phy0 and the internal Broadcom chip as phy1
Then I see Jun 26 09:44:20 KODI-Kitchen iwd[382]: NEW_INTERFACE failed: Too many open files in system
After this point I only see ConnMan mentioning wlan0 which has the MAC address of the Broadcom chip. The "Too many open files in system" failure is unusual and normally indicates an internal bug that results in a process leaking file handles; then at some point the OS hits the 'ulimit' value (in LE, this is 1024).
The first thing I would do is bump up to an LE13 nightly which has newer everything to see if that magically fixes some underlying issue in drivers or iwd or connman. If that doesn't fix it, then this should raise the 'open files' ulimit:
Then reboot and see if that changes anything? (if no, share a log again).