XBOX One usb tuner and Wetek Core with Libreelec 9.0.2

  • Hello to everyone! :) I'm struggling to get the XBOX One usb tuner working on the setup mentioned in the title. By what I've understood, Wetek Core support has been dropped a while ago being it based on a limited (Amlogic S812) and rather closed source platform being the latest version available the one I'm currently using. Still based on my research, it seems that my tuner is working ootb on Libreelec 8.2.5 but I'd like to avoid being forced to revert back to it given that some add-ons I use require Leia. I've downloaded the only crazycat dvb drivers add-on package I could scour here:


    CoreELEC-Official&f=driver.dvb.crazycat-9.0.0-2018-04-12.zip


    I know it's for CoreELEC and for the Play 2 and not the Core (but, if I'm not mistaken, the hardware should be the same apart from the missing internal receiver) but it is the only one I could find. The rest I could find were all dead links or so.

    On dmesg I get this:


    [ [email protected]] usb 1-1.3: Product: Xbox USB Tuner

    [ [email protected]] usb 1-1.3: Manufacturer: Microsoft Corp.

    [ [email protected]] usb 1-1.3: SerialNumber: 000205070415


    and this:


    [ [email protected]] kernel-overlays-setup: processing conf /storage/.cache/kernel-overlays/50-driver.dvb.crazycat.conf


    but the receiver isn't detected by tvheadend server (HTS Tvheadend 4.3-1774 ~ LibreELEC Tvh-addon v9.0.444 which has been the newest version I could scour) and I still get an empty list when I go to "tv adapters". I also remember that during my research I've read (maybe on the CoreElec forum) that someone was talking about a 'legacy' version of Crazycat dvb drivers for older kernels like it is the case here...

    Is there anything I could do instead of reverting back to 8.2.5 (given that is really true that my tuner works ootb with it, I don't know). Thanks in advance and have a nice day! :)

  • you need to look under addons programs for the crazy cat drivers, there are 3 you can try.


    I'm pretty sure they are there in LE, & CE

    Samsung RU7400 Onkyo HTX22HDX Nvidia Shield HD Homerun Duo (Living Room)

    Samsung UE40ES5500 H96 Pro, X96+, Fire TV 4K Stick (Bedroom)

    Synology DS920+ Plex Pass

    :)

  • Hi and first of all thanks for your reply! I've checked and all I could see when entering in the addon details was:


    DVB drivers for TBS (CrazyCat)

    9.0.0 by Team CoreELEC


    (this is the title)


    The only working buttons are "check for updates", "disable" and "uninstall". The "configure" one is disabled like there isn't anything to configure and/or select. I suspect everything is due to the version not being the right one, beginning from the fact it is the CoreELEC and not LibreELEC one or, even more probable, my kernel (3.10.108 as returned issuing the "uname -r" command under ssh) is too old and those drivers require a newer one. I don't know. Have a nice day! :)

  • WeTek Core is ARM (32-bit) using Linux 3.10 and Play2 is ARM64 (64-bit) using Linux 3.14 and DVB drivers are compiled using an arse-backwards process for a specific arch and kernel. TL/DR .. you cannot take the CE add-ons from their 3.14 image and use them on an LE 3.10 device.

  • Hi and first of all please accept my sincere apologies for not replying before. You confirm exactly what I expected, unfortunately! Is there a way I could build the right drivers for the Wetek Core or do I just need to give up? I'm not new to cross-compiling and I've done quite a lot of it to build what I needed to use on an old mips router I used once ago but I need a suitable toolchain and the sources. Am I out of luck?

    A slight off topic... I had a RPi2 laying around and I've installed LE on it (I've always used it with OSMC before). My current setup is LE 9.2.3, tvheadend server 4.3-1896 and tvheadend client 4.4.21.1. There, the Xbox ONE tuner is detected just fine, just with the built-in drivers (still CrazyCat) but I'm experiencing other issues which aren't the scope of this thread and I'll talk about them elsewhere...

    Thanks for your help and have a nice day! :)

  • I've had some time to deepen my research and I've found this interesting thread:


    crazycat: fix building for Amlogic devices using 3.10 kernel and enable for WeTek_Core by kszaq · Pull Request #2549 · LibreELEC/LibreELEC.tv · GitHub


    It seems EXACTLY what I'm looking for BUT there are a couple of problems. I have no idea on how to apply a patch and, even worse, I have no sources to apply it to nor a toolchain to build everything up. I guess I have more work to do...

  • chewitt


    I see that you've taken part in the thread I've pointed out in my previous post and it clearly applies to my case given that at the time of writing codesnake had exactly a Wetek Core like me.

    I'm completely lost and clueless: would you like to give me an hint on what to do? I've read that thread but it is beyond my skills. It seems a matter or rebuilding both the kernel and driver from scratch if I'm not mistaken... Thanks anyway :)

  • Hi guybrush,


    I have built some versions of the crazycat drivers for the S812 SoC, with amlogic-3.10 kernel support for my device (M8S+), and maybe it will work on Wetek Core as well.


    But you need to install driverselect package first:

    script.program.driverselect-0.1.6.100.zip

    ... and then the driver, one of them:

    Index of /dvb-packages/crazycat/



    You will need to restart your box after installing and selecting the driver.

  • dtech


    Hi! First of all, please accept my sincere apologies for not replying before but I've just noticed your follow-up. Thanks for your reply and for your effort with building those drivers. I would try them for sure and post here the results. Unfortunately, currently I haven't my Core at hand and I wouldn't be able to check soon but I'll do it ASAP. Can I ask you an off topic question? Where can I find the sources and some documentation on how to do what you've done? Have a nice day! :)

  • Since then, I have updated the crazycat package and added support for the dvb-latest package, because I had a lot of stream quality problems with the Astrometa DVB-T2/C tuner under the crazycat addon. It took about a week to put the packages and their configuration together to make them work.


    I also got an Xbox One tuner and tested it. Works perfectly with both crazycat and dvb-latest packages.

    This screenshot was taken from TVH-4.2 running on my M8S device (LE-9.0.2/amlogic-3.10, selected kernel addon: dvb-latest):


    You need to clone my github repo, or just download the sources directly from here: e00c4a39e6c9c042ccc4896f8d3fbbc99fe8a940.zip


    The simplest solution is to replace the entire contents of "packages/linux-driver-addons/dvb" in your source directory with the contents of my source.

    And you will then need to make the following changes to the "projects/WeTek_Core/options" file:

    Code
    # build and install driver addons (yes / no)
    DRIVER_ADDONS_SUPPORT="yes"
    # driver addons to install:
    # for a list of additinoal drivers see packages/linux-driver-addons
    # Space separated list is supported,
    DRIVER_ADDONS="crazycat dvb-latest"

    After that, you need to start building. In short, that's it. ;)

  • Great! I don't know how to thank you! Very helpful and informative. I would try ASAP as I would post here the results of the tests with my Wetek Core. I hope within this week, as soon as I get hold of it again. Have a nice day! :)

  • -=guybrush=-


    I tried to compile the official 9.0.2 sources with my patches and it worked on the first try.

    It is downloadable from here: Index of /3rdParty/WeTek_Core-9.0.2-DVB-semi-official/


    But if you want to compile it yourself, I made a patch to the original source. You need to do the following:

    Code
    git clone https://github.com/LibreELEC/LibreELEC.tv.git -b 9.0.2
    cd LibreELEC.tv/
    wget http://libreelec.dtech.hu/3rdParty/WeTek_Core-9.0.2-DVB-semi-official/Source/LibreELEC.tv-9.0.2-WeTek_Core-DVB-source.patch
    patch -p1 -i LibreELEC.tv-9.0.2-WeTek_Core-DVB-source.patch
    DISTRO=LibreELEC PROJECT=WeTek_Core ARCH=arm make image -j8


    But I couldn’t try the image because I don’t have a WeTeK_Core device.

  • dtech


    First of all, please excuse me for not coming back before and THANK YOU for your effort with building a firmware for the Core and, if possible, even more for your explanations, very helpful as always! I've gone for the quick and easy way downloading the firmware you've built and installing it.

    IT WORKS LIKE A CHARM! The Xbox One tuner is detected fine and everything works. I just needed to enable the CrazyCat driver addon (it is disabled by default as it should be) and the tuner has been detected just fine: all the messages regarding it I could find issuing


    dmesg | grep dvb


    were absolutely encouraging and this was confirmed by configuring Tvheadend server accordingly.

    I have to add that, unlike it happens with the RPi2, even HD contents are viewable with no issues at all (though I still need to test a workaround another kind user has suggested me to solve that issue on the RPi2).

    My testing has been very limited (I just wanted to check the TV functionality and I haven't had the time to go deeper than that) but everything seems fine (not that I didn't expect anything different).

    The only 'issue' I could find is that the auto-update function believes the official 9.0.2 is newer (in spite of the much older compilation date; probably because it prefers official builds, I don't know) and on first boot it downloads the package and restores it. Disabling auto-update was obviously just enough to sort that out.

    What to say? I'm REALLY satisfied! :) Given that you prove to know how to handle these things... Isn't it possible to build newer Libreelec versions? I don't think so, probably because of the Kernel limitation...

    The thread is definitively solved and I think that the official build should be replaced with yours but it isn't up to me to judge. I would come back should I notice anything wrong but I think it wouldn't happen. Thanks again and have a nice day! :)

  • Unfortunately, none of the devices I use have official support, so I personally didn't encounter this update bug.


    I don't know how the update check procedure works, but I changed the version number in the patch to "9.0.2-DVB" instead of the original "9.0.2" and the update check may not like extra strings.


    "9.0.2" > "9.0.2-DVB" ? :/

  • Absolutely not an issue as already said. The gain achieved is much bigger than the 'hassle' (please note the quotation marks as before!) of needing to disable the auto-update feature. There wouldn't be updates anymore and anyway! ;) I tend to believe that, given that the version stays the same, the updater likes more the official build then it restores it but it's just a wild guess.

  • Yes, it's a little bit funny but I'm almost certain your explanation is the right one. I like the final -DVB and I wouldn't change it for anything! ;) Have a nice day!