Skip to content

Instantly share code, notes, and snippets.

@r3a1d3a1
Last active December 5, 2021 12:18
Show Gist options
  • Save r3a1d3a1/bde3d5aab052f152895536e69f1ccdc0 to your computer and use it in GitHub Desktop.
Save r3a1d3a1/bde3d5aab052f152895536e69f1ccdc0 to your computer and use it in GitHub Desktop.
Unity Dualshock 4 over Bluetooth
{
"name": "DS4 Custom",
"extend": "DualShockGamepad",
"extendMultiple": [],
"format": "HID ",
"beforeRender": "",
"commonUsages": [],
"displayName": "DS4 Custom",
"description": "",
"type": "UnityEngine.InputSystem.DualShock.DualShock4GamepadHID, Unity.InputSystem, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null",
"variant": "",
"isGenericTypeOfDevice": false,
"hideInUI": true,
"controls": [
{
"name": "leftStick",
"layout": "Stick",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 3,
"bit": 4294967295,
"sizeInBits": 0,
"format": "VC2B",
"arraySize": 0,
"usages": [
"Primary2DMotion"
],
"aliases": [],
"parameters": "",
"processors": "stickDeadzone",
"displayName": "Left Stick",
"shortDisplayName": "LS",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStick/x",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 0,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStick/left",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 0,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0,clampMax=0.5,invert=true",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStick/right",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 0,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0.5,clampMax=1",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStick/y",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 1,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "invert=true,normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStick/up",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 1,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0,clampMax=0.5,invert=true",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStick/down",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 1,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0.5,clampMax=1,invert=false",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick",
"layout": "Stick",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 5,
"bit": 4294967295,
"sizeInBits": 0,
"format": "VC2B",
"arraySize": 0,
"usages": [
"Secondary2DMotion"
],
"aliases": [],
"parameters": "",
"processors": "stickDeadzone",
"displayName": "Right Stick",
"shortDisplayName": "RS",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick/x",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 0,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick/left",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 0,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0,clampMax=0.5,invert=true",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick/right",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 0,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0.5,clampMax=1",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick/y",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 1,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "invert=true,normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick/up",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 1,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0,clampMax=0.5,invert=true",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStick/down",
"layout": "",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 1,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "normalize=true,normalizeMin=0,normalizeMax=1,normalizeZero=0.5,clamp=1,clampMin=0.5,clampMax=1,invert=false",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "dpad",
"layout": "Dpad",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 7,
"bit": 0,
"sizeInBits": 4,
"format": "BIT ",
"arraySize": 0,
"usages": [
"Hatswitch"
],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "D-Pad",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "8",
"minValue": "",
"maxValue": ""
},
{
"name": "dpad/up",
"layout": "DiscreteButton",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 4294967295,
"bit": 0,
"sizeInBits": 4,
"format": "BIT ",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "minValue=7,maxValue=1,nullValue=8,wrapAtValue=7",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "dpad/right",
"layout": "DiscreteButton",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 4294967295,
"bit": 0,
"sizeInBits": 4,
"format": "BIT ",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "minValue=1,maxValue=3",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "dpad/down",
"layout": "DiscreteButton",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 4294967295,
"bit": 0,
"sizeInBits": 4,
"format": "BIT ",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "minValue=3,maxValue=5",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "dpad/left",
"layout": "DiscreteButton",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 4294967295,
"bit": 0,
"sizeInBits": 4,
"format": "BIT ",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "minValue=5,maxValue=7",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "buttonWest",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 7,
"bit": 4,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [
"SecondaryAction"
],
"aliases": [
"x",
"square"
],
"parameters": "",
"processors": "",
"displayName": "Square",
"shortDisplayName": "Square",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "buttonSouth",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 7,
"bit": 5,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [
"PrimaryAction",
"Submit"
],
"aliases": [
"a",
"cross"
],
"parameters": "",
"processors": "",
"displayName": "Cross",
"shortDisplayName": "Cross",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "buttonEast",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 7,
"bit": 6,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [
"Back",
"Cancel"
],
"aliases": [
"b",
"circle"
],
"parameters": "",
"processors": "",
"displayName": "Circle",
"shortDisplayName": "Circle",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "buttonNorth",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 7,
"bit": 7,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [
"y",
"triangle"
],
"parameters": "",
"processors": "",
"displayName": "Triangle",
"shortDisplayName": "Triangle",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftShoulder",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 0,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "L1",
"shortDisplayName": "L1",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightShoulder",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 1,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "R1",
"shortDisplayName": "R1",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftTriggerButton",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 2,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightTriggerButton",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 3,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "select",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 4,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "Share",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "start",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 5,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [
"Menu"
],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "Options",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftStickPress",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 6,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "L3",
"shortDisplayName": "L3",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightStickPress",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 8,
"bit": 7,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "R3",
"shortDisplayName": "R3",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "systemButton",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 9,
"bit": 0,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "System",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "touchpadButton",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 9,
"bit": 1,
"sizeInBits": 0,
"format": "",
"arraySize": 0,
"usages": [],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "Touchpad Press",
"shortDisplayName": "",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "leftTrigger",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 10,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [
"SecondaryTrigger"
],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "L2",
"shortDisplayName": "L2",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "rightTrigger",
"layout": "Button",
"variants": "",
"usage": "",
"alias": "",
"useStateFrom": "",
"offset": 11,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE",
"arraySize": 0,
"usages": [
"SecondaryTrigger"
],
"aliases": [],
"parameters": "",
"processors": "",
"displayName": "R2",
"shortDisplayName": "R2",
"noisy": false,
"synthetic": false,
"defaultState": "",
"minValue": "",
"maxValue": ""
},
{
"name": "gyro X 14",
"layout": "Button",
"offset": 16,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE"
},
{
"name": "gyro Y 16",
"layout": "Button",
"offset": 18,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE"
},
{
"name": "gyro Z 18",
"layout": "Button",
"offset": 20,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE"
},
{
"name": "accl X 20",
"layout": "Button",
"offset": 22,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE"
},
{
"name": "accl Y 22",
"layout": "Button",
"offset": 24,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE"
},
{
"name": "accl Z 24",
"layout": "Button",
"offset": 26,
"bit": 4294967295,
"sizeInBits": 0,
"format": "BYTE"
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment