Guide - How to set up a Wooting keyboard for the XIM Apex
The XIM Apex is a third-party device, Wooting doesn't offer any support for that device nor can guarantee that it will work with it.
- The XIM Apex should be run on the firmware version 20180501 or higher and its corresponding manager version.
- The Wooting keyboard should be run on firmware version 1.26.1 or higher and its corresponding Wootility version.
What the XIM Apex is and how it works
The XIM Apex is a hardware device that lets you use a DirectInput supported joystick or controller, a mouse, a keyboard or some other common controllers for inputs for a supported list of popular consoles or the PC. The XIM Apex emulates the controller which is plugged-in via a cable in its USB port three. So if an original Xbox One controller is connected via wire to its port three and if the XIM Apex is connected to an Xbox One console, the XIM Apex appeared as an original Xbox One controller to it.
If an original Sony DualShock 4 controller is connected via wire to its port three and if the XIM Apex is connected to a PC, it appeared as a generic PlayStation controller to the system. If a controller is used which is not officially supported as an input device for the supported console, or if the data communication of the controller isn't transferred through the cable, like with an Xbox Play and Charge Kit, there the cable is only used for charging, then the XIM Apex doesn't appear as a controller at all and so it doesn't work as an input device.
The XIM Apex can be used to control the right joystick of the emulated controller, which is typically used to change the view in a game, with a mouse. Because of this, the XIM Apex can be used to use the mouse together with the analog part of the Wooting for games, which don't allow controller inputs side by side with mouse & keyboard inputs, like Assassin's Creed IV: Black Flag.
How to connect a Wooting keyboard to the XIM Apex
The Wooting keyboard can be connected to the port one or two to the XIM Apex, there another device can be connected via the other then free port. The port three is reserved and must be used to connect the native controller for the desired console. Because the Wooting can draw a lot of power with full brightness or active LED effects, it can be that the XIM Apex doesn't provide enough power for it if other peripherals are connected, then an external power supply may be needed for the XIM Apex.
Because of that, it's recommended to reduce the brightness of the LEDs from the Wooting and to disable any LED animation, if the XIM Apex is used without an external power supply, and all connected controllers should be fully charged.
How to set up a Wooting keyboard for analog input
The Wooting keyboard should work like any other keyboard in digital mode with the XIM Apex, but to use the analog capabilities of the keyboard special settings must be applied, otherwise analog controls won't work on the analog profile. The XIM Apex only supports analog profiles which are set to the type "DirectInput" (1), bind controls for the "XInput" type won't work at all.
The XIM Apex should support any analog bindings for the "DirectInput" type except the five simulations controls (Throttle, Elevator, Accelerator, Rudder, and Trigger). To prevent a weird input behavior both parts of a used analog axis should be bound, even if only one part is desired to use.
We recommend to only bind analog controls for the axis which are planned to be used (2) and to unbound every other analog binding for that profile. To compensate the missing controls the "Digital Keys" setting (3) should be enabled for the profile.
Only after all devices are connected to the XIM Apex, it should be plugged into the desired console.
Here is an example of how an analog profile can look like for the XIM Apex, there only the analog keys for walking are used.
Configuration of the game in the XIM Apex profile manager
If the digital keys are enabled together with analog bindings as recommended, it's most likely that some keys have multiple bindings that are interfering with each other. Like if "W, S, A & D" are bound to an analog axis for the Wooting, like in the example, you should unbind these keys in the XIM Apex manager for the used profile, because otherwise these keys are used for walking too, because of the standard settings in the XIM Apex profiles. If you don't unbind these keys for the profile for the XIM Apex, the movement for the digital keys will override the analog movement as soon as they are registered, because the values of these controls are always registered as the maximum analog values.
An alternative method to prevent that the keys can interfere with each other for movement on this example is to set the actuation point for the digital keys for the Wooting to the highest possible point or to unbind the four digital keys with the DKS option, but both methods aren't recommended.
The rest of the settings should be leaved as default, so that the sticks from the Wooting are mapped as the sticks for the XIM controller.
Thanks to Rocky_4 (DEU) on Discord for the solution.