11

What I found out for now is that I can use ubuntu 15.04 touch but no scrolling.

I opened:

/usr/share/X11/xorg.conf.d/10-evdev.conf

And added:

Section "InputClass"  
    Identifier "Surface Pro 3 cover"
    MatchIsPointer "on"
    MatchDevicePath "/dev/input/event*"
    Driver "evdev"
    Option "vendor" "045e"
    Option "product" "07dc"
    Option "IgnoreAbsoluteAxes" "True"
EndSection 

I did it restarted and wolla the touch pad is working! :D happy!

now im stuck with the rest of theese things can someone help me?

  1. power button + volume button
  2. close lid
  3. scroll with 2 fingers
  4. scroll on touch
Tim
  • 32,861
  • 27
  • 118
  • 178
user232447
  • 131
  • 1
  • 1
  • 6
  • 1
    I've read that the newest kernel (not in 15.04) adds a lot of support for the Surface 3. You might try Fedora 22 (now in beta and being released in about 3 wks) which uses kernel v.4.0, but I'm not sure if the improvements are in that kernel yet either. – chaskes May 07 '15 at 19:57
  • 1
    I am running ubuntu/archlinux on my surface pro 3. You just have to compile your own kernel and apply some patches to it. I'll post an answer soon how you can do that, its pretty easy. – Pabi May 07 '15 at 20:13

2 Answers2

13

I have a Surface pro 3 running ubuntu and archlinux.
Everything works fine, but for the things you want you have to compile your own Kernel, which sounds harder than it is.

Download 4.0.1 Kernel sources from here and the patches from here.
Extract both files to a new directory.

tar xvf archive.tar.gz /folder

Install tools with

sudo apt-get install libncurses5-dev kernel-package` 

Apply all the patches with

patch -p1 -i xxx.patch

Copy the current config with:

cp /boot/config-`uname -r` .config

Run:

make menuconfig

then press ESCESC to save and exit.

Start the compiling with:

make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-surface-pro-3 kernel_image kernel_headers

Compiling can take 1-2 hours, depending on your pc. If you have a dualcore you can add -j 2 after make-kpkg, -j 4 if you have a quadcore.
Make will then use the number of cores you specify.

Once it is done you will have two .deb files.
Install them with sudo dpkg -i linux-image*.deb linux-headers*.deb

Reboot your system and select the newly compiled Kernel while booting.

Pabi
  • 7,401
  • 3
  • 40
  • 49
  • I have newer patched before so im a little stuck.. sry. how can i patch? dont understand it. I type: patch -p1 -i battery.patch And the output is: can't find file to patch at input line 5 Perhaps you used the wrong -p or --strip option? The text leading up to this was:

    |kernel-patches/buttons.patch0000644000175000000330000001542312511071473015672 0ustar patricksudodiff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig |index 9752761..0205201 100644 |--- a/drivers/platform/x86/Kconfig |+++ b/drivers/platform/x86/Kconfig


    – user232447 May 08 '15 at 09:08
  • Please edit the error message into your question for better readability. The Kernel source files and patch files are in the same directory? – Pabi May 08 '15 at 09:41
  • sorry for the missunderstanding. no the kernel patch and source was in different folder.... followd what you said and compiling now! :D cant wait to test this out. – user232447 May 08 '15 at 11:00
  • ok now i have installed it and rebooting. but no option to choose the newly compield kernel while booting? – user232447 May 08 '15 at 11:23
  • You have to choose Advanced options for Ubuntu. – Pabi May 08 '15 at 11:24
  • did everything and the scroll with 2 fingers now working but no battery icon and no volume and power button is working.. :( – user232447 May 09 '15 at 12:22
  • Just checked again in ubuntu and I'm having some issues to I'm not having in arch. Volume buttons do not work. Power button does not work for putting it to sleep, but works for waking it up. when put to sleep via lid close. Battery indicator, webcam and lid close are working fine. Have you looked at the output when applying the relevant patches? – Pabi May 09 '15 at 12:38
  • Ok now im a little bit more happy :) now the only thing that is not working is volume button and power button. everything else runs smooth. – user232447 May 10 '15 at 09:33
  • Okay, if it helped you please accept the answer. I will comment once I had time to investigate the remaning issues. – Pabi May 10 '15 at 09:39
4

I run ubuntu only on my sp3 (no dualbooting) with everything working, battery, cameras, all buttons, etc. I recompiled kernel with all archlinux patches, and they got patches to make everything work. If you still got problems with buttons or other things I can try to find that download link again for their patches.

EDIT: Found it - https://github.com/matthewwardrop/linux-surfacepro3

The only thing I am not happy with is that there is no split-keyboard in linux. Don't see how tablets could be a goal to support with no working keyboard for touchscreens above 7". For that I had to make one my self. Using python and gtk3 to make a clone of the win8.1 keyboards split-layout. Few buttons missing which I need to add and then I will be happy :)

Tip: sudo apt-get install powertop sudo powertop --auto-tune

This will fix a lot of battery-hungry settings to be adjust for laptopmode, makes the tablets battery last just as long, and even a little longer, than on windows. without it the battery drain faster. It has to be ran after every boot (so put it in /etc/rc.local without sudo), and after every waking up from suspend/hibernate (can be scripted too).

Kleggas
  • 43