6

I bought an Apple Magic Trackpad2 and want to use it on Ubuntu 16.04. Actually moving the pointer works, but e.g. two finger scrolling or tap to click doesn't. So I came up with the following investigations:

  1. tapping doesn't emit any event on /dev/input/eventX, while moving the pointer does
  2. I checked and installed https://github.com/robbi5/magictrackpad2-dkms, but it also doesn't work, because I figured out, that the root cause is, that the trackpad is not recognized as touchpad, but as simple mouse, thus not using synaptics driver, but evdev, see X11 logs

Xorg.0.log:

[  1167.805] (II) config/udev: Adding input device Apple Inc. Magic Trackpad 2 (/dev/input/event13)
[  1167.805] (**) Apple Inc. Magic Trackpad 2: Applying InputClass "evdev pointer catchall"
[  1167.805] (II) Using input driver 'evdev' for 'Apple Inc. Magic Trackpad 2'
[  1167.805] (**) Apple Inc. Magic Trackpad 2: always reports core events
[  1167.806] (**) evdev: Apple Inc. Magic Trackpad 2: Device: "/dev/input/event13"
[  1167.860] (--) evdev: Apple Inc. Magic Trackpad 2: Vendor 0x5ac Product 0x265
[  1167.860] (--) evdev: Apple Inc. Magic Trackpad 2: Found 3 mouse buttons
[  1167.860] (--) evdev: Apple Inc. Magic Trackpad 2: Found relative axes
[  1167.860] (--) evdev: Apple Inc. Magic Trackpad 2: Found x and y relative axes
[  1167.860] (II) evdev: Apple Inc. Magic Trackpad 2: Configuring as mouse
[  1167.860] (**) evdev: Apple Inc. Magic Trackpad 2: YAxisMapping: buttons 4 and 5
[  1167.860] (**) evdev: Apple Inc. Magic Trackpad 2: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[  1167.860] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1.4/3-1.4.1/3-1.4.1:1.1/0003:05AC:0265.0005/input/input16/event13"
[  1167.860] (II) XINPUT: Adding extended input device "Apple Inc. Magic Trackpad 2" (type: MOUSE, id 11)
[  1167.860] (II) evdev: Apple Inc. Magic Trackpad 2: initialized for relative axes.
[  1167.860] (**) Apple Inc. Magic Trackpad 2: (accel) keeping acceleration scheme 1
[  1167.860] (**) Apple Inc. Magic Trackpad 2: (accel) acceleration profile 0
[  1167.860] (**) Apple Inc. Magic Trackpad 2: (accel) acceleration factor: 2.000
[  1167.860] (**) Apple Inc. Magic Trackpad 2: (accel) acceleration threshold: 4
[  1167.860] (II) config/udev: Adding input device Apple Inc. Magic Trackpad 2 (/dev/input/mouse1)

magictrackpad2-dkms

It has bcm5974 and hdi with a patch, registering apple magic trackpad2. Just compile it and create a deb file out of it. After installation you can check dkms status:

...
bcm5974, 4.4+magictrackpad2, 4.4.0-116-generic, x86_64: installed
hid, 4.4+magictrackpad2, 4.4.0-116-generic, x86_64: installed
...

Also a new X11 conf is registered at /usr/share/X11/xorg.conf.d/49-synaptics-bcm5974.conf. The problem is, that inside the file there is one section defined with MatchDriver "synaptics" and as I said, the trackpad is not registered as touchpad but as mouse, so the driver is evdev.

So I'm investigating on why the trackpad is recognized as mouse. I'm not sure, but I feel an underlying layer does so, like udev or even HAL. This is really new to me.

My question if anybody can help me with this, or at least, which component is responsible for determining if an input device is a mouse or a trackpad.

Thank you very much, means a lot!

  • 1
    I really don't know why: I let Ubuntu 17 give it a try from a USB-stick, but it didn't work. Then I reboot Ubuntu 16.04 again, and now the trackpad is working: xinput gives no Apple Trackpad anymore but bcm5974 id=11 [slave pointer (2)] and scrolling etc. works now. I'll try to get the trackpad work on my notepad as well and if I find, what fixed it, I'll post all steps as answer. Thank you and sorry guys, but right now it's a mystery for me. – Aitch Feb 22 '18 at 19:10
  • 2
    Have you seen this and given it a chance? github.com/robotrovsky/Linux-Magic-Trackpad-2-Driver – 4Z4T4R Sep 4 '18 at 17:57
  • Yeah. It worked with for a while. 1 or 2 months ago there was a change in the kernel. They changed a function signature. I don't know how to write the driver for it now as compilation fails either for new or old kernel – Aitch Sep 6 '18 at 18:32
  • Same here. I tried compiling and installing via dkms and it did not work with libinput, so I tried mTrack and that doesn't compile... so I opened an issue with mTrack (github.com/p2rkw/xf86-input-mtrack/issues/76) and nothing has come of it yet. – 4Z4T4R Sep 7 '18 at 19:31
  • 2
    The magictrackpad patch is quite small, not a big thing and author of it opened a PR on github. I'll contact him if we can fix that kernel change and then open another PR. Also post PR link here to get pushed by us and maybe get more attention to land. – Aitch Sep 11 '18 at 8:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.