Enabling the V's hardware on Linux (wiki)

linux
#1

This is a guide written up for other users interested in installing a modern, mainstream Linux distribution on their Eve V. I will add more bits about my ongoing quest to run Fedora 27 on my V in case I run into any further issues. Most of the hardware works great out of the box, but some minor issues pop up along the way. If you want to contribute new sections (or change some of the existing ones), feel free to edit this wiki post.

This guide focuses on how to enable the V’s hardware in a desktop Linux install. For general discussions of your favourite software or Linux distribution, please start a new topic. For instructions how to install the more DIY Arch Linux, refer to the notes provided by @Tirigon.

Hardware overview

Data gathered from observation and testing, no guarantee this works on your V and with your distribution. Tested on a Hyper Early Bird Eve V i7.

Hardware Works With some effort Does not work Comment
CPU, RAM, SSD :grinning:
Display, graphics, and touch screen :woman_technologist:
Wifi and Bluetooth :grinning:
Battery :grinning:
Stylus :grinning:
Keyboard and touch pad :grinning:
USB ports and Thunderbolt 3 :grinning: Has anyone tested TB3?
MicroSD slot :grinning:
Audio and audio jack :grinning:
Cameras :sob:
Fingerprint scanner :sob:
Sensors (hall, gravity, light, gyroscope, GPS) How do I test these?

Install Fedora

Apart from point 1, the following procedure is the standard installation routine for most modern, mainstream Linux distributions.

  1. Make sure you back up your V’s personal colour profile on a separate physical or cloud drive. In Windows, the file is located at “C:\ProgramData\SpectraCal\CalMAN Client 3\Data\MonitorsDB.2.3.sdf”. Note that the folder “ProgramData” is hidden but can be manually typed into the Windows Explorer’s address bar. If you do not back up the file, your device’s calibration data may be lost in case you (accidentally or deliberately) wipe the Windows partititon.

  2. Download a live image of Fedora Workstation and use it to create a bootable flash drive. If you already use Fedora on a different system, just install Fedora Media Writer using the Software app. Fedora Media Writer automates the process of downloading the file and setting up the flash drive.

  3. Reboot the V and immediately press [fn]+[f7] on the keyboard to get boot options. Select “USB Device” from the list and press [return] to start the live image.

  4. Once booted up, select the “Install Fedora” option rather than trying out the system. You may have to put the V on your lap and tilt it to the left since the system does not (yet) recognise the V’s default screen orientation. You can fix this once Fedora is installed.

  5. Go through the usual installation process. In the hard-disk section, make sure you either set up a dual boot layout to choose between booting into Fedora or Windows when you start the device (or deliberately wipe the Windows partition to only boot into Fedora). To set up dual boot, reduce the size of the Windows partition in the installer and let Fedora automatically use the freshly cleared space as it pleases.

  6. Once the OS is installed on the V, power it down using the menu in the top right corner. Remove the flash drive.

  7. Power on the V again, and press [fn]+[f7] to see the boot options. Select the Fedora option and hit [return]. A second list of boot options will appear that - if you do nothing - will boot you into Fedora.

  8. Log into your new Fedora installation and go through Fedora’s first-run experience as you please.

Screen orientation

Fedora (or actually one of the subsystems, systemd) does not yet know what the standard orientation of the display panel is that Eve uses in the V. Once you have logged into your user account in Fedora, you can simply tilt the device to the left and lock the screen orientation through the top-right menu. For a more permanent fix, and to include the log-in screen, follow these instructions as previously outlined by @Tirigon.

  1. Open the Text Editor (gedit) and save the following content to a file named “61-sensor-local.hwdb”:
sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
    ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
  1. Open a terminal, type “su” and [return], and provide your admin password. Type “nautilus” and press [return] again.

  2. In the new file manager window you just opened, go to the folder containing the newly created file, copy it, and paste it to the folder “/etc/udev/hwdb.d”. Close the file manager window.

  3. Type the following into the terminal and press [return]:

devadm trigger -y `dirname $(udevadm info -n "/dev/iio:device0" -q path)`
  1. Close the terminal window and restart the V using the [fn]+[f7] key combination as above. Once you get to the Fedora login screen, the device orientation should now be correct. Remove the screen rotation lock in case you used this as a workaround.

Simpler boot process

You can add rEFInd to your System to simplify the boot process. With rEFInd you can choose which OS you want to Boot on startup.
Guide to Install rEFInd in Windows - Guide for Linux installation - EVE V Skin

Your V’s individual colour profile

Since every Windows installation on the V is manually colour-calibrated at the factory, Fedora needs to be told about this profile in order to display accurate colours. It is simple to let Fedora use an ICC profile if you put it in “/home/USERNAME/.color/icc” and activate the profile in Settings > Devices > Color. I have not managed to extract an ICC profile from the Calman data yet, though.

Front and back cameras

No luck yet. The camera modules are OV268 and OV5648, and some older Android kernels seem to have supported them. There is no mainline Linux kernel support as far as I can tell, though. The two modules are also used in the likes of the Lenovo Miix 310 and the Teclast X16 Pro.

Finger print reader

No luck yet. Others said that Linux is missing the drivers for this component. The component is registered in Windows as GXFP3200 (Goodix Fingerprint SPI Device). Is this the GF3208 as used in some Dell laptops?

16 Likes
Any chance of top-level Linux category under "Support"
Linux Experiences on the V
Linux Experiences on the V
#2

Suggestion

Maybe we can use the comments for discussions, and when some information is final, incorporate it into the main post and delete the old comments (!).


Discussion

Should work out of the box, at least under GNOME. No idea if and how other DE handle touch input (looking at you, KDE…)

Install the package iio-sensors-proxy to make use of all the sensors.
However, as far as I know, handling of those data depends on your DE. GNOME has auto-rotation builtin, but adaptive brightness or the like don’t work.

Strange, after I installed rEFInd as bootmanager I just have 1 set of options; either select Windows or [insertYourLinuxHere]. GRUB is kinda old and should / could be replaced.

3 Likes
#3

I will test to install qubesos on a secure external ssd when I receive mine and will edit this very precise post to format the wiki to do it.

Qubesos is based on fedora and xenophobia by the way.

#4

I had no issues with screen orientation with Ubuntu. I did only a quick test of 17.04 live (Unity as DE) and it looked fine. Scaling worked perfectly, keyboard media keys, wifi, etc. I haven’t tested fingerprint scanner. I plan to test 18.04 daily build next to see how it works with GNOME. Will try it out after the holidays. I’ll report back with more detailed results then.

1 Like
#5

Thanks for the write up. I have Fedora 27 installed now and it works really well.

I did notice that it is not possible to click and drag with the touchpad. This happens for all windows and trying to select text from within windows. You can enable touchpad “tap to click”, and then double-tap and drag works after restarting. But, this is not ideal. (for me)

Has anybody else had this issue?

2 Likes
#6

Had the same problem, but didn’t fix.
Do you run under Wayland? If you use X11 you can change config of driver (libinput, evdev, whatever); Wayland won’t allow it I think.

#7

So what’s work the best ? Fedora ? Ubuntu ?

#8

I have installed Ubuntu 17.10 dualboot with rEFInd bootloader (Arch linux could not be installed under the @Tirigon instructions). rEFInd works with the keyboard, touch does not work.
Autorotation works, but it is rotated by 90 studs to the left. I join Xorg, not Wayland (rotation cant configured in Wayland). I used the script and turned it manually. I fix the screen to rotate.
The touch control works partially (depending on the application). The pen is very good (GIMP).
Wifi, BT, USB, MicroSD is ok. Sometimes I have a problem disconnecting and connecting the keyboard (HW). The BT keyboard does not work. I will continue testing.

1 Like
#9

Yes it does, adding a custom udev-rule and the right rotation matrix to the hwdb-file.

1 Like
#10

I tried TailsOS which is based on Debian. No problems, even the touch and pen functionalities are working! :nerd_face:

1 Like
#11

Thanks @Tirigon, it is functioning well :slight_smile:

#12

Hi all,
just to mention that it is possible to switch Linux as first choice in the UEFI bootmanager to avoid having to select it manually at each startup. Instructions below :

3 Likes
#13

Has someone actually made this working?
If I change the boot prioritys with this method it will be automaticly changed back after restart.
It is also quiet strange that the linux boot entry is available in the boot-menu ([Fn] + [F7]), but is not in the uefi menu where you set boot prioritys.

I hope we can workout a solution for this.

1 Like
#14

rEFInd does so automatically; the last OS booted will have the selection.

#15

Yes this is working for me, I just changed the boot order as described and Linux is booting first (I installed a Mint, could not get Solus or Manjaro to boot from USB).

#16

May I ask which bootloader you are using?

I don’t mean the selection in rEFInd, but the global boot order. If i change it with efibootmgr -o and restart, windows is first priority again and i dont get into the rEFInd bootloader

1 Like
#17

Ahh, I see. It worked fine for me on first try - did you follow the instructions here:

On a UEFI-based system, type efibootmgr -c -l \EFI\refind\refind_x64.efi -L rEFInd to add rEFInd to your EFI’s list of available boot loaders, which it stores in NVRAM. Adjust the path to the binary as required if you install somewhere else.

If other boot loaders are already installed, you can use efibootmgr to adjust their boot order. For instance, efibootmgr -o

Sadly I cannot test it again, sry guys.

#18

I use a very standard GRUB

#19

Just installed Ubuntu 17.10. Keyboard, trackpad work. Touchscreen does not work. While common wisdom indicates this should, does anyone have any hints what might be needed? I’ve poured through the default set of control panel/preferences. I’ve chosen to take all updates, so things are current.

#20

Have you tried pulling the touch panel drivers from Windows and adding them to Ubuntu?

1 Like