sezanzeb / input-remapper

🎮 ⌨ An easy to use tool to change the behaviour of your input devices.
GNU General Public License v3.0
3.83k stars 159 forks source link

input-remapper-control doesn't list devices available in input-remapper-gtk #929

Open a9udn9u opened 3 months ago

a9udn9u commented 3 months ago

To help people understand your problems, run sudo pkill -f input-remapper && input-remapper-gtk -d, reproduce the problem and then share the output here.

Yes, I did that.


The Problem

$ input-remapper-control --list-devices
AT Translated Set 2 keyboard
ASUSTeK Computer Inc. N-KEY Device
Sony Interactive Entertainment DualSense Wireless Controller
Microsoft X-Box 360 pad 0

But in input-remapper-gtk I got a whole lot more devices.

screenshot

This happens on my ROG Ally in docked mode, it appears that input-remapper-control can only see device native input devices, but input-remapper-gtk can see devices plugged into my thunderbolt docking station.

Versions:

$ input-remapper-control --version
input-remapper 2.0.1  https://github.com/sezanzeb/input-remapper
python-evdev 1.6.1

input-remapper-gtk shows the exact same version. Please let me know what more info I can provide.

beauduperry commented 3 months ago

Edited to add: This is on EndeavourOS running KDE Plasma 6 on Wayland.

I'm also having this issue. I noticed in the gtk debug that reader_client outputs the always-listed device(s), then the reader_client runs once again and sees all the devices. Only the device(s) in the first instance of reader_client show in "input-remapper-control --list-devices".

> input-remapper-control --version
input-remapper 2.0.1 f5151aab27ae0e7d8b1f0c80ce92a718e3a86e71 https://github.com/sezanzeb/input-remapper
python-evdev 1.7.1
21:06:22.327396 27858 GUI DEBUG logger.py:297: Using rich.traceback
21:06:22.327455 27858 GUI INFO logger.py:265: input-remapper-gtk 2.0.1 f5151aab27ae0e7d8b1f0c80ce92a718e3a86e71 https://github.com/sezanzeb/input-remapper
21:06:22.327511 27858 GUI INFO logger.py:273: python-evdev 1.7.1
21:06:22.327541 27858 GUI WARNING logger.py:276: 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!
21:06:22.327572 27858 GUI DEBUG input-remapper-gtk:67: Using locale directory: /usr/share/input-remapper/lang
21:06:22.336126 27858 GUI DEBUG pipe.py:70: Creating new pipe for "/tmp/input-remapper-redacted/reader-results"
21:06:22.337578 27858 GUI DEBUG pipe.py:70: Creating new pipe for "/tmp/input-remapper-redacted/reader-commands"
21:06:22.338574 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.terminate: <function ReaderClient.attach_to_events.<locals>.<lambda> at 0x74fe583dac00>
21:06:22.338753 27858 GUI DEBUG reader_service.py:144: Running `pkexec input-remapper-control --command start-reader-service -d`
21:06:27.289536 27864 control DEBUG logger.py:297: Using rich.traceback
21:06:27.289615 27864 control DEBUG input-remapper-control:233: Call for "['/usr/bin/input-remapper-control', '--command', 'start-reader-service', '-d']"
21:06:27.294594 27864 control DEBUG input-remapper-control:215: System is booted
21:06:27.294665 27864 control DEBUG input-remapper-control:178: Running `input-remapper-reader-service -d &`
21:06:27.296836 27864 control INFO input-remapper-control:263: Done
21:06:27.319341 27858 GUI INFO daemon.py:234: Starting the service
21:06:27.319433 27858 GUI DEBUG daemon.py:245: Running `pkexec input-remapper-control --command start-daemon  -d`
21:06:27.441898 27905 reader-service DEBUG logger.py:297: Using rich.traceback
21:06:27.479262 27905 reader-service DEBUG data.py:118: Found data at "/usr/share/input-remapper"
21:06:27.486584 27905 reader-service DEBUG pipe.py:87: Using existing pipe for "/tmp/input-remapper-redacted/reader-results"
21:06:27.486680 27905 reader-service DEBUG pipe.py:87: Using existing pipe for "/tmp/input-remapper-redacted/reader-commands"
21:06:27.486941 27905 reader-service DEBUG reader_service.py:154: Discovering initial groups
21:06:27.487194 27905 reader-service DEBUG groups.py:355: Discovering device paths
21:06:27.518364 27906 control DEBUG logger.py:297: Using rich.traceback
21:06:27.518438 27906 control DEBUG input-remapper-control:233: Call for "['/usr/bin/input-remapper-control', '--command', 'start-daemon', '-d']"
21:06:27.523374 27906 control DEBUG input-remapper-control:215: System is booted
21:06:27.523422 27906 control DEBUG input-remapper-control:178: Running `input-remapper-service --hide-info -d &`
21:06:27.525382 27906 control INFO input-remapper-control:263: Done
21:06:27.569486 27905 reader-service DEBUG groups.py:392: "PC Speaker" has no useful capabilities
21:06:27.647252 27915 service DEBUG logger.py:297: Using rich.traceback
21:06:27.649656 27905 reader-service DEBUG groups.py:403: Found mouse "Logitech G502 HERO Gaming Mouse" at "/dev/input/event3", hash "3010703e4c2ff7c7b45909c4098f1f0b", key "3_1133_49291_098B314E3734_usb-0000:0c:00.3-1.1"
21:06:27.689607 27905 reader-service DEBUG groups.py:403: Found keyboard "Logitech G502 HERO Gaming Mouse Keyboard" at "/dev/input/event4", hash "79545f98c7e1124f1b8802682c3cc796", key "3_1133_49291_098B314E3734_usb-0000:0c:00.3-1.1"
21:06:27.713619 27915 service DEBUG data.py:118: Found data at "/usr/share/input-remapper"
21:06:27.722671 27915 service DEBUG daemon.py:196: Creating daemon
21:06:27.722809 27915 service INFO global_config.py:109: Loaded config from "/home/redacted/.config/input-remapper-2/config.json"
21:06:27.722854 27915 service DEBUG shared_dict.py:57: Starting SharedDict process
21:06:27.725157 27916 service DEBUG shared_dict.py:63: SharedDict process started
21:06:27.727838 27915 service DEBUG daemon.py:281: Running daemon
21:06:27.729479 27905 reader-service DEBUG groups.py:396: "Eee PC WMI hotkeys" is denylisted
21:06:27.745567 27858 GUI DEBUG daemon.py:264: Telling service about "/home/redacted/.config/input-remapper-2"
21:06:27.746334 27915 service INFO global_config.py:109: Loaded config from "/home/redacted/.config/input-remapper-2/config.json"
21:06:27.746529 27858 GUI DEBUG global_uinputs.py:135: Creating FrontendUInputs
21:06:27.746595 27858 GUI DEBUG global_uinputs.py:103: creating fake UInput device: "input-remapper keyboard"
21:06:27.746644 27858 GUI DEBUG global_uinputs.py:103: creating fake UInput device: "input-remapper gamepad"
21:06:27.746689 27858 GUI DEBUG global_uinputs.py:103: creating fake UInput device: "input-remapper mouse"
21:06:27.746725 27858 GUI DEBUG global_uinputs.py:103: creating fake UInput device: "input-remapper keyboard + mouse"
21:06:27.746811 27858 GUI INFO global_config.py:109: Loaded config from "/home/redacted/.config/input-remapper-2/config.json"
21:06:27.746862 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.groups: <bound method Controller._on_groups_changed of <inputremapper.gui.controller.Controller object at 0x74fe59529e80>>
21:06:27.746905 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method Controller._on_preset_changed of <inputremapper.gui.controller.Controller object at 0x74fe59529e80>>
21:06:27.746943 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.init: <bound method Controller._on_init of <inputremapper.gui.controller.Controller object at 0x74fe59529e80>>
21:06:27.746978 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method Controller._publish_mapping_errors_as_status_msg of <inputremapper.gui.controller.Controller object at 0x74fe59529e80>>
21:06:27.747013 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method Controller._publish_mapping_errors_as_status_msg of <inputremapper.gui.controller.Controller object at 0x74fe59529e80>>
21:06:27.747083 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.terminate: <function UserInterface.__init__.<locals>.<lambda> at 0x74fe58263920>
21:06:27.762861 27905 reader-service DEBUG groups.py:403: Found keyboard "Keychron Keychron C1 Pro" at "/dev/input/event6", hash "432034ba50dd31a4dd98b442141c1fde", key "3_13364_1296__usb-0000:0c:00.3-3.2"
21:06:27.802969 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.groups: <bound method DeviceGroupSelection._on_groups_changed of <inputremapper.gui.components.device_groups.DeviceGroupSelection object at 0x74fe58224e90>>
21:06:27.803019 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.group: <bound method DeviceGroupSelection._on_group_changed of <inputremapper.gui.components.device_groups.DeviceGroupSelection object at 0x74fe58224e90>>
21:06:27.803077 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.group: <bound method PresetSelection._on_group_changed of <inputremapper.gui.components.presets.PresetSelection object at 0x74fe588f1490>>
21:06:27.803120 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method PresetSelection._on_preset_changed of <inputremapper.gui.components.presets.PresetSelection object at 0x74fe588f1490>>
21:06:27.803313 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method MappingListBox._on_preset_changed of <inputremapper.gui.components.editor.MappingListBox object at 0x74fe58cb1190>>
21:06:27.803354 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method MappingListBox._on_mapping_changed of <inputremapper.gui.components.editor.MappingListBox object at 0x74fe58cb1190>>
21:06:27.803411 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.uinputs: <bound method TargetSelection._on_uinputs_changed of <inputremapper.gui.components.editor.TargetSelection object at 0x74fe58541eb0>>
21:06:27.803450 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method TargetSelection._on_mapping_loaded of <inputremapper.gui.components.editor.TargetSelection object at 0x74fe58541eb0>>
21:06:27.803507 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.group: <bound method Breadcrumbs._on_group_changed of <inputremapper.gui.components.common.Breadcrumbs object at 0x74fe588f3dd0>>
21:06:27.803544 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method Breadcrumbs._on_preset_changed of <inputremapper.gui.components.common.Breadcrumbs object at 0x74fe588f3dd0>>
21:06:27.803583 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method Breadcrumbs._on_mapping_changed of <inputremapper.gui.components.common.Breadcrumbs object at 0x74fe588f3dd0>>
21:06:27.803701 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.group: <bound method Breadcrumbs._on_group_changed of <inputremapper.gui.components.common.Breadcrumbs object at 0x74fe5828c830>>
21:06:27.803741 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method Breadcrumbs._on_preset_changed of <inputremapper.gui.components.common.Breadcrumbs object at 0x74fe5828c830>>
21:06:27.803779 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method Breadcrumbs._on_mapping_changed of <inputremapper.gui.components.common.Breadcrumbs object at 0x74fe5828c830>>
21:06:27.803929 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.do_stack_switch: <bound method Stack._do_stack_switch of <inputremapper.gui.components.main.Stack object at 0x74fe58cb1a90>>
21:06:27.803994 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.recording_finished: <bound method RecordingToggle._on_recording_finished of <inputremapper.gui.components.editor.RecordingToggle object at 0x74fe58a781a0>>
21:06:27.804053 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method RequireActiveMapping._on_preset of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828c920>>
21:06:27.804090 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method RequireActiveMapping._on_mapping of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828c920>>
21:06:27.804393 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.status_msg: <bound method StatusBar._on_status_update of <inputremapper.gui.components.main.StatusBar object at 0x74fe5828c980>>
21:06:27.804448 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.recording_started: <bound method RecordingStatus._on_recording_started of <inputremapper.gui.components.editor.RecordingStatus object at 0x74fe5828c8f0>>
21:06:27.804489 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.recording_finished: <bound method RecordingStatus._on_recording_finished of <inputremapper.gui.components.editor.RecordingStatus object at 0x74fe5828c8f0>>
21:06:27.804634 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method AutoloadSwitch._on_preset_changed of <inputremapper.gui.components.editor.AutoloadSwitch object at 0x74fe5828cbf0>>
21:06:27.804691 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method ReleaseCombinationSwitch._on_mapping_changed of <inputremapper.gui.components.editor.ReleaseCombinationSwitch object at 0x74fe5828cda0>>
21:06:27.804737 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method CombinationListbox._on_mapping_changed of <inputremapper.gui.components.editor.CombinationListbox object at 0x74fe58541a00>>
21:06:27.804774 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.selected_event: <bound method CombinationListbox._on_event_changed of <inputremapper.gui.components.editor.CombinationListbox object at 0x74fe58541a00>>
21:06:27.804827 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.selected_event: <bound method AnalogInputSwitch._on_event of <inputremapper.gui.components.editor.AnalogInputSwitch object at 0x74fe58cddee0>>
21:06:27.805132 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.selected_event: <bound method TriggerThresholdInput._on_event of <inputremapper.gui.components.editor.TriggerThresholdInput object at 0x74fe58cb2ae0>>
21:06:27.805418 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method RelativeInputCutoffInput._on_mapping_message of <inputremapper.gui.components.editor.RelativeInputCutoffInput object at 0x74fe58cb2ed0>>
21:06:27.805799 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method OutputAxisSelector._on_mapping_message of <inputremapper.gui.components.editor.OutputAxisSelector object at 0x74fe58a1b860>>
21:06:27.805844 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.uinputs: <bound method OutputAxisSelector._on_uinputs_message of <inputremapper.gui.components.editor.OutputAxisSelector object at 0x74fe58a1b860>>
21:06:27.805904 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method KeyAxisStackSwitcher._on_mapping_message of <inputremapper.gui.components.editor.KeyAxisStackSwitcher object at 0x74fe58ceee40>>
21:06:27.805963 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method ReleaseTimeoutInput._on_mapping_message of <inputremapper.gui.components.editor.ReleaseTimeoutInput object at 0x74fe58cb2ea0>>
21:06:27.806090 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method TransformationDrawArea._on_mapping_message of <inputremapper.gui.components.editor.TransformationDrawArea object at 0x74fe58cdc7a0>>
21:06:27.806483 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method Sliders._on_mapping_message of <inputremapper.gui.components.editor.Sliders object at 0x74fe5828cef0>>
21:06:27.806553 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method RequireActiveMapping._on_preset of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828cfe0>>
21:06:27.806593 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method RequireActiveMapping._on_mapping of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828cfe0>>
21:06:27.806641 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method RequireActiveMapping._on_preset of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828d0a0>>
21:06:27.806679 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method RequireActiveMapping._on_mapping of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828d0a0>>
21:06:27.806729 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.preset: <bound method RequireActiveMapping._on_preset of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828d100>>
21:06:27.806766 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method RequireActiveMapping._on_mapping of <inputremapper.gui.components.editor.RequireActiveMapping object at 0x74fe5828d100>>
21:06:27.807014 27858 GUI WARNING utils.py:199: HandlerDisabled entry failed: "nothing connected to <bound method CodeEditor._on_gtk_changed of <inputremapper.gui.components.editor.CodeEditor object at 0x74fe5828d160>>"
21:06:27.807106 27858 GUI WARNING utils.py:205: HandlerDisabled exit failed: "nothing connected to <bound method CodeEditor._on_gtk_changed of <inputremapper.gui.components.editor.CodeEditor object at 0x74fe5828d160>>"
21:06:27.807168 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method CodeEditor._on_mapping_loaded of <inputremapper.gui.components.editor.CodeEditor object at 0x74fe5828d160>>
21:06:27.807206 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.recording_finished: <bound method CodeEditor._on_recording_finished of <inputremapper.gui.components.editor.CodeEditor object at 0x74fe5828d160>>
21:06:27.807768 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method Autocompletion._on_mapping_changed of <autocompletion.Autocompletion object at 0x74fe582aa3c0 (Autocompletion at 0x5cd8ef654e10)>>
21:06:27.807815 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.uinputs: <bound method Autocompletion._on_uinputs_changed of <autocompletion.Autocompletion object at 0x74fe582aa3c0 (Autocompletion at 0x5cd8ef654e10)>>
21:06:27.807996 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.mapping: <bound method UserInterface.update_combination_label of <inputremapper.gui.user_interface.UserInterface object at 0x74fe58cc6ea0>>
21:06:27.808040 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.injector_state: <bound method UserInterface.on_injector_state_msg of <inputremapper.gui.user_interface.UserInterface object at 0x74fe58cc6ea0>>
21:06:27.808082 27858 GUI DEBUG message_broker.py:97: adding new Listener for MessageType.user_confirm_request: <bound method UserInterface._on_user_confirm_request of <inputremapper.gui.user_interface.UserInterface object at 0x74fe58cc6ea0>>
21:06:27.828408 27858 GUI DEBUG reader_client.py:141: received {'type': 'status', 'message': 'ready'}
21:06:27.831231 27858 GUI DEBUG message_broker.py:76: from input-remapper-gtk:98: Signal=init: Signal: MessageType.init
21:06:27.831586 27858 GUI DEBUG groups.py:355: Discovering device paths
21:06:27.832154 27858 GUI DEBUG groups.py:403: Found gamepad "CH PRODUCTS CH PRO THROTTLE USB " at "/dev/input/event7", hash "66de38c08e835bbdee2945c443c51eb8", key "3_1678_241__usb-0000:0c:00.3-3.3"
21:06:27.832311 27858 GUI INFO groups.py:482: Found "CH PRODUCTS CH PRO THROTTLE USB "
21:06:27.832588 27858 GUI DEBUG message_broker.py:76: from reader_client.py:282: Signal=groups: GroupsData(groups={'CH PRODUCTS CH PRO THROTTLE USB ': [<DeviceType.GAMEPAD: 'gamepad'>]})
21:06:27.832666 27858 GUI DEBUG device_groups.py:102: adding CH PRODUCTS CH PRO THROTTLE USB  to device selection
21:06:27.833327 27858 GUI INFO data_manager.py:297: Loading group "CH PRODUCTS CH PRO THROTTLE USB "
21:06:27.834045 27858 GUI INFO data_manager.py:315: Loading preset "new preset"
21:06:27.834097 27858 GUI INFO preset.py:147: Loading preset from "/home/redacted/.config/input-remapper-2/presets/CH PRODUCTS CH PRO THROTTLE USB /new preset.json"
21:06:27.834149 27858 GUI DEBUG preset.py:284: got empty file
21:06:27.834242 27858 GUI DEBUG message_broker.py:76: from data_manager.py:140: Signal=uinputs: UInputsData(uinputs={'keyboard': {1: [0, ... 700]}, 'gamepad': {1: [304, ... 318], 3: [(0, AbsInfo(value=0, min=-32768, max=32768, fuzz=0, flat=0, resolution=0)), (1, AbsInfo(value=0, min=-32768, max=32768, fuzz=0, flat=0, resolution=0)), (2, AbsInfo(value=0, min=-32768, max=32768, fuzz=0, flat=0, resolution=0)), (3, AbsInfo(value=0, min=-32768, max=32768, fuzz=0, flat=0, resolution=0)), (4, AbsInfo(value=0, min=-32768, max=32768, fuzz=0, flat=0, resolution=0)), (5, AbsInfo(value=0, min=-32768, max=32768, fuzz=0, flat=0, resolution=0)), (16, AbsInfo(value=0, min=-1, max=1, fuzz=0, flat=0, resolution=0)), (17, AbsInfo(value=0, min=-1, max=1, fuzz=0, flat=0, resolution=0))]}, 'mouse': {1: [272, ... 279], 2: [0, ... 12]}, 'keyboard + mouse': {1: [0, ... 279], 2: [0, ... 12]}})
21:06:27.834678 27858 GUI DEBUG message_broker.py:76: from data_manager.py:100: Signal=group: GroupData(group_key='CH PRODUCTS CH PRO THROTTLE USB ', presets=('new preset',))
21:06:27.834940 27858 GUI DEBUG message_broker.py:76: from data_manager.py:158: Signal=injector_state: InjectorStateMessage(state='UNKNOWN')
21:06:27.835139 27858 GUI DEBUG message_broker.py:76: from data_manager.py:111: Signal=preset: PresetData(name='new preset', mappings=[], autoload=False)
21:06:27.835893 27858 GUI DEBUG message_broker.py:76: from controller.py:147: Signal=mapping: {'target_uinput': 'keyboard'}
21:06:27.837334 27858 GUI DEBUG message_broker.py:76: from controller.py:159: Signal=status_msg: StatusData(ctx_id=5, msg=None, tooltip=None)
21:06:27.837411 27858 GUI DEBUG message_broker.py:76: from controller.py:159: Signal=status_msg: StatusData(ctx_id=5, msg=None, tooltip=None)
21:06:27.846197 27905 reader-service DEBUG groups.py:403: Found gamepad "CH PRODUCTS CH PRO THROTTLE USB " at "/dev/input/event7", hash "66de38c08e835bbdee2945c443c51eb8", key "3_1678_241__usb-0000:0c:00.3-3.3"
21:06:27.926228 27905 reader-service DEBUG groups.py:403: Found mouse "Keychron Keychron C1 Pro Mouse" at "/dev/input/event8", hash "361b199b6a7e3a8a2716eef821d21483", key "3_13364_1296__usb-0000:0c:00.3-3.2"
21:06:27.972841 27905 reader-service DEBUG groups.py:403: Found unknown "Keychron Keychron C1 Pro System Control" at "/dev/input/event9", hash "cec5c576b4f718c49ebcdf85d55ec199", key "3_13364_1296__usb-0000:0c:00.3-3.2"
21:06:28.016113 27905 reader-service DEBUG groups.py:392: "HDA ATI HDMI HDMI/DP,pcm=3" has no useful capabilities
21:06:28.092860 27905 reader-service DEBUG groups.py:403: Found unknown "Keychron Keychron C1 Pro Consumer Control" at "/dev/input/event11", hash "17ba58f676167083c63bf9079cfd6b71", key "3_13364_1296__usb-0000:0c:00.3-3.2"
21:06:28.142777 27905 reader-service DEBUG groups.py:392: "HDA ATI HDMI HDMI/DP,pcm=7" has no useful capabilities
21:06:28.226209 27905 reader-service DEBUG groups.py:403: Found keyboard "Keychron Keychron C1 Pro Keyboard" at "/dev/input/event13", hash "83a764db504f2ff836534a0e7a5968f2", key "3_13364_1296__usb-0000:0c:00.3-3.2"
21:06:28.246326 27905 reader-service DEBUG groups.py:392: "HDA ATI HDMI HDMI/DP,pcm=8" has no useful capabilities
21:06:28.332805 27905 reader-service DEBUG groups.py:392: "HDA ATI HDMI HDMI/DP,pcm=9" has no useful capabilities
21:06:28.399501 27905 reader-service DEBUG groups.py:392: "HDA ATI HDMI HDMI/DP,pcm=10" has no useful capabilities
21:06:28.476117 27905 reader-service DEBUG groups.py:392: "HD-Audio Generic Front Mic" has no useful capabilities
21:06:28.552774 27905 reader-service DEBUG groups.py:392: "HD-Audio Generic Rear Mic" has no useful capabilities
21:06:28.636118 27905 reader-service DEBUG groups.py:392: "HD-Audio Generic Rear Mic" has no useful capabilities
21:06:28.692839 27905 reader-service DEBUG groups.py:392: "HD-Audio Generic Line" has no useful capabilities
21:06:28.756176 27905 reader-service DEBUG groups.py:392: "HD-Audio Generic Line Out" has no useful capabilities
21:06:28.816129 27905 reader-service DEBUG groups.py:392: "HD-Audio Generic Front Headphone" has no useful capabilities
21:06:28.882867 27905 reader-service DEBUG groups.py:403: Found mouse "ELECOM TrackBall Mouse HUGE TrackBall" at "/dev/input/event23", hash "0bb1b291d28145172578f4f856de7a4a", key "3_1390_268__usb-0000:0c:00.3-3.1"
21:06:28.883164 27905 reader-service INFO groups.py:482: Found "Logitech G502 HERO Gaming Mouse", "Keychron Keychron C1 Pro", "CH PRODUCTS CH PRO THROTTLE USB ", "ELECOM TrackBall Mouse HUGE TrackBall"
21:06:28.883228 27905 reader-service DEBUG reader_service.py:161: Sending groups
21:06:28.883388 27905 reader-service DEBUG reader_service.py:193: Waiting for commands
21:06:28.898896 27858 GUI DEBUG reader_client.py:141: received {'type': 'groups', 'message': '["{\\"paths\\": [\\"/dev/input/event3\\", \\"/dev/input/event4\\"], \\"names\\": [\\"Logitech G502 HERO Gaming Mouse\\", \\"Logitech G502 HERO Gaming Mouse Keyboard\\"], \\"types\\": [\\"keyboard\\", \\"mouse\\"], \\"key\\": \\"Logitech G502 HERO Gaming Mouse\\"}", "{\\"paths\\": [\\"/dev/input/event6\\", \\"/dev/input/event8\\", \\"/dev/input/event9\\", \\"/dev/input/event11\\", \\"/dev/input/event13\\"], \\"names\\": [\\"Keychron Keychron C1 Pro\\", \\"Keychron Keychron C1 Pro Mouse\\", \\"Keychron Keychron C1 Pro System Control\\", \\"Keychron Keychron C1 Pro Consumer Control\\", \\"Keychron Keychron C1 Pro Keyboard\\"], \\"types\\": [\\"keyboard\\", \\"mouse\\"], \\"key\\": \\"Keychron Keychron C1 Pro\\"}", "{\\"paths\\": [\\"/dev/input/event7\\"], \\"names\\": [\\"CH PRODUCTS CH PRO THROTTLE USB \\"], \\"types\\": [\\"gamepad\\"], \\"key\\": \\"CH PRODUCTS CH PRO THROTTLE USB \\"}", "{\\"paths\\": [\\"/dev/input/event23\\"], \\"names\\": [\\"ELECOM TrackBall Mouse HUGE TrackBall\\"], \\"types\\": [\\"mouse\\"], \\"key\\": \\"ELECOM TrackBall Mouse HUGE TrackBall\\"}"]'}
21:06:28.899099 27858 GUI DEBUG reader_client.py:287: Received 4 devices
21:06:28.899220 27858 GUI DEBUG message_broker.py:76: from reader_client.py:282: Signal=groups: GroupsData(groups={'Logitech G502 HERO Gaming Mouse': [<DeviceType.KEYBOARD: 'keyboard'>, <DeviceType.MOUSE: 'mouse'>], 'Keychron Keychron C1 Pro': [<DeviceType.KEYBOARD: 'keyboard'>, <DeviceType.MOUSE: 'mouse'>], 'CH PRODUCTS CH PRO THROTTLE USB ': [<DeviceType.GAMEPAD: 'gamepad'>], 'ELECOM TrackBall Mouse HUGE TrackBall': [<DeviceType.MOUSE: 'mouse'>]})
21:06:28.899546 27858 GUI DEBUG device_groups.py:102: adding Logitech G502 HERO Gaming Mouse to device selection
21:06:28.899955 27858 GUI DEBUG device_groups.py:102: adding Keychron Keychron C1 Pro to device selection
21:06:28.900254 27858 GUI DEBUG device_groups.py:102: adding CH PRODUCTS CH PRO THROTTLE USB  to device selection
21:06:28.900541 27858 GUI DEBUG device_groups.py:102: adding ELECOM TrackBall Mouse HUGE TrackBall to device selection
21:06:28.900887 27858 GUI DEBUG controller.py:123: A group is already active
Flashwalker commented 2 months ago

KDE Plasma 6 on Wayland on KDE Neon distro Same issue - empty devices list in terminal.

$ input-remapper-control \
            --config-dir ~/'.config/input-remapper-2' \
            --command start \
            --preset copypaste \
            --device "MX Anywhere 3S Mouse"

Using config from "/home/user/.config/input-remapper-2/config.json" instead
Loaded config from "/home/user/.config/input-remapper-2/config.json"
ERROR: Device "MX Anywhere 3S Mouse" is unknown or not an appropriate input device

Снимок экрана_20240811_144119

14:47:05 ~ $ input-remapper-control --list-devices
14:50:20 ~ $
TuTiuTe commented 1 month ago

I have the same issue as @Flashwalker, input-remapper-control --list-devices output is empty This is fixed by running it with sudo, and it lists all devices. Though it is not a good fix for me as I'd like to automate this command I think it's a different issue than @a9udn9u and @beauduperry as they at least find some devices Our problem must be a permission problem

TuTiuTe commented 1 month ago

@Flashwalker I figured that adding your user to the input group fixed this particular issue, I think we had the same Saddly I don't think it's related to the original issue so good luck with it simply run usermod -aG input username then log out and log back in

a9udn9u commented 1 month ago

@TuTiuTe It actually fixed the issue for me! Thank you so much!

Flashwalker commented 1 day ago

I figured that adding your user to the input group fixed this particular issue, I think we had the same...

Yeap, i posted the same solution in wrong thread before:

Works for me again, devices are detectable via cli again.

I'm using logi bolt adapter now, so it works.

Can't really say that is was helpfull, adding my user to the input group, or just a logi bolt, or some update or something else.