input-remapper icon indicating copy to clipboard operation
input-remapper copied to clipboard

Asymetric Axis are not properly supported

Open adam-kulagowski opened this issue 2 years ago โ€ข 6 comments

Hi,

I'm unable to get working horizontal strip in HUION tablet HS611 (mostly used for zooming in-out).

Tablet-graficzny-HUION-HS611-Szary-front

It seems that strip reports absolute position of a finger (instead of direction in which finger is moving) and that position is being captured on evtest. However input-remapper always shows ABS Wheel UP event.

Am I missing something?

I'm attaching logs of moving finger from left to right and back using evtest and input-remmapper. If more data is needed please let me know.

Share some logs please:

  1. input-remapper-control --version

input-remapper 1.5.0 be33bbd8376792c629a6279a60c9eeefa6bcf071 https://github.com/sezanzeb/input-remapper python-evdev 1.6.0

  1. If a button on your device doesn't show up in the GUI, verify that the button is reporting an event via sudo evtest. If not, input-remapper won't be able to map that button.

From left to right:

Event: time 1670339259.337967, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1670339259.337967, -------------- SYN_REPORT ------------
Event: time 1670339259.643635, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 1
Event: time 1670339259.643635, -------------- SYN_REPORT ------------
Event: time 1670339259.840030, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 2
Event: time 1670339259.840030, -------------- SYN_REPORT ------------
Event: time 1670339260.035890, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 3
Event: time 1670339260.035890, -------------- SYN_REPORT ------------
Event: time 1670339260.227890, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 4
Event: time 1670339260.227890, -------------- SYN_REPORT ------------
Event: time 1670339260.423898, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 5
Event: time 1670339260.423898, -------------- SYN_REPORT ------------
Event: time 1670339260.575647, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 6
Event: time 1670339260.575647, -------------- SYN_REPORT ------------
Event: time 1670339260.771967, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 7
Event: time 1670339260.771967, -------------- SYN_REPORT ------------
Event: time 1670339261.029875, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1670339261.029875, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0
Event: time 1670339261.029875, -------------- SYN_REPORT ------------

From right to left:

Event: time 1670339264.959683, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1670339264.959683, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 7
Event: time 1670339264.959683, -------------- SYN_REPORT ------------
Event: time 1670339265.197677, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 6
Event: time 1670339265.197677, -------------- SYN_REPORT ------------
Event: time 1670339265.389915, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 5
Event: time 1670339265.389915, -------------- SYN_REPORT ------------
Event: time 1670339265.619930, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 4
Event: time 1670339265.619930, -------------- SYN_REPORT ------------
Event: time 1670339265.853694, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 3
Event: time 1670339265.853694, -------------- SYN_REPORT ------------
Event: time 1670339266.131933, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 2
Event: time 1670339266.131933, -------------- SYN_REPORT ------------
Event: time 1670339266.369924, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 1
Event: time 1670339266.369924, -------------- SYN_REPORT ------------
Event: time 1670339266.607978, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0
Event: time 1670339266.607978, -------------- SYN_REPORT ------------
Event: time 1670339266.727907, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1670339266.727907, -------------- SYN_REPORT ------------
  1. If yes, please run input-remapper-gtk -d, reproduce the problem and then share the logs.
fidor@Wall-E:~/github/input-remapper$ input-remapper-gtk -d
16:08:55.552021 311493 GUI INFO logger.py:225: input-remapper-gtk 1.5.0 be33bbd8376792c629a6279a60c9eeefa6bcf071 https://github.com/sezanzeb/input-remapper
16:08:55.552110 311493 GUI INFO logger.py:233: python-evdev 1.6.0
16:08:55.552144 311493 GUI WARNING logger.py:236: Debug level will log all your keystrokes! Do not post this output in the internet if you typed in sensitive or private information with your device!
16:08:55.552179 311493 GUI DEBUG input-remapper-gtk:55: Using locale directory: /usr/share/input-remapper/lang
16:08:55.555285 311493 GUI DEBUG pipe.py:61: Creating new pipe for "/tmp/input-remapper-fidor/results"
16:08:55.555655 311493 GUI DEBUG pipe.py:61: Creating new pipe for "/tmp/input-remapper-fidor/commands"
16:08:55.564117 311493 GUI INFO global_config.py:104: Loaded config from "/home/fidor/.config/input-remapper/config.json"
16:08:55.569211 311493 GUI INFO daemon.py:198: Connected to the service
16:08:55.569432 311493 GUI DEBUG daemon.py:234: Telling service about "/home/fidor/.config/input-remapper"
16:08:55.571883 311493 GUI DEBUG user_interface.py:245: Running `pkexec input-remapper-control --command helper  -d`
16:08:58.112508 311497 Control DEBUG input-remapper-control:230: Call for "['/usr/bin/input-remapper-control', '--command', 'helper', '-d']"
16:08:58.122789 311497 Control DEBUG input-remapper-control:212: Booting finished
16:08:58.124196 311497 Control INFO input-remapper-control:260: Done
16:08:58.158004 311493 GUI DEBUG global_uinputs.py:79: creating fake UInput device: 'input-remapper keyboard'
16:08:58.158084 311493 GUI DEBUG global_uinputs.py:79: creating fake UInput device: 'input-remapper gamepad'
16:08:58.158116 311493 GUI DEBUG global_uinputs.py:79: creating fake UInput device: 'input-remapper mouse'
16:08:58.158140 311493 GUI DEBUG global_uinputs.py:79: creating fake UInput device: 'input-remapper keyboard + mouse'
16:08:58.264326 311505 GUI-Helper DEBUG pipe.py:78: Using existing pipe for "/tmp/input-remapper-fidor/results"
16:08:58.264467 311505 GUI-Helper DEBUG pipe.py:78: Using existing pipe for "/tmp/input-remapper-fidor/commands"
16:08:58.264542 311505 GUI-Helper DEBUG helper.py:109: Sending groups
16:08:58.265811 311505 GUI-Helper DEBUG groups.py:336: Discovering device paths
16:08:58.267054 311505 GUI-Helper DEBUG groups.py:377: Found "3_9580_109_usb-0000:07:00.3-1.3.3.2.4", "/dev/input/event259", "HUION Huion Tablet_HS611 Consumer Control", type: unknown
16:08:58.297895 311505 GUI-Helper DEBUG groups.py:377: Found "3_9580_109_usb-0000:07:00.3-1.3.3.2.4", "/dev/input/event258", "HUION Huion Tablet_HS611 Keyboard", type: keyboard
16:08:58.329531 311505 GUI-Helper DEBUG groups.py:377: Found "3_9580_109_usb-0000:07:00.3-1.3.3.2.4", "/dev/input/event23", "HUION Huion Tablet_HS611 Dial", type: unknown
16:08:58.337147 311493 GUI DEBUG groups.py:336: Discovering device paths
16:08:58.338472 311493 GUI DEBUG groups.py:445: Did not find any input device
16:08:58.361577 311505 GUI-Helper DEBUG groups.py:377: Found "3_9580_109_usb-0000:07:00.3-1.3.3.2.4", "/dev/input/event22", "HUION Huion Tablet_HS611 Touch Strip", type: unknown
16:08:58.397567 311505 GUI-Helper DEBUG groups.py:377: Found "3_9580_109_usb-0000:07:00.3-1.3.3.2.4", "/dev/input/event21", "HUION Huion Tablet_HS611 Pad", type: graphics-tablet
16:08:58.425547 311505 GUI-Helper DEBUG groups.py:377: Found "3_9580_109_usb-0000:07:00.3-1.3.3.2.4", "/dev/input/event10", "HUION Huion Tablet_HS611", type: graphics-tablet
16:08:58.525862 311505 GUI-Helper DEBUG groups.py:377: Found "3_3141_30269_usb-0000:07:00.3-1.3.3.3.2", "/dev/input/event19", "SONiX USB DEVICE Wireless Radio Control", type: unknown
16:08:58.545748 311505 GUI-Helper DEBUG groups.py:377: Found "3_3141_30269_usb-0000:07:00.3-1.3.3.3.2", "/dev/input/event18", "SONiX USB DEVICE Keyboard", type: keyboard
16:08:58.577682 311505 GUI-Helper DEBUG groups.py:377: Found "3_3141_30269_usb-0000:07:00.3-1.3.3.3.2", "/dev/input/event11", "SONiX USB DEVICE", type: keyboard
16:08:58.609864 311505 GUI-Helper DEBUG groups.py:377: Found "3_6940_6997_-", "/dev/input/event9", "ckb1: CORSAIR K70 RGB MK.2 LOW PROFILE Mechanical Gaming vM", type: mouse
16:08:58.641979 311505 GUI-Helper DEBUG groups.py:377: Found "3_6940_6997_-", "/dev/input/event8", "ckb1: CORSAIR K70 RGB MK.2 LOW PROFILE Mechanical Gaming vKB", type: keyboard
16:08:58.961783 311505 GUI-Helper DEBUG groups.py:377: Found "25_6058_20564_thinkpad_acpi", "/dev/input/event25", "ThinkPad Extra Buttons", type: unknown
16:08:58.981592 311505 GUI-Helper DEBUG groups.py:377: Found "3_1054_12900_usb-0000:07:00.3-1.3.3.3.3", "/dev/input/event24", "Creative Technology Ltd Sound Blaster X3", type: unknown
16:08:59.010061 311505 GUI-Helper DEBUG groups.py:377: Found "3_1133_49291_usb-0000:07:00.3-1.3.3.2.3", "/dev/input/event17", "Logitech G502 HERO Gaming Mouse Keyboard", type: keyboard
16:08:59.037835 311505 GUI-Helper DEBUG groups.py:377: Found "3_1133_49291_usb-0000:07:00.3-1.3.3.2.3", "/dev/input/event16", "Logitech G502 HERO Gaming Mouse", type: mouse
16:08:59.069936 311505 GUI-Helper DEBUG groups.py:377: Found "3_5426_555_usb-0000:07:00.3-1.3.3.3.1", "/dev/input/event15", "Razer Razer Tartarus V2", type: mouse
16:08:59.157960 311505 GUI-Helper DEBUG groups.py:377: Found "3_5426_555_usb-0000:07:00.3-1.3.3.3.1", "/dev/input/event13", "Razer Razer Tartarus V2 Keyboard", type: keyboard
16:08:59.177753 311505 GUI-Helper DEBUG groups.py:377: Found "3_5426_555_usb-0000:07:00.3-1.3.3.3.1", "/dev/input/event12", "Razer Razer Tartarus V2", type: keyboard
16:08:59.209673 311505 GUI-Helper DEBUG groups.py:377: Found "17_2_10_synaptics-pt", "/dev/input/event7", "TPPS/2 Elan TrackPoint", type: unknown
16:08:59.233634 311505 GUI-Helper DEBUG groups.py:377: Found "17_2_7_isa0060", "/dev/input/event6", "SynPS/2 Synaptics TouchPad", type: touchpad
16:08:59.261571 311505 GUI-Helper DEBUG groups.py:377: Found "25_0_6_LNXVIDEO", "/dev/input/event5", "Video Bus", type: unknown
16:08:59.301725 311505 GUI-Helper DEBUG groups.py:377: Found "17_1_1_isa0060", "/dev/input/event4", "AT Translated Set 2 keyboard", type: keyboard
16:08:59.365521 311505 GUI-Helper DEBUG groups.py:377: Found "25_0_3_PNP0C0E", "/dev/input/event2", "Sleep Button", type: unknown
16:08:59.414715 311505 GUI-Helper INFO groups.py:448: Found "HUION Huion Tablet_HS611", "SONiX USB DEVICE", "ckb1: CORSAIR K70 RGB MK.2 LOW PROFILE Mechanical Gaming vM", "ThinkPad Extra Buttons", "Creative Technology Ltd Sound Blaster X3", "Logitech G502 HERO Gaming Mouse", "Razer Razer Tartarus V2", "TPPS/2 Elan TrackPoint", "SynPS/2 Synaptics TouchPad", "Video Bus", "AT Translated Set 2 keyboard", "Sleep Button"
16:08:59.415238 311505 GUI-Helper DEBUG helper.py:90: Waiting for the first command
16:08:59.430567 311493 GUI DEBUG reader.py:98: Received 12 devices
16:08:59.432281 311493 GUI DEBUG preset.py:378: The newest preset is "HUION Huion Tablet_HS611", "huion"
16:08:59.432522 311493 GUI DEBUG user_interface.py:599: Selecting device "HUION Huion Tablet_HS611"
16:08:59.432759 311493 GUI DEBUG user_interface.py:383: "HUION Huion Tablet_HS611" presets: "huion"
16:08:59.433160 311493 GUI DEBUG user_interface.py:713: Selecting preset "huion"
16:08:59.434334 311493 GUI DEBUG editor.py:321: Disabling the text input
16:08:59.435487 311493 GUI DEBUG editor.py:321: Disabling the text input
16:08:59.436457 311493 GUI INFO preset.py:169: Loading preset from "/home/fidor/.config/input-remapper/presets/HUION Huion Tablet_HS611/huion.json"
16:08:59.436786 311493 GUI DEBUG preset.py:199: <EventCombination (1, 113, 1)> maps to ('XF86AudioMute', 'keyboard')
16:08:59.436932 311493 GUI DEBUG preset.py:199: <EventCombination (1, 115, 1)> maps to ('XF86AudioRaiseVolume', 'keyboard')
16:08:59.437057 311493 GUI DEBUG preset.py:199: <EventCombination (1, 114, 1)> maps to ('XF86AudioLowerVolume', 'keyboard')
16:08:59.437533 311493 GUI DEBUG system_mapping.py:90: Gathering available keycodes
16:08:59.437651 311493 GUI DEBUG system_mapping.py:90: Gathering available keycodes
16:08:59.442005 311493 GUI DEBUG system_mapping.py:119: Writing "/home/fidor/.config/input-remapper/xmodmap.json"
16:08:59.442758 311493 GUI DEBUG system_mapping.py:90: Gathering available keycodes
16:08:59.448166 311493 GUI DEBUG system_mapping.py:119: Writing "/home/fidor/.config/input-remapper/xmodmap.json"
16:08:59.461130 311493 GUI DEBUG system_mapping.py:119: Writing "/home/fidor/.config/input-remapper/xmodmap.json"
16:08:59.463261 311493 GUI DEBUG editor.py:336: Enabling the text input
16:08:59.463745 311493 GUI DEBUG editor.py:336: Enabling the text input
16:08:59.463999 311493 GUI DEBUG reader.py:189: Sending start msg to helper for "HUION Huion Tablet_HS611"
16:08:59.464066 311493 GUI DEBUG reader.py:205: Clearing reader
16:08:59.464192 311505 GUI-Helper DEBUG helper.py:102: Starting mainloop
16:08:59.464362 311505 GUI-Helper DEBUG helper.py:116: Received command "HUION Huion Tablet_HS611"
16:08:59.464466 311505 GUI-Helper DEBUG helper.py:138: No more commands in pipe
16:08:59.464971 311505 GUI-Helper DEBUG helper.py:173: Starting reading keycodes from "HUION Huion Tablet_HS611 Consumer Control", "HUION Huion Tablet_HS611 Keyboard", "HUION Huion Tablet_HS611 Dial", "HUION Huion Tablet_HS611 Touch Strip", "HUION Huion Tablet_HS611 Pad", "HUION Huion Tablet_HS611"
16:08:59.567079 311493 GUI DEBUG autocompletion.py:90: get_incomplete_parameter text:  match: None
16:09:01.100709 311493 GUI DEBUG reader.py:205: Clearing reader
16:09:04.086027 311493 GUI DEBUG reader.py:161: down ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท <InputEvent (3, 8, 1)>
16:09:04.086319 311493 GUI DEBUG reader.py:181: read result ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท <EventCombination (3, 8, 1)>
16:09:04.086601 311493 GUI DEBUG editor.py:336: Enabling the text input
16:09:04.086965 311493 GUI DEBUG preset.py:117: changing <EventCombination (3, 8, 1)> to "XF86AudioMute"
16:09:04.087117 311493 GUI DEBUG preset.py:150: <EventCombination (1, 113, 1)> cleared
16:09:04.288995 311493 GUI DEBUG reader.py:151: duplicate key down ยทยทยทยทยทยทยทยทยทยทยทยท <InputEvent (3, 8, 1)>
16:09:05.538695 311493 GUI DEBUG reader.py:146: release ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท <InputEvent (3, 8, 0)>
16:09:05.538989 311493 GUI DEBUG editor.py:674: Recording complete
16:09:05.539080 311493 GUI DEBUG editor.py:336: Enabling the text input
16:09:05.540320 311493 GUI INFO preset.py:213: Saving preset to /home/fidor/.config/input-remapper/presets/HUION Huion Tablet_HS611/huion.json
16:09:05.541011 311493 GUI DEBUG user_interface.py:383: "HUION Huion Tablet_HS611" presets: "huion"
16:09:10.153716 311493 GUI DEBUG reader.py:161: down ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท <InputEvent (3, 8, 1)>
16:09:10.356029 311493 GUI DEBUG reader.py:151: duplicate key down ยทยทยทยทยทยทยทยทยทยทยทยท <InputEvent (3, 8, 1)>
16:09:11.262447 311493 GUI DEBUG reader.py:146: release ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท <InputEvent (3, 8, 0)>

adam-kulagowski avatar Dec 06 '22 15:12 adam-kulagowski

does it work on the beta version?

sezanzeb avatar Dec 06 '22 16:12 sezanzeb

It's better but to some extent:

I've ended w/ the following configuration:

{
    "3,40,-1+3,8,-1": {
        "target_uinput": "keyboard",
        "output_symbol": "d",
        "mapping_type": "key_macro"
    },
    "3,40,-1+3,8,1": {
        "target_uinput": "keyboard",
        "output_symbol": "u",
        "mapping_type": "key_macro"
    }
}

But now I have different behavior. As soon as I remove my finger from strip, I'm getting letter d constantly.

I've theory that this is caused by HW reporting ABS_WHEEL Value "0" always when I'm raising my finger from the strip. The following sudo evtest shows events when I've touche strip in 3 places:

Event: time 1670422836.029082, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1670422836.029082, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 5
Event: time 1670422836.029082, -------------- SYN_REPORT ------------
Event: time 1670422836.211082, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1670422836.211082, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0
Event: time 1670422836.211082, -------------- SYN_REPORT ------------


Event: time 1670422841.351118, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1670422841.351118, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 2
Event: time 1670422841.351118, -------------- SYN_REPORT ------------
Event: time 1670422841.501116, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1670422841.501116, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0
Event: time 1670422841.501116, -------------- SYN_REPORT ------------


Event: time 1670422843.413132, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1670422843.413132, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 4
Event: time 1670422843.413132, -------------- SYN_REPORT ------------
Event: time 1670422843.599133, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1670422843.599133, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0
Event: time 1670422843.599133, -------------- SYN_REPORT ------------

So there 4 events for each touch: ABS_MISC 15 ABS_WHEEL 5 <- this shows the position. If I move my finger without rising it, there will be more events like this with values in range 1-7 ABS_MISC 0 ABS_WHEEL 0

Is there any way to filter '0' value from acceptable ones by input-remmaper ? Or is there any other way to get it working?

adam-kulagowski avatar Dec 07 '22 14:12 adam-kulagowski

can you post the Supported events section from $evtest? It should look something like this:

Input device name: "Sony Interactive Entertainment Wireless Controller Touchpad"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 272 (BTN_LEFT)
    Event code 325 (BTN_TOOL_FINGER)
    Event code 330 (BTN_TOUCH)
    Event code 333 (BTN_TOOL_DOUBLETAP)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value      0
      Min        0
      Max     1919
    Event code 1 (ABS_Y)
      Value      0
      Min        0
      Max     1079
    Event code 47 (ABS_MT_SLOT)
      Value      0
      Min        0
      Max        1
    Event code 53 (ABS_MT_POSITION_X)
      Value      0
      Min        0
      Max     1919
    Event code 54 (ABS_MT_POSITION_Y)
      Value      0
      Min        0
      Max     1079
    Event code 57 (ABS_MT_TRACKING_ID)
      Value      0
      Min        0
      Max    65535
Properties:
  Property type 0 (INPUT_PROP_POINTER)
  Property type 2 (INPUT_PROP_BUTTONPAD)
Testing ... (interrupt to exit)

jonasBoss avatar Dec 07 '22 15:12 jonasBoss

Here they are:

Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x256c product 0x6d version 0x111
Input device name: "HUION Huion Tablet_HS611 Touch Strip"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 256 (BTN_0)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value      0
      Min        0
      Max        1
    Event code 1 (ABS_Y)
      Value      0
      Min        0
      Max        1
    Event code 8 (ABS_WHEEL)
      Value      0
      Min        0
      Max        7
      Resolution       3
    Event code 40 (ABS_MISC)
      Value      0
      Min        0
      Max      255
Properties:
Testing ... (interrupt to exit)
Event: time 1670439881.847975, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1670439881.847975, -------------- SYN_REPORT ------------
Event: time 1670439882.542013, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 1
Event: time 1670439882.542013, -------------- SYN_REPORT ------------
Event: time 1670439882.734281, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 2
[...]

adam-kulagowski avatar Dec 07 '22 19:12 adam-kulagowski

That is what I suspected. InputRemapper currently assumes that a ABS_XX axis is always symmetrical. Your device sends

Event: time 1670422841.501116, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1670422841.501116, type 3 (EV_ABS), code 8 (ABS_WHEEL), value 0
Event: time 1670422841.501116, -------------- SYN_REPORT ------------

when you release the strip. This will tell InputRemapper that the ABS_WHEEL axis is all the way to the left. That triggers the mapping to "d".

You can workaround this issue: In the GUI, where you record the input there is a Advanced button that lets you edit the input combination:

  • you can remove the ABS_MISC input. It does not do anything. It has a range of 0-255 but only reports 0 or 15, so it will always be triggered. (ABS_MISC would need to report 255/2 in order to be centered and release the mapping)
  • Modify the Trigger-threshold for the ABS_WHEEL input. You can use values between -100% and +100%. Although in your case negative values will endlessly trigger. You can have multiple mappings with different Trigger thresholds. Because the range of ABS_WHEEL is 0-7 that gives you the possibility to create 4 different mappings at +1%-25% (Triggers at a value >= 4), +26%-50% (value >= 5), +51%-75% (value >= 6) and +76%-99% (value=7)

jonasBoss avatar Dec 08 '22 10:12 jonasBoss

To properly solve this we need to introduce a new InputConfig parameter:

A bias (default bias=0) which shifts the axis mid-point. bias=-1 would would shift the "mid-point" all the way to the left. This would also be useful to compensate for stick-drift on controllers.

jonasBoss avatar Dec 08 '22 10:12 jonasBoss