From 4fac759823022a26ad705f1d6c9f84df1e2eafed Mon Sep 17 00:00:00 2001 From: Fabiano Honorato Date: Wed, 5 Mar 2025 07:38:08 -0300 Subject: [PATCH] feat(Flydigi): Add support for flydigi vader 3/4 pro --- .../capability_maps/flydigi_type1.yaml | 60 +++++++++++++++++++ .../devices/59-flydigi_vader_pro.yaml | 37 ++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 rootfs/usr/share/inputplumber/capability_maps/flydigi_type1.yaml create mode 100644 rootfs/usr/share/inputplumber/devices/59-flydigi_vader_pro.yaml diff --git a/rootfs/usr/share/inputplumber/capability_maps/flydigi_type1.yaml b/rootfs/usr/share/inputplumber/capability_maps/flydigi_type1.yaml new file mode 100644 index 00000000..29019b91 --- /dev/null +++ b/rootfs/usr/share/inputplumber/capability_maps/flydigi_type1.yaml @@ -0,0 +1,60 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/ShadowBlip/InputPlumber/main/rootfs/usr/share/inputplumber/schema/capability_map_v1.json +# Schema version number +version: 1 + +# The type of configuration schema +kind: CapabilityMap + +# Name for the device event map +name: Flydigi type 1 + +# Unique identifier of the capability mapping +id: flydigi1 + +# List of mapped events that are activated by a specific set of activation keys. +mapping: + - name: RightPaddle1 + source_events: + - gamepad: + button: RightPaddle1 + target_event: + gamepad: + button: LeftPaddle2 + - name: RightPaddle2 + source_events: + - gamepad: + button: RightPaddle2 + target_event: + gamepad: + button: LeftPaddle1 + - name: RightPaddle3 + source_events: + - gamepad: + button: RightPaddle3 + target_event: + gamepad: + button: LeftPaddle3 + - name: LeftPaddle1 + source_events: + - gamepad: + button: LeftPaddle1 + target_event: + gamepad: + button: RightPaddle1 + - name: LeftPaddle2 + source_events: + - gamepad: + button: LeftPaddle2 + target_event: + gamepad: + button: RightPaddle2 + - name: LeftPaddle3 + source_events: + - gamepad: + button: LeftPaddle3 + target_event: + gamepad: + button: RightPaddle3 + +# List of events to filter from the source devices +filtered_events: [] diff --git a/rootfs/usr/share/inputplumber/devices/59-flydigi_vader_pro.yaml b/rootfs/usr/share/inputplumber/devices/59-flydigi_vader_pro.yaml new file mode 100644 index 00000000..b1925faa --- /dev/null +++ b/rootfs/usr/share/inputplumber/devices/59-flydigi_vader_pro.yaml @@ -0,0 +1,37 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/ShadowBlip/InputPlumber/main/rootfs/usr/share/inputplumber/schema/composite_device_v1.json +# Schema version number +version: 1 + +# The type of configuration schema +kind: CompositeDevice + +# Name of the composite device mapping +name: Flydigi Vader Pro + +# Only use this profile if *any* of the given matches matches. If this list is +# empty,then the source devices will *always* be checked. +# /sys/class/dmi/id/product_name +matches: [] + +# Only allow a single source device per composite device of this type. +single_source: true + +# One or more source devices to combine into a single virtual device. The events +# from these devices will be watched and translated according to the key map. +source_devices: + - group: gamepad + unique: true + evdev: + name: "{Flydigi VADER3, Flydigi VADER4}" + vendor_id: "045e" + product_id: "028e" + handler: event* + +# The target input device(s) that the virtual device profile can use +target_devices: + - xbox-elite + +capability_map_id: flydigi1 + +options: + auto_manage: true