[RPi4] Timeout and digest mismatch when accessing official add-on repository

  • Subject: Timeout and digest mismatch when accessing official LibreELEC add-on repository

    LibreELEC version: 12.2.1
    Platform: ARMv8 / aarch64 Raspberry Pi 4,


    Problem description:

    When updating the official add-on repository, I get timeouts and checksum errors in kodi.log:

    text

    Code
    CCurlFile::CReadState::FillBuffer - Failed: Timeout was reached(28)
    CRepository: https://addons.libreelec.tv/12.2.0/ARMv8/aarch64/addons.xml.gz index has wrong digest ... expected: ...

    The issue occurs every time.


    Diagnostics performed:

    • Ping to 8.8.8.8 – OK (0% loss, ~22 ms).
    • Ping to addons.libreelec.tv – OK (resolves to 116.203.139.247, 0% loss, ~44 ms).
    • System time is correct (date).
    • curl over HTTPS – extremely slow (~1.6 KB/s), times out after 10 seconds with only 16 KB received out of 355 KB.
    • curl over HTTP (port 80) – no response, timeout.
    • MTU check – ping with 1472 bytes succeeds; changing MTU to 1400 did not help.

    What I've already tried:

    • Added advancedsettings.xml with increased timeouts (curlclienttimeout and curllowspeedtime up to 180 s).
    • Cleared repository cache (addons*.db, packages/, temp/).
    • Rebooted the device and router.
    • Switched DNS to public servers (8.8.8.8, 1.1.1.1).

    None of these resolved the problem.


  • The "index has wrong digest" logged error is probably the result of the download failing so you end up with a truncated .xml.gz file that doesn't match the published sha256 checksum. Add-ons are hosted directly (not mirrored like release images) but the addon server infrastructure is not overloaded and there is no active traffic management (bandwidth throttling) on our side. If there was a global problem with our infrastructure we'd see a ton of user reports, and we're not, which suggests a localised issue; something about your network or the connection between you and our infrastructure.

    For kicks you can experiment with a current nightly on a spare SD card, but you should see the same problem since your requests are hitting the same server/infrastructure on our side.

  • New finding (key observation):

    The problem completely disappears when I enable Cloudflare WARP (VPN). This strongly suggests that my ISP (Greenwave, gwt.su) is using DPI (Deep Packet Inspection) that interferes with the connection to addons.libreelec.tv, likely by throttling or selectively blocking the traffic.

  • The government "Sovereign Internet" project mandates all service providers to have such capabilities and the communications regulator provides a frequently updated monitoring (block) list that must be implemented. It's unlikely that our infrastructure is deliberately targetted. More likely something objectionable is or has been hosted with DigitalOcean and Hetzner (where we host things) and their ASN ranges are configured instead of specific sites or IP's and we're just collateral damage.

  • You can take a few steps yourself to check if the blockade is being imposed by the Russian government:

    1. Use official Russian verification tools: The Russian telecom watchdog Roskomnadzor has a public database. You can enter a URL or IP address on their official website (blocklist.gov.ru https://blocklist.rkn.gov.ru https://eais.rkn.gov.ru/en/ https://help.orionnet.ru/page28734115.html https://2ip.io/rkn-blacklist/ https://www.experte.com/internet-censorship/russia) to see if it is officially on the blacklist.
    2. Use OONI Probe: This is a free, global network that measures internet censorship. You can use their app or website to check if specific websites or apps are currently being blocked in Russia via DPI techniques. https://ooni.org/
    3. Test with a VPN (outside Russia): If you are in Russia and a website does not load, turn on a good VPN that connects to a server in the Netherlands, Germany, ... . Does the website load now? Then the Russian firewall is blocking it.

    View the error code:

    • Are you getting a Connection Timed Out? This often indicates a firewall that is silently dropping the traffic.
    • Are you getting a specific HTTP 451 error code? This literally means: "Unavailable for legal reasons".

    The problems with the LibreELEC repository at the Russian provider Greenwave are almost certainly caused by government DPI (Deep Packet Inspection), which acts as a 'firewall' that slows down or blocks traffic to the LibreELEC server. Since the outage disappears when using a VPN, such as Cloudflare WARP, the connection to the German hosting provider Hetzner is likely being cut off by automatic filters. A structural solution is to permanently enable a VPN or anti-censorship tool to bypass the firewall.

    I checkt it. The IP address in question is 116.203.139.247. This is the server for addons.libreelec.tv. The server is located at Hetzner (Germany).

    The "Silent" Blockade via the TSCP system:

    If you enter this IP address on the official site blocklist.rkn.gov.ru, chances are that no official blockade will appear. This is because Roskomnadzor (RKN) has not individually banned Hetzner servers for their content; instead, the government automatically blocks and throttles large parts of the Hetzner network via their TSCP systems (the hardware filters located at providers).

    The "Cheburnet" filters (DPI):
    In recent years, the Russian government has adjusted the filters so strictly that foreign cloud and hosting providers are distrusted by default. The DPI system recognizes the downloading of .xml.gz files from a German IP address and intentionally throttles the speed to ~1.6 KB/s until the connection times out.

    Edited 2 times, last by Doemela (July 4, 2026 at 12:39 PM).

  • Doemela while we appreciate the attempt to be helpful, this is a support forum not an encyclopedia, and we strongly prefer the tone and style of human-written posts over blocks of obvious AI-generated content.