{
  "schemaVersion": 3.0,
  "appVersion": "6.5.1",
  "config": {
    "appName": "BF2042 Gyro",
    "minTimeUnit": 1
  },
  "devices": {
    "hardware": [
      {
        "id": 1,
        "name": "gamepad",
        "mouse": {
          "config": {
            "acceleration": 0
          }
        },
        "default": {
          "sticks": [
            {
              "name": "left",
              "curves": {
                "points": {
                  "horizontal": [
                    {
                      "id": 1,
                      "value": 8195,
                      "travel": 8193
                    },
                    {
                      "id": 2,
                      "value": 13435,
                      "travel": 8200
                    }
                  ],
                  "vertical": [
                    {
                      "id": 1,
                      "value": 8195,
                      "travel": 8193
                    },
                    {
                      "id": 2,
                      "value": 13435,
                      "travel": 8200
                    }
                  ]
                }
              }
            },
            {
              "name": "right",
              "zones": [
                {
                  "name": "low",
                  "x": 1300
                }
              ],
              "curves": {
                "points": {
                  "horizontal": [
                    {
                      "id": 1,
                      "value": 8195,
                      "travel": 8193
                    },
                    {
                      "id": 2,
                      "value": 13435,
                      "travel": 8200
                    }
                  ],
                  "vertical": [
                    {
                      "id": 1,
                      "value": 8195,
                      "travel": 8193
                    },
                    {
                      "id": 2,
                      "value": 13435,
                      "travel": 8200
                    }
                  ]
                }
              },
              "mouse": {
                "sensitivity": 23,
                "sensitivityY": 24
              }
            },
            {
              "name": "gyro",
              "zones": [
                {
                  "name": "low",
                  "x": 40
                },
                {
                  "name": "med",
                  "x": 4846
                },
                {
                  "name": "high",
                  "x": 14269
                }
              ],
              "curves": {
                "points": {
                  "horizontal": [
                    {
                      "id": 1,
                      "value": 8519,
                      "travel": 4990
                    },
                    {
                      "id": 2,
                      "value": 11796,
                      "travel": 11310
                    },
                    {
                      "id": 3,
                      "value": 15073,
                      "travel": 18463
                    },
                    {
                      "id": 4,
                      "value": 21189,
                      "travel": 27278
                    }
                  ],
                  "vertical": [
                    {
                      "id": 1,
                      "value": 8519,
                      "travel": 4990
                    },
                    {
                      "id": 2,
                      "value": 11796,
                      "travel": 11310
                    },
                    {
                      "id": 3,
                      "value": 15073,
                      "travel": 18463
                    },
                    {
                      "id": 4,
                      "value": 21189,
                      "travel": 27278
                    }
                  ]
                }
              },
              "mouse": {
                "sensitivity": 27,
                "sensitivityY": 28,
                "smoothing": 20
              }
            }
          ],
          "touchpads": [
            {
              "id": 1,
              "mode": "digital",
              "zoneClickRequired": true
            },
            {
              "id": 2,
              "mode": "analog",
              "trackballFriction": 50
            }
          ]
        },
        "convertToVirtual": true
      }
    ],
    "virtual": {
      "gamepads": [
        {
          "id": 1,
          "type": "xboxonebt",
          "performance": "high"
        }
      ]
    }
  },
  "masks": [
    {
      "id": 1,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 1,
          "description": "XB, Stadia: A / DS4: Cross / Nintendo: B"
        }
      ]
    },
    {
      "id": 2,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 2,
          "description": "XB, Stadia: B / DS4: Circle / Nintendo: A"
        }
      ]
    },
    {
      "id": 3,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 3,
          "description": "XB, Stadia: X / DS4: Square / Nintendo: Y"
        }
      ]
    },
    {
      "id": 4,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 4,
          "description": "XB, Stadia: Y / DS4: Triangle / Nintendo: X"
        }
      ]
    },
    {
      "id": 5,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 5,
          "description": "XB: LeftShoulder / DS4, Stadia: L1 / Nintendo: L"
        }
      ]
    },
    {
      "id": 6,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 6,
          "description": "XB: RightShoulder / DS4, Stadia: R1 / Nintendo: R"
        }
      ]
    },
    {
      "id": 7,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 7,
          "description": "XB: View / XB360: Back / DS4: Share / Nintendo: Minus / DS3: Select / Stadia: Options / NvidiaShield: Back / SNES: Select"
        }
      ]
    },
    {
      "id": 8,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 8,
          "description": "XB, Stadia: Menu / XB360: Start / DS4: Options / Nintendo: Plus / DS3: Start / NvidiaShield: Start / SNES: Start"
        }
      ]
    },
    {
      "id": 9,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 9,
          "description": "XB, Nintendo: LeftStick / DS4, Stadia: L3"
        }
      ]
    },
    {
      "id": 10,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 10,
          "description": "XB, Nintendo: RightStick / DS4, Stadia: R3"
        }
      ]
    },
    {
      "id": 11,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 14,
          "description": "Button 14 / Flydigi: C / SwitchOnlineN64: A / GameSirG7: Mute / DualSenseEdge: FnL"
        }
      ]
    },
    {
      "id": 12,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 15,
          "description": "Button 15 / Flydigi: Z / SwitchOnlineN64: B / DualSenseEdge: FnR"
        }
      ]
    },
    {
      "id": 13,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 16,
          "description": "Button 16 / Flydigi: M5 / DualSenseEdge: LB"
        }
      ]
    },
    {
      "id": 14,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 17,
          "description": "Button 17 / Flydigi: M6 / DualSenseEdge: RB"
        }
      ]
    },
    {
      "id": 15,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 33,
          "description": "DpadUp"
        }
      ]
    },
    {
      "id": 16,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 34,
          "description": "DpadDown"
        }
      ]
    },
    {
      "id": 17,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 35,
          "description": "DpadLeft"
        }
      ]
    },
    {
      "id": 18,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 36,
          "description": "DpadRight"
        }
      ]
    },
    {
      "id": 19,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 40,
          "description": "LeftStickUp"
        }
      ]
    },
    {
      "id": 20,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 41,
          "description": "LeftStickDown"
        }
      ]
    },
    {
      "id": 21,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 42,
          "description": "LeftStickLeft"
        }
      ]
    },
    {
      "id": 22,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 43,
          "description": "LeftStickRight"
        }
      ]
    },
    {
      "id": 23,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 47,
          "description": "RightStickUp"
        }
      ]
    },
    {
      "id": 24,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 48,
          "description": "RightStickDown"
        }
      ]
    },
    {
      "id": 25,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 49,
          "description": "RightStickLeft"
        }
      ]
    },
    {
      "id": 26,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 50,
          "description": "RightStickRight"
        }
      ]
    },
    {
      "id": 27,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 51,
          "description": "BtnLeftTrigger"
        }
      ]
    },
    {
      "id": 28,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 52,
          "description": "LeftTriggerLowZone"
        }
      ]
    },
    {
      "id": 29,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 53,
          "description": "LeftTriggerMedZone"
        }
      ]
    },
    {
      "id": 30,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 54,
          "description": "LeftTriggerHighZone"
        }
      ]
    },
    {
      "id": 31,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 55,
          "description": "BtnRightTrigger"
        }
      ]
    },
    {
      "id": 32,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 68,
          "description": "Gyroscope up"
        }
      ]
    },
    {
      "id": 33,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 69,
          "description": "Gyroscope down"
        }
      ]
    },
    {
      "id": 34,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 70,
          "description": "Gyroscope left"
        }
      ]
    },
    {
      "id": 35,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 71,
          "description": "Gyroscope right"
        }
      ]
    },
    {
      "id": 36,
      "set": [
        {
          "deviceId": 1,
          "buttonId": 92,
          "description": "Left TrackPad down"
        }
      ]
    }
  ],
  "commands": [
    {
      "id": 1,
      "type": 6,
      "name": "COMMAND_TOGGLE_GYRO_ON_OFF"
    },
    {
      "id": 2,
      "type": 16,
      "name": "COMMAND_TURN_GYRO_OFF"
    },
    {
      "id": 3,
      "type": 15,
      "name": "COMMAND_TURN_GYRO_ON"
    }
  ],
  "mappings": [
    {
      "condition": {
        "mask": {
          "id": 1,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 57,
            "description": "DIK_SPACE"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 2,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 46,
            "description": "DIK_C"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 2,
          "activator": {
            "type": "long",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 44,
            "description": "DIK_Z"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 3,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 19,
            "description": "DIK_R"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 3,
          "activator": {
            "type": "long",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 18,
            "description": "DIK_E"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 4,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 25,
            "description": "DIK_P"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 4,
          "activator": {
            "type": "long",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 20,
            "description": "DIK_T"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 5,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 34,
            "description": "DIK_G"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 6,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 16,
            "description": "DIK_Q"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 7,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 1,
            "description": "DIK_ESCAPE"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 8,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 15,
            "description": "DIK_TAB"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 9,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 42,
            "description": "DIK_LSHIFT"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 10,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 33,
            "description": "DIK_F"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 11,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "gamepad": {
            "id": 1,
            "buttonId": 4,
            "description": "XB, Stadia: Y / DS4: Triangle / Nintendo: X"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 12,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "command": {
            "id": 1
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 13,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 57,
            "description": "DIK_SPACE"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 14,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 46,
            "description": "DIK_C"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 14,
          "activator": {
            "type": "long",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 44,
            "description": "DIK_Z"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 15,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 6,
            "description": "DIK_5"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 16,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 47,
            "description": "DIK_V"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 17,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 4,
            "description": "DIK_3"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 18,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 5,
            "description": "DIK_4"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 19,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 17,
            "description": "DIK_W"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 20,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 31,
            "description": "DIK_S"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 21,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 30,
            "description": "DIK_A"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 22,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 32,
            "description": "DIK_D"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 23,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "down"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 24,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "up"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 25,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "left"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 26,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "right"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 27,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "buttonId": 2
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 28,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "command": {
            "id": 2
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 29,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "command": {
            "id": 2
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 30,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "command": {
            "id": 3
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 31,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "buttonId": 1
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 32,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "down"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 33,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "up"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 34,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "left"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 35,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "mouse": {
            "direction": "right"
          }
        }
      ]
    },
    {
      "condition": {
        "mask": {
          "id": 36,
          "activator": {
            "type": "single",
            "mode": "hold_until_release"
          }
        }
      },
      "macros": [
        {
          "keyboard": {
            "buttonId": 50,
            "description": "DIK_M"
          }
        }
      ]
    }
  ]
}
