Linux (debian) on cube i9

Linux (debian) on cube i9

TechTablets Forums Cube Forums Cube i9 Forum Linux (debian) on cube i9

Tagged: 

This topic contains 48 replies, has 12 voices, and was last updated by  Anonymous 7 months, 1 week ago.

Viewing 15 posts - 31 through 45 (of 49 total)
  • Author
    Posts
  • #52547

    BBaker
    Participant
    • Posts: 283

    OV5648

    I could not find a Linux driver for this either. Only found for Android.

    #54876

    Carlos Sárria
    Participant
    • Posts: 10

    <p style=”text-align: left;”>Greetings; i have a cube i9 and im using neon kde on it (Ubuntu based) só far i am having 2 issues.
    The wireless driver patch you sugest in some posts Works but in a flawed way; i get 3 wifi adapters instead of one and sometimes the connection times out and i have to switch between the 3 available to get a stable connection. Is there a way to fix this? I also noticed the patch does not work on 4.8.1 kernel any idea why this happens?</p>
    Best regards

    Carlos Sárria

    #54880

    Tofe
    Participant
    • Posts: 18

    I must say I only tried with 4.6 kernel so far, so maybe there are issues for 4.8.1 kernel (or it may even be that the driver has been integrated into mainline, I didn’t really look into it). Also, I had to disable the rtl8xxxu driver as they were conflicting each other.

    #54925

    Carlos Sárria
    Participant
    • Posts: 10

    <hr />

    Well the driver is not in the kernel because when i update the kernel wifi stops functioning unless the driver in the kernel has a new name modprobing also reveals no driver there; i included the faulty driver in that Black list file. Its really odd the driver patch works up to 4.7.7; above that nothing Works; modprobing the driver with a lower kernel will get me the 3 wifi adapters bug. Is there a way i can neutralize the 2 surplus adapters? In a last case scenario i Will get a nano usb adapter for the wifi.

    #54971

    BBaker
    Participant
    • Posts: 283

    What errors are you seeing in the dmesg log? I’ve noticed a bug in the I2C bus on various Cherry-Trail devices that had caused various drivers/modules from loading/working properly.

    #55684

    John Heenan
    Participant
    • Posts: 5

    I can confirm Larry Finger’s alternative rtl8723bu driver at https://github.com/lwfinger/rtl8723bu is working again.

    It was tested with the current Archlinux distro using Linux kernel 4.8.4. Since Antergos uses Archlinux, Antergos will probably work also.

    Larry’s alternative driver only has a master branch so you cannot pick up a previous version from his site, if that is what is needed.

    To avoid having two wirless interfaces, instead of one, it is currently necessary to edit the Makefile before running make. This is explained in README.md. Two wireless interfaces enables the hardware to act as station and access point (AP) simultaneously (called concurrent mode).

    You of course need to disable the default linux driver, rtl8xxxu, by adding in to a conf file in /etc/modprobe.d, such as /etc/modprobe.d/blacklist.conf, the following line:
    blacklist rtl8xxxu

    As for the default mainline linux driver, rtl8xxxu, which does not work, the following lines appears with dmesg

    [ 3.606634] usb 1-7: This Realtek USB WiFi dongle (0x0bda:0xb720) is untested!
    [ 3.606635] usb 1-7: Please report results to [email protected]

    I emailed Jes Sorensen but got no response. While the Cube i9 is clearly not using a WiFi dongle, internally the IC is connected by USB and so functions the same way as a USB dongle.

    In https://www.kernel.org/doc/linux/MAINTAINERS Jes is listed as the maintainer for the Linux rtl8xxxu wireless driver. Larry Finger is lsited as the maintainer for other mainline wireless drivers.

    In https://wireless.wiki.kernel.org/en/users/drivers/rtl819x rtl8xxxu is listed as multi-driver for USB for kernel 4.3+ and also as a WIP (work in progress).

    I have had a sufficent look at the inner workings of both rtl8xxxu and the alternative rtl8723bu drivers to try and have a stab at finding a fix for rtl8xxxu myself. If I feel I have reached a stage when I cannot get any further with finding a fix I will email Jes Sorensen again with details of what I have tried and lodge a kernel bugzilla report. If I find a fix I will put my patched version of rtl8xxxu patch on github and send the patch to Jes and to an appropriate kernel mailing list. However the drivers are so complex and the available information about the wireless IC is so scant it is unlikely any first patch fix proposed by anyone is going to make it into the kernel without being reworked or a differerent patch used.

    There is no reason to believe the rtl8xxxu driver will not eventually work for the Cube i9. The alternative rtl8723bu driver itself appears to be a continually patched version of an initial linux driver originally written by the manufacturer. For just a driver it has an incredible number of files.

    For the rtl8723bu wirless IC, the rtl8xxxu driver itself uses only two .o object files generated from source code .c files, an abstracted common rtl8xxxu_core.c file and the rtl8xxxu_8723b.c file. The driver uses the heavily abstracted mac80211 wireless driver. The intention is that the mac80211 driver eventually service all wireless drivers. Such abstraction makes it easier to maintain the linux kernel and to continually build useful wireless extensions that will work with wirless drivers that use the mac80211 driver. The alternative driver has more than 80 .o object files. So maintenace will be a nightmare.

    As for concurrent mode in the alternative driver, I don’t know if this was originally in the manufacturer’s driver and Larry has just decided to enable concurrent mode or not or whether concurrent mode needed extensive work. There should be no reason why rtl8xxxu should not be also enable a concurrent mode, eventually.

    While this is technical and hardly of interest to those who just want a good cheap high performance tablet to work with Linux with a minimum of hassle, your best current bet might be to give Antergos a try, download the alternative driver and make sure concurrent mode is not enabled in the Makefile. If you do not have a USB to ethernet adapter or a WiFi dongle, then plugging in a mobile phone in tethered mode will do until you get the WiFi driver working, including for installation and including for fetching the alternative driver source code from github. However you may need to place the phone in tethered mode again after a reboot. Using a cheap ethernet to USB adapter is by far the least hassle method for installation.

    To compile modules in Archlinux (and so also Antergos) the following packages are required: linux-headers and base-devel.
    John Heenan

    #55761

    Carlos Sárria
    Participant
    • Posts: 10

    I read a antergos Review and i Will give it a try i was mindblogged with the part where you can select the desktop envoriment…. Between gnome… Kde.   Is that kde plasma??? Oh my i think i Will do my First dip in arch you got me hooked

    #56023

    John Heenan
    Participant
    • Posts: 5

    I don’t want to get hopes up too high for those who want a reliable and easy solution for using Linux on the Cube i9 and I don’t want to be premature.

    However my efforts at finding a fix for the mainline rtl8xxxu driver appear to have paid off.

    Two separate but very short driver source code fixes were required. This means just two very short patches need to be prepared for the maintainer and appropriate the Linux kernel mailing list.

    Maintainers are very busy and it can be difficult to get their attention. It can be weeks before a maintainer or someone they assign gets round to reviewing patches and even if eventually accepted it can take some time before patches make their way into the kernel and eventually distributions.

    I can of course put a patched amended driver on Github.

    John Heenan

    #56024

    Brad
    Participant
    • Posts: 439

    I don’t want to get hopes up too high for those who want a reliable and easy solution for using Linux on the Cube i9 and I don’t want to be premature.

    However my efforts at finding a fix for the mainline rtl8xxxu driver appear to have paid off.

    Two separate but very short driver source code fixes were required. This means just two very short patches need to be prepared for the maintainer and appropriate the Linux kernel mailing list.

    Maintainers are very busy and it can be difficult to get their attention. It can be weeks before a maintainer or someone they assign gets round to reviewing patches and even if eventually accepted it can take some time before patches make their way into the kernel and eventually distributions.

    I can of course put a patched amended driver on Github.

    John Heenan

    Yeah that’s the norm. Put the source code on Github so people can test it out.

    #56105

    John Heenan
    Participant
    • Posts: 5

    I can of course put a patched amended driver on Github.

    Yeah that’s the norm. Put the source code on Github so people can test it out.

    Patch proposal rtl8xxxu driver code is now on Github at https://github.com/johnheenan/rtl8xxxu

    Thanks

    John Heenan

    #56534

    John Heenan
    Participant
    • Posts: 5

    An update on wireless issues with i9 and Linux.

    tl;dr
    Downgrade networkmanager to 1.2.5 or earlier.

    Here is the best fix I know of so far for using the Cube i9 with Linux.

    Download and apply the known alternative rtl8723bu driver

    Check if you can scan to get a list of APs (wireless access points) using NetworkManager. A command line way is to run
    nmcli device wifi list

    If this command lists nothing or your gui cannot find any Access Points then check your version of NetworkManager. In Archlinux/Antergos this is
    pacman -Q networkmanager

    If your version of NetworkManager is later than 1.2.5 then downgrade to version 1.2.5 or earlier.

    sudo pacman -S downgrade # get downgrade script if you do not have it already
    sudo downgrade networkmanager # choose an earlier version and answer y to add to IgnorePkg (a setting in /etc/pacman.conf)

    With regard to my patch for mainline driver rtl8xxxu, this will work without downgrading NetworkManager, however wireless throughput is slower and it does not work with all wireless Access Points. I have a few clues as to why the throughput is slower and that it is related to problem with some Access Points, so if I can find some time I will do more work on fixing this.

    With regard to patch proposal, the Linux maintainer for the rtl8xxu driver wants the particular fix I applied to be tested with more devices, as the driver is for multiple Realtek USB wireless devices. I don’t have these devices. So nothing is going to happen fast. At least a process has been started.

    Patch proposal rtl8xxxu driver code is now on Github at https://github.com/johnheenan/rtl8xxxu

    John Heenan

    #58706

    Carlos Sárria
    Participant
    • Posts: 10

    Well John since that Post you wrote about antergos i have it a Go and enjoyed it so much that only my 32 bit laptop uses Debian.. replaced every computer with antergos gnome… I really dont get why Ubuntu doesnt come up with something like aur… Since i starter using antergos i had no need to use the terminal… Even kernel and propietary drivers are installed and updates automaticly.

    The i9 is using antergos gnome Shell and im using one of those nano dongles for wifi untill this is fixed.

     

    Thank you for recomending antergos… You started a revolution on this linux geek

    #58920

    John Heenan
    Participant
    • Posts: 5

    Hi Carlos

    Thanks for your reply. Your example of ease of us is very encouraging for others.

    Antergos is exceptionally good for convenient installs on even recent hardware. For example if you want to just shrink a Windows partition and dual boot with Linux.

    Antergos is built on Archlinux. The biggest hurdle with Archlinux is setting up the hard drive with the command line, however I believe it is common to use another tool for this.

    I am not not confident there will be a fix that works ‘out of the box’ for wifi on good cheap tablets, like the Cube i9, in the near future, if at all.

    I base this on the following:

    The biggest market for Realtek wifi ICs is probably Android devices. Android devices do not use mainline Linux kernels.

    Mainline kernels have very little practical use in day to day cheap devices and the mainline kernel maintainers are divorced from reality when it comes to issues that interfere with their pet projects, evangelical zeal and heroic self portrayal. There is almost a pathological avoidance of real world tests when it comes to network devices as it would probably just nail more coffins in the mac80211 highly abstracted driver they think they can convert manufacturers to.

    While my own tests revealed I could get a mac80211 based driver to work for the Cube i9, with modification, the performance was abysmal and there was an awful lot missing. As far as I am concerned mac80211 is nothing more than an idea that Linux maintainers have failed to get manufacturers to get behind. Further tests have indicated it would more than likely take an enormous amount of work to ‘get right’.

    In more senior Linux levels, there is now almost a pathological revulsion against drivers with very high abstraction layers. For example the recent attempt by AMD to have very high abstracted video drivers for forthcoming hardware accepted into the mainline kernel was flatly rejected with a ‘no, not ever’ attitude.

    So it looks like there is internal division within Linux towards unnecessarily high abstracted drivers with:

    1) The more experienced and senior hostile towards them.
    2) Advocates averse or hostile to what is beneath them: real world tests (the great destroyer of vision), instead probably blaming others for lack of vision.

    3) Manufacturers perplexed: “We have done the right thing at enormous expense to get amazingly high performance with long established and accepted techniques and no tricks. Now you are telling us we have not done the right thing and expect us to use tricks dictated by you for a tiny specialised Linux market that has no real interest in cheap mass produced ICs, unlike Android device OEMs. Who do you think you are? Get stuffed.”

    So where does that leave us? An AUR package (usable by Antergos) is one way to go to make it easier with kernel upgrades. However the current requirement to downgrade networkmanager does not look good. Also it still leaves a nasty problem in place: initial installation from just an install image that requires networking.

    There will be cheap more capable 64bit ARM SOCs with integrated wifi which may alter the landscape. Windows will use them to emulate x68 applications.

    John Heenan

    #59020

    Tofe
    Participant
    • Posts: 18

    Hi !

    Just a little update: I have now updated my kernel (still on a Ubuntu 16.04 at the moment) to the latest 4.9. As expected, the accelerometer is now correctly detected and works well. I have not seen any regression so far.

    I have taken the latest 8723bu git (4c9b566), and it seems to work well with that kernel too.

    Looks like the Cube i9 was quite a good choice 🙂

    Tofe

    #59576

    Elio Sarotto
    Participant
    • Posts: 6

    Hi guys,
    I’m trying to disable the Windows capacitive button under Linux to prevent the annoying random ghost touches. I’ve tried to disable the touchscreen using xinput and disabling i2c_designware_platform and i2c_designware_core drivers, but I had no luck and the problem persists. I think that the button is managed by another driver but I don’t know how to find it. Any ideas?

Viewing 15 posts - 31 through 45 (of 49 total)

You must be logged in to reply to this topic.

Lost Password