Author Topic: Linux - USB Keyboard or other USB device don't work when paring bluetooth joy  (Read 5417 times)

mjnman

  • Newbie
  • *
  • Posts: 9
    • View Profile
When paring bluetooth 8bitdo N30 the keyboard commands or different USB joystick commands doesn't work in the AttractMode menu. So, if I send a command via bluetooth joystick 8bitdo N30 (command: prev_game, next_game or anything definited) the keyboard commands start to working.
If I start AttractMode binary without bluetooth joystick paring the keyboard commands or USB joystick work correcly.
How I can debug this issue?
I'm using debian bookworm with kernel 6.8.5 on X86 with AttractMode 2.7.0.
In attachment the "attract.cfg".

mjnman

  • Newbie
  • *
  • Posts: 9
    • View Profile
AttractMode with debug log when work (Only USB Qanba Arcade Joystick Q1):
Code: [Select]
...
Joysticks after mapping:
ID: 0 => Joy0(Qanba Arcade Joystick Q1)
ID: 1 => Joy7(No Joystick)
ID: 2 => Joy7(No Joystick)
ID: 3 => Joy7(No Joystick)
ID: 4 => Joy7(No Joystick)
...

AttractMode with debug log when don't work (bluetooth and USB joy), after pairing bluetooth joystick:
Code: [Select]
...
Failed to get vendor ID of joystick /dev/input/js1
Failed to get product ID of joystick /dev/input/js1
Joysticks after mapping:
ID: 0 => Joy0(Qanba Arcade Joystick Q1)
ID: 1 => Joy1(8Bitdo NES30 Arcade)
ID: 2 => Joy7(No Joystick)
ID: 3 => Joy7(No Joystick)
ID: 4 => Joy7(No Joystick)
...

When pairing bluetooth joystick missed the "vendor ID" and "product ID"
Code: [Select]
# udevadm info --query=all --name=/dev/input/js1
P: /devices/pci0000:00/0000:00:1e.0/dw-apb-uart.0/dw-apb-uart.0:0/dw-apb-uart.0:0.0/serial0/serial0-0/bluetooth/hci0/hci0:11/0005:2DC8:1081.000A/input/input24/js1
M: js1
R: 1
U: input
D: c 13:1
N: input/js1
L: 0
E: DEVPATH=/devices/pci0000:00/0000:00:1e.0/dw-apb-uart.0/dw-apb-uart.0:0/dw-apb-uart.0:0.0/serial0/serial0-0/bluetooth/hci0/hci0:11/0005:2DC8:1081.000A/input/input24/js1
E: DEVNAME=/dev/input/js1
E: MAJOR=13
E: MINOR=1
E: SUBSYSTEM=input
E: USEC_INITIALIZED=139116391
E: ID_INPUT=1
E: ID_INPUT_JOYSTICK=1
E: ID_BUS=bluetooth
E: ID_PATH=pci-0000:00:1e.0-platform-dw-apb-uart.0
E: ID_PATH_TAG=pci-0000_00_1e_0-platform-dw-apb-uart_0
E: ID_FOR_SEAT=input-pci-0000_00_1e_0-platform-dw-apb-uart_0
E: TAGS=:seat:uaccess:
E: CURRENT_TAGS=:seat:uaccess:
but with command "udevadm info -a --name=/dev/input/js1" I can saw at parent device the infos.
Code: [Select]
  looking at parent device '/devices/pci0000:00/0000:00:1e.0/dw-apb-uart.0/dw-apb-uart.0:0/dw-apb-uart.0:0.0/serial0/serial0-0/bluetooth/hci0/hci0:11/0005:2DC8:1081.000A/input/input24':
    KERNELS=="input24"
    SUBSYSTEMS=="input"
    DRIVERS==""
    ATTRS{capabilities/abs}=="30627"
    ATTRS{capabilities/ev}=="1b"
    ATTRS{capabilities/ff}=="0"
    ATTRS{capabilities/key}=="ffff000000000000 0 0 0 0"
    ATTRS{capabilities/led}=="0"
    ATTRS{capabilities/msc}=="10"
    ATTRS{capabilities/rel}=="0"
    ATTRS{capabilities/snd}=="0"
    ATTRS{capabilities/sw}=="0"
    ATTRS{id/bustype}=="0005"
    ATTRS{id/product}=="1081"
    ATTRS{id/vendor}=="2dc8"
    ATTRS{id/version}=="0100"
    ATTRS{inhibited}=="0"
    ATTRS{name}=="8Bitdo NES30 Arcade"
    ATTRS{phys}=="a4:83:e7:11:06:2b"
    ATTRS{power/async}=="disabled"
    ATTRS{power/control}=="auto"
    ATTRS{power/runtime_active_kids}=="0"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_enabled}=="disabled"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{power/runtime_usage}=="0"
    ATTRS{properties}=="0"
    ATTRS{uniq}=="e4:17:d8:eb:08:79"

farareaa

  • Newbie
  • *
  • Posts: 1
    • View Profile
    • Melon Playground
AttractMode uses SDL for input. If SDL detects a joystick at startup, it might change how it listens to input events, possibly requiring the joystick to “wake up” before other devices register.

macbrekke88

  • Newbie
  • *
  • Posts: 1
    • View Profile
It sounds like you're experiencing a frustrating issue with the 8bitdo N30 pairing! Have you tried looking into the input configuration settings in AttractMode? Sometimes, resetting or adjusting those settings can help resolve conflicts with keyboard commands. Since you’re diving into retro gaming, have you ever played Bitlife ? It’s a fun way to simulate different life choices and experiences while you troubleshoot your setup. Good luck!