Posts by chewitt

    Code
    (
    sleep 20
    if [ ! -f /storage/boot_cold.log ]; then
      journalctl > /storage/boot_cold.log
    else
      journalctl > /storage/boot_warm.log
    fi
    )&

    create /storage/.config/autostart.sh with ^ that content and then run a full cold boot and warm boot cycle to capture dmesg (without network access) 20 seconds after boot. You can then SSH in and "cat /storage/boot_cold.log | paste" and "cat /storage/boot_warm.log | paste" and share the URLs generated so we can see the logs.

    It sounds like a hardware initialisation issue, i.e. the card doesn't power up right from a cold boot. The logs might show something. They also might not and even if they do there might not be anything we can do about driver probing/ordering issues. Also check for BIOS/firmware updates for the device or motherboard.

    S905X3 devices can be (or should be) recovered from broken boot firmware (e.g. flashed the wrong image) using the Amlogic Burning Tool app and an appropriate firmware image (look on freaktab). You need to connect the box to a Windows PC using a USB > USB cable and flash the image directly to internal eMMC (not NAND). It can be fiddly, but with modern Amlogic devices, unless you cause electrical damage to the eMMC chips there's really no such thing as a bricked box.

    Are you aware that Kodi allows you to define multiple screen keyboards (select more than one in the language picker). If you have multiple on-screen keyboards defined the "English QWERTY" button allows you to switch keyboard without leaving the on-screen setting. You will still need to visit the LE settings add-on to change the physical keyboard, but that should simplify one aspect.

    The other thing I also noticed is that the /etc/resolv.conf that's updated by ConnMan includes name servers from each of the connections. I'd be curious to see if there's a way to have ConnMan only use the name server specified by WireGuard. Otherwise it's using the DNS from my local internet first before going across the VPN.

    I've noticed this but resolving it [sic] is complicated. LE does not use the internal DNS proxy in ConnMan, and ConnMan will add/remove the extra DNS servers from the WireGuard config but will not remove the initial (local network entry) at the same time. ConnMan devs are not iterested in looking into this as they regard /etc/resolv.conf as a legacy approach. LE has no plan to switch back to using the DNS proxy; in the past we found lots of bugs but the main issue was consistent user reports of "My DNS is broken" because the Kodi sysinfo screen (correctly) shows 127.0.0.1 as the DNS server and this is attributed as the source of all network issues by inexperienced users. The fix probably requires LE to move to systemd resolvd but that will be a rather invasive and political change .. won't happen overnight. NB: It's not a well-known fact, but libc will only use the first 3x DNS servers listed, even if more are in the file.

    I've experimented with the following systemd service which has some added Pre/Post calls:

    The /storage/fix_dns_leaks script looks like:

    If you only start/stop the connection at boot time via systemd this script appears to work. If you start connecting/disconnecting the connection via dbus (using the connections screen in the settings add-on) the logic is faulty somewhere and at some point you end up with no DNS servers .. I haven't had time to look into it much further due to work and other time commitments. I'd be happy if others started digging around..

    I repurpose Apple A1rport Express basestations as cheap WiFi > Ethernet bridge devices. I get better range and performance than any USB device that I've ever used and there are no drivers involved so it works on all kernel versions and any device with an Ethernet port.

    You're wrong. One setting is in the OS and our settings add-on controls that. The other is entirely within Kodi and the Kodi setting controls that. Kodi does not have code for controlling our background service (which looks like an add-on but is still external to Kodi and has no API) and while Kodi has APIs our settings add-on deliberately doesn't attempt to figure out the relationship between supported OS and GUI language. For example, Generic x86_64 hardware has different keyboard languages and layouts to Raspberry Pi which has a more limited range of supported options.

    I'm not saying it cannot be done .. but it's not a straightforward thing. So far it appears the ~70% of project staff who are not native English speakers are okay with the inconvenience of setting it in two places during setup. Unless that changes, the status quo will remain the same.

    Code
    mkdir -p /storage/.config/firmware/mrvl
    wget -O https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/mrvl/sd8897_uapsta.bin /storage/.config/firmware/mrvl/sd8897_uapsta.bin
    reboot

    ^ that should get the BT device working - dmesg shows the firmware is missing in our Generic image, and since this is an SDIO module (M2 interface according to Google) there are no drivers in our current kernel. The WiFi probably needs the following kernel defconfig options enabling:

    CONFIG_MWIFIEX=m

    CONFIG_MWIFIEX_SDIO=m

    See Linux Kernel Driver DataBase: CONFIG_MWIFIEX: Marvell WiFi-Ex Driver

    ping milhouse