लिनक्स में सही ElanTech टचपैड बटन काम नहीं कर रहा है


4

समस्या: टचपैड का हार्डवेयर सही बटन लिनक्स में काम नहीं करता है, लेकिन Win8 में ठीक काम कर रहा है।

कई psmouse पैच की कोशिश की है, xinput विन्यास ets ... कुछ भी नहीं मदद करता है :(

  • ओएस: डेबियन जेसी 64 बिट
  • नोटबुक: G46VW

dmesg :

[    3.898598] psmouse serio4: elantech: assuming hardware version 4 (with firmware version 0x460f02)
[    3.912080] psmouse serio4: elantech: Synaptics capabilities query result 0x00, 0x18, 0x0c.

Xorg.log :

[46.491] (II) LoadModule: "synaptics"
[46.491] (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
[46.494] (II) Module synaptics: vendor="X.Org Foundation"
[46.494] (II) Using input driver 'synaptics' for 'ETPS/2 Elantech Touchpad'
[46.499] (II) synaptics: ETPS/2 Elantech Touchpad: found clickpad property
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: x-axis range 0 - 3036
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: y-axis range 0 - 1452
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: pressure range 0 - 255
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: finger width range 0 - 15
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: buttons: left double triple
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: Vendor 0x2 Product 0xe
[46.499] (--) synaptics: ETPS/2 Elantech Touchpad: touchpad found
[46.500] (**) synaptics: ETPS/2 Elantech Touchpad: (accel) MinSpeed is now constant  zeceleration 2.5
[46.500] (**) synaptics: ETPS/2 Elantech Touchpad: MaxSpeed is now 1.75
[46.500] (**) synaptics: ETPS/2 Elantech Touchpad: AccelFactor is now 0.059
[46.500] (--) synaptics: ETPS/2 Elantech Touchpad: touchpad found

सूची-सहारा :

Device 'ETPS/2 Elantech Touchpad':
Device Enabled (134):   1
Coordinate Transformation Matrix (136): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (261): 1
Device Accel Constant Deceleration (262):   2.500000
Device Accel Adaptive Deceleration (263):   1.000000
Device Accel Velocity Scaling (264):    12.500000
Synaptics Edges (292):  121, 2915, 78, 1374
Synaptics Finger (293): 1, 1, 256
Synaptics Tap Time (294):   180
Synaptics Tap Move (295):   148
Synaptics Tap Durations (296):  180, 180, 100
Synaptics ClickPad (297):   1
Synaptics Tap FastTap (298):    0
Synaptics Middle Button Timeout (299):  0
Synaptics Two-Finger Pressure (300):    282
Synaptics Two-Finger Width (301):   7
Synaptics Scrolling Distance (302): 67, 67
Synaptics Edge Scrolling (303): 0, 0, 0
Synaptics Two-Finger Scrolling (304):   1, 0
Synaptics Move Speed (305): 1.000000, 1.750000, 0.059435, 40.000000
Synaptics Edge Motion Pressure (306):   30, 160
Synaptics Edge Motion Speed (307):  1, 269
Synaptics Edge Motion Always (308): 0
Synaptics Off (309):    2
Synaptics Locked Drags (310):   0
Synaptics Locked Drags Timeout (311):   5000
Synaptics Tap Action (312): 0, 0, 0, 0, 1, 3, 2
Synaptics Click Action (313):   1, 3, 2
Synaptics Circular Scrolling (314): 0
Synaptics Circular Scrolling Distance (315):    0.100000
Synaptics Circular Scrolling Trigger (316): 0
Synaptics Circular Pad (317):   0
Synaptics Palm Detection (318): 0
Synaptics Palm Dimensions (319):    10, 200
Synaptics Coasting Speed (320): 20.000000, 50.000000
Synaptics Pressure Motion (321):    30, 160
Synaptics Pressure Motion Factor (322): 1.000000, 1.000000
Synaptics Grab Event Device (323):  1
Synaptics Gestures (324):   1
Synaptics Capabilities (325):   1, 0, 0, 1, 1, 1, 1
Synaptics Pad Resolution (326): 33, 32
Synaptics Area (327):   0, 0, 0, 0
Synaptics Soft Button Areas (328):  1518, 0, 1190, 0, 0, 0, 0, 0
Synaptics Noise Cancellation (329): 16, 16
Device Product ID (255):    2, 14
Device Node (256):  "/dev/input/event8"

जवाबों:


8

मिली समस्या: psmouse / elantech.c सिर्फ यह मानता है, कि V4 हार्डवेयर प्रोटोकॉल में सही बटन नहीं है।

फिक्स है तुच्छ:

--- elantech.c.orig 2013-06-14 00:52:08.000000000 +0700
+++ elantech.c  2013-07-15 12:45:52.000000000 +0700
@@ -486,6 +486,7 @@ elantech_input_sync_v4
    unsigned char *packet = psmouse->packet;

    input_report_key(dev, BTN_LEFT, packet[0] & 0x01);
+   input_report_key(dev, BTN_RIGHT, packet[0] & 0x02);
    input_mt_report_pointer_emulation(dev, true);
    input_sync(dev);
 }
@@ -1019,7 +1018,7 @@ elantech_set_input_params { case 4: }
        }
        /* v4 is clickpad, with only one button. */
        __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit);
-       __clear_bit(BTN_RIGHT, dev->keybit);
+       //__clear_bit(BTN_RIGHT, dev->keybit);
        __set_bit(BTN_TOOL_QUADTAP, dev->keybit);
        /* For X to recognize me as touchpad. */
        input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0);

समाधान का उपयोग करने के लिए तैयार:

wget http://datacompboy.ru/psmouse-elantech-v7right.tar.bz2
tar xfj psmouse-elantech-v7right.tar.bz2
sudo mv psmouse-elantech-v7right /usr/src/
sudo dkms install -m psmouse -v elantech-v7right
sudo modprobe -r psmouse
sudo modprobe psmouse

क्या आपने डेबियन को यह फिक्स जमा किया है?
ब्रिअम

मैंने मेल सूची को भेजा है, लेकिन यह सुनिश्चित नहीं है कि यह एम्बेडेड है या नहीं।
डाटाकॉम्बॉय

1
एक गुच्छा धन्यवाद, इस समाधान ने मेरे लिए पूरी तरह से काम किया! (लिनक्स मिंट 16, आसुस B400A)
रिक

क्या आप डेबियन 9 के लिए अपना जवाब अपडेट कर सकते हैं? धन्यवाद।
परसा

वर्तमान नदी के ऊपर गिरी उचित clickpads का पता लगाने के लिए है, को देखने के github.com/torvalds/linux/blob/master/drivers/input/mouse/...
datacompboy
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.