Use a button, trigger, D-Pad, or thumbstick.
The controller manager converts each supported action into a named function and value.
- Examples
- Button press, axis position, rotation step, or drive speed
- Transport
- Apple Game Controller framework
DeviceJockey Guide
Control buttons, sliders, and rotary items with the physical controls of a connected game controller.
How it works
DeviceJockey translates supported controller functions into Local Interface paths. An item event listens to the selected path and maps the received value to a light, slider, rotary control, label, or another supported item property.
The controller manager converts each supported action into a named function and value.
The selected controller function provides a Local path and suitable default values.
Controller functions are selected inside events from the Local Interface.
Connect the controller
Use the controller’s pairing procedure so the Apple device can discover it.
Select the controller in the Bluetooth settings of the iPhone or iPad.
Open Settings, then Developer Extras, and confirm that a controller was found.
Press a button or move a thumbstick. The most recently detected function appears in the controller field.

Item setup
For example, add Range to a button light or slider, Increment to a slider or rotary item, or Drive to a slider.
Game controller input is provided through the Local Interface.
Select the game controller icon beside the Path field.
Press a button or move a thumbstick to filter the list to related functions.
DeviceJockey fills the path, value type, and suitable default values for that function.

Move the right thumbstick while the list is open to show the functions associated with that thumbstick.
Function families
Returns 1 while a button or D-Pad direction is pressed and 0 when released. It is suited to taps, toggles, and item lights.
Provides a separate function for holding a button, shoulder control, trigger, or D-Pad direction.
Maps a thumbstick or D-Pad axis from -2048 through 0 to 2048 for direct slider or rotary control.
Reads the continuous value of supported buttons, shoulder controls, and triggers from 0 to 4096.
Turns a circular thumbstick movement into relative steps of -1 and 1 for an Increment event.
Uses a centered thumbstick value from -100 through 0 to 100 as direction and speed for a Drive event.
Uses a trigger value from 0 to 100 as a one-directional drive speed.
Provides connection state, vendor name, battery level, and battery state through Local paths.
Example 1
Add a Range event to its Light on and off action and select the Local Interface.
Press the physical button to filter the list, then choose its Button pressed function.
Light on responds to 1. Light off responds to 0. The value type is Int32.
The item lights while the controller button is held and turns off when it is released.
Example 2
Add a Range event to the slider action and select a thumbstick axis such as Right Thumbstick yAXIS. The selected function provides the direct range from -2048 at one end to 2048 at the other end.

When the thumbstick returns to its center, a directly controlled slider also returns to the mapped center position.
Example 3
Add an Increment event to a slider or rotary item. Select one of the thumbstick Increment functions. Push the stick fully in the named direction to activate it, then rotate around the outside. Clockwise and counterclockwise movement produces relative steps.

Unlike direct axis control, returning the thumbstick to its center does not return the slider to the center.
Example 4
Add a Drive event to the slider action and select a thumbstick Drive function. The center value 0 stops the slider. Values toward 100 move it in one direction. Values toward -100 move it in the other direction. A larger distance from the center produces faster movement.

Release the thumbstick to stop. The slider remains at the position it has reached.
Controller status
Status functions can be selected like other controller functions and used with a matching Local event.
Returns 1 when a controller is available and 0 when no controller is connected.
Returns the controller name reported by the system.
Returns the current controller battery level when the information is available.
Reports states such as discharging, charging, or full when supported by the controller.
Troubleshooting
Confirm that the controller appears as connected in the Bluetooth or Game Controller settings of the device.
Verify that DeviceJockey reports a connected controller and recognizes the physical control you operate.
The item event must use the Local Interface and the selected /gc/1/ path.
Use Range for direct values, Increment for relative steps, and Drive for direction and speed.
Controller actions are intended to control the active panel in Live Mode.
Available buttons, battery information, and other features depend on the connected controller.