Successful Ubuntu 18.04 Bionic Beaver installation on Optimus IX 15.6"

lausul

Member
Hello all,

Just a return of experience to help anyone wanting to install Ubuntu on an Optimus IX. I used Ubuntu 18.04 Bionic Beaver because it used a kernel version compatible with Intel AC-9260 Wifi chipset; I guess this is kernel version 4.13+.

First my configuration :

Optimus IX (Clevo N850EK1)
  • Matte LED display 15,6" 144 Hz 72 % NTSC Full HD (1920 x 1080)
  • Six Core Intel® Core® i7 8750H (2,2 GHz, 4,1 GHz Turbo)
  • 32 Go Corsair 2400 MHz SODIMM DDR4 (2 x 16 Go)
  • GeForce® GTX 1050 Ti - 4 Go de RAM video GDDR5
  • SSD M.2 256 Go WD Black™ NVMe PCIe M.2 SSD
  • Integrated memory card reader 6-in-1 (SD /Mini SD/ SDHC / SDXC / MMC / RSMMC)
  • 2 Channel High Def. Audio + SoundBlaster™ Cinema 5
  • GIGABIT LAN and WI-FI INTEL® AC-9260 M.2 (1.73 Gbps, 802.11AC) + BT 5.0
  • Options USB 1 PORT USB 3.0 (Type C) + 2 PORTS USB 3.0 + 1 PORT USB 2.0
  • Backlit RBG Belgian Keyboard
  • Integrated Webcam 1MP HD

Then, I should precise that I disabled Secureboot on BIOS/UEFI settings. I guess this should have no consequence if this has been omitted because Ubuntu should handle SecureBoot.

OK, this is how I did :

  • Make a bootable USB key with Ubuntu 18.04
  • Boot on this USB key
  • Start the installation interface without issues
    • Select "Install Ubuntu" on GRUB menu and type on "E" key. Then the menu configuration is shown.
    • Locate the line beginning with linux and insert "acpi=off" before "---". For example :
      Code:
      linux    /casper/vmlinuz  file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity quiet splash acpi=off ---
    • Once done, key CTRL+X so that the system should boot until the installation interface
  • Basically install Ubuntu (I do not detail because it depends of the laptop options)
    • Choose all your settings
    • Do not forget to check the box before "Install third-party sofware for graphics and Wi-Fi hardware and additional media formats". Thereby Intel Wifi, bluetooth and NVIDIA graphics card drivers will be installed by default
    • Make your partition plan
    • Proceed installation
    • Once done...
  • Restart the computer to boot on newly installed Ubuntu system (do not forget to remove the USB key)
    • Select "Ubuntu" and key upon "E"
    • Add "acpi=off" at the end of the line starting with "linux"; otherwise the computer might freeze. In my case this looked like
      Code:
      linux    /boot/vmlinuz-4.15.0-23-generic root=UUID=f8888889-8888-8888-8888-888888888888 ro quiet splash $vt_handoff acpi=off
    • Key CTRL+X to boot
  • Connect with the user defined during installation
    Here you may see two disturbing things:
    1. There is only on CPU. That's OK for the rest of the install process
    2. The keyboard might seem not responding. Indeed, restarting twice the application give the keyboard's echoes back
  • Install NVIDIA-PRIME
    • Start a terminal
    • Type
      Code:
      sudo apt install nvidia-prime mesa-utils nvidia-driver-390
      the nvidia-driver-390 is the last I saw nowadays, it may evolve in the future
    • Restart the computer
      Here, do no more add "acpi=off" at the end of the linux line. Remark there are 12 CPU and the keyboard functions directly :)
  • Check that NVIDIA Prime is operational
    • Start NVIDIA X Server Settings
      I search it from the menu "Activities"
    • Check if PRIME Profiles is present
    • Select it and confirm that you have both NVIDIA and Intel profile
  • Install keyboard backlit driver
    • Start a terminal
    • Install git software
      Code:
      sudo apt install git
    • Install build tools
      Code:
      sudo apt install build-essential
    • Make sure the home directory is the current one
      Code:
      cd
    • Install the source of the driver
      Code:
      git clone https://bitbucket.org/tuxedocomputers/clevo-xsm-wmi
    • Go to the source driver directory
      Code:
      cd clevo-xsm-wmi/module
    • Modify the file clevo-xsm-wmi.c
      • find the __initdata
      • and insert the bold lines as this
        Code:
        static struct dmi_system_id clevo_xsm_dmi_table[] __initdata = {
        [B]        {
                        .ident = "Clevo N8xEJEK",
        		.matches = {
        		        DMI_MATCH(DMI_PRODUCT_NAME, "N8xEJEK"),
        		},
        		.callback = clevo_xsm_dmi_matched,
        		.driver_data = &kb_full_color_with_extra_ops,
                },
        [/B]        {
                        .ident = "Clevo P870DM",
                        .matches = {
                                DMI_MATCH(DMI_PRODUCT_NAME, "P870DM"),
                        },
                        .callback = clevo_xsm_dmi_matched,
                        .driver_data = &kb_full_color_with_extra_ops,
                },
        The value N8xEJEK used can be found as this:
        Code:
        sudo dmidecode | grep -A10 'PC Specialist LTD' | grep 'Product Name:'
    • Build it
      Code:
      make
    • Install it on the right place
      Code:
      sudo mkdir /lib/modules/`uname -r`/extra/
      sudo cp clevo-xsm-wmi.ko /lib/modules/`uname -r`/extra/
    • Refresh the system to take the new driver module into account
      Code:
      sudo depmod
    • Inform the system to load the module on boot
      Code:
      sudo echo clevo-xsm-wmi > /etc/modules-load.d/clevo.conf
    • Configure the keyboard backlit to be deactivated
      Code:
      sudo echo options clevo_xsm_wmi  kb_sate=0 > /etc/modprobe.d/clevo.conf
      Here this configuration deactivate the keyboard backlit. You can use the following parameters :
      • kb_state: the state
        • 0 backlit off
        • 1 backlit on
      • kb_brightness : its value is from 1 to 10
      • kb_color: is a list of 3 colors separated by comma (either red, green, blue, magenta, cyan, yellow, white or black). For example:
        Code:
        kb_color=blue,yellow,red
      • kb_mode: set the keyboard mode 0 to 7
        • 0 (random_color): change color randomly continuously and smoothly (Christmas tree)
        • 1 (custom): user selected color (default)
        • 2 (breathe): color is slowly glowing
        • 3 (cycle): cycle smoothly to each standard color
        • 4 (wave): the color change and the backlit make a sort of wave
        • 5 (dance): Yeah! Disco!
        • 6 (tempo): flashing slowly multicolor mode
        • 7 (flash): flashing rapidly multicolor mode
      For courageous ones, it's possible to echo value to /sys/devices/platform/clevo_xsm_wmi/kb_state or kb_brightness or kb_mode or kb_color. You need to be root to do so, sudo does not work. e.g. :
      Code:
      echo 1 > /sys/devices/platform/clevo_xsm_wmi/kb_state && echo blue yellow red > /sys/devices/platform/clevo_xsm_wmi/kb_color

I hope this will help someone.

Finally, thanks

Kind regards

EDIT 1: Forgot mention about SecureBoot
EDIT 2: Forgot Backlit keyboard driver source modification before build
 
Last edited:

Tony1044

Prolific Poster
Lovely info and some + rep added.

Since it's a Friday though, and I'm a typical bloke..."Bionic Beaver"? <snigger>
 
Top