ゲームパッドの Bluetooth デバイスを常にオンにしておくにはどうすればよいですか?

ゲームパッドの Bluetooth デバイスを常にオンにしておくにはどうすればよいですか?

私はこの Bluetooth ゲームパッドを持っています (VR でリモート カメラ ショットやジョイスティックなどとして使用されます)。

このデバイスは、触らないと5分で電源が切れます。でも、そんなことはしたくないんです。例えば、1時間オンにしておきたいんです。30bluetoothctl connect 13:57:90:05:0E:31秒ごとに使ってみましたが、うまくいきませんでした。5分で電源が切れます。操作が遅れて接続できなくなり、物理的に電源を切ったり入れたりしなくてはならないかもしれないので、disconnect試していません。connect常にオンですぐに使用可能

このデバイスに「何か」を送信して、必要な時間オンのままにする方法はありますか?

私のシステム: Debian 10 x64、TP-Link UB400 USB Bluetooth ドングル、デバイス情報は次のとおりです:

[bluetooth]# info 13:57:90:05:0E:31 
Device 13:57:90:05:0E:31 (public)
    Name: Gamepad.
    Alias: Gamepad.
    Class: 0x00000540
    Icon: input-keyboard
    Paired: yes
    Trusted: yes
    Blocked: no
    Connected: yes
    LegacyPairing: no
    UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)
    UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
    Modalias: usb:v05ACp3232d0001

Python evdev を使用すると、このデバイスの機能は次のようになります。

gamepad.capabilities()
{0: [0, 1, 3, 4], 1: [304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319], 3: [(0, AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (1, AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (2, AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (5, AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, 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))], 4: [4]}

gamepad.capabilities(verbose=True)
{('EV_SYN', 0): [('SYN_REPORT', 0), ('SYN_CONFIG', 1), ('SYN_DROPPED', 3), ('?', 4)], ('EV_KEY', 1): [(['BTN_A', 'BTN_GAMEPAD', 'BTN_SOUTH'], 304), (['BTN_B', 'BTN_EAST'], 305), ('BTN_C', 306), (['BTN_NORTH', 'BTN_X'], 307), (['BTN_WEST', 'BTN_Y'], 308), ('BTN_Z', 309), ('BTN_TL', 310), ('BTN_TR', 311), ('BTN_TL2', 312), ('BTN_TR2', 313), ('BTN_SELECT', 314), ('BTN_START', 315), ('BTN_MODE', 316), ('BTN_THUMBL', 317), ('BTN_THUMBR', 318), ('?', 319)], ('EV_ABS', 3): [(('ABS_X', 0), AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (('ABS_Y', 1), AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (('ABS_Z', 2), AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (('ABS_RZ', 5), AbsInfo(value=0, min=-127, max=127, fuzz=0, flat=15, resolution=0)), (('ABS_HAT0X', 16), AbsInfo(value=0, min=-1, max=1, fuzz=0, flat=0, resolution=0)), (('ABS_HAT0Y', 17), AbsInfo(value=0, min=-1, max=1, fuzz=0, flat=0, resolution=0))], ('EV_MSC', 4): [('MSC_SCAN', 4)]}

gamepad.leds()
[] # it has no leds to receive on/off data

関連情報