Connected Devices Integration

Overview

Many connected devices, such as gaming consoles and smart TVs, provide limited web browsing capabilities via WebView. Arkose Bot Manager works well on many of those devices. However, due to their variability and the large number of different devices, we cannot provide a list of those confirmed to be compatible with Arkose Bot Manager. Please check with your CSM (Customer Success Manager) if you have questions or specific requirements.

The rest of this page covers how GamePad API is supported within Arkose Product.

GamePad API Support

Many connected devices — including gaming consoles, Windows handheld PCs, and devices using accessibility controllers — require users to interact with web content using a gamepad rather than a mouse, keyboard, or touchscreen.

What is the Gamepad API

The Gamepad API is a W3C web standard that allows browsers to detect connected game controllers and read their input state (button presses, analog stick position). It is supported by all major modern browsers, including Chrome, Edge, Firefox, and Safari.

The API replaces older, platform-specific approaches — such as Microsoft's deprecated navigator.gamepadInputEmulation — with a single, broadly compatible standard that works across operating systems and device types.

For more information, see the MDN Gamepad API documentation.

How Does Arkose Support Gamepad Input?

When the browser fires a gamepadconnected event, the EC automatically enters Gamepad Mode. In this mode:

  • A focus ring is displayed on the currently focused element, providing a clear visual indicator since a mouse cursor may not be present.
  • D-pad moves focus between interactive elements (tiles, answer options, buttons).
  • The primary button (A / Cross) selects the focused element, equivalent to a mouse click.
  • Audio challenges present a numeric stepper input in Gamepad Mode, allowing users to increment or decrement the answer using the D-pad rather than typing on a keyboard.

When all controllers are disconnected, Gamepad Mode deactivates and the EC returns to standard input handling.

ActionController InputButton Index
Select / ConfirmA (Xbox) · Cross (PlayStation)0
Navigate (Up / Down / Left / Right)D-pad or Left Stick12, 13, 14, 15 / Axes

Where Is Gamepad Supported?

Gamepad Mode is supported across the full Enforcement Challenge, including:

  • Visual challenges (Match, Tile)
  • Audio challenges (via numeric stepper input)

It is available in any browser that implements the Gamepad API. Refer to the browser compatibility table for details — in practice, this covers all current versions of Chrome, Edge, Firefox, and Safari across desktop, mobile, and embedded (WebView2) contexts.

Supported Devices

Device CategoryExamples
Game controllersXbox Wireless Controller, PlayStation DualSense / DualShock, Nintendo Switch Pro Controller
Windows handheld PCsASUS ROG Ally, Lenovo Legion Go, Steam Deck (desktop mode)
Accessibility controllersXbox Adaptive Controller, and other adaptive or assistive input devices that report standard gamepad mappings
Third-party and generic controllersAny USB or Bluetooth gamepad recognized by the browser

Note: The Gamepad API relies on the browser and operating system to recognise the controller. If a controller is detected by the browser via navigator.getGamepads(), it will work with the EC.

What Do Customers Need to Do?

Nothing. Gamepad API support is enabled automatically for all customers. There is no configuration, no client-side API call, and no integration change required.

When a user connects a gamepad to a device running your application, the EC will detect it and enter Gamepad Mode without any additional setup.

Migrating from enableDirectionalInput()

If you previously integrated with the Xbox-specific enableDirectionalInput() method (documented for UWP WebView), that approach relied on the now-deprecated navigator.gamepadInputEmulation API. The new Gamepad API support replaces this entirely.

  • You may remove any calls to arkoseEnforcement.enableDirectionalInput() and any associated Xbox-detection logic from your integration code.
  • Gamepad input will be handled automatically regardless of platform.

Further Help

If you need more help with Xbox controller functionality, contact your CSM.