Controlify

Controlify

609k Downloads

[Bug] Failed to fetch controller type for Xbox One Controller

ItsMCB opened this issue ยท 0 comments

commented

Current Behaviour

When I connect my Xbox One controller to my computer via Bluetooth, the mod is able to detect it as "Xbox Wireless Controller" and allow me to access the setting and run the automatic deadzone calibration. However, none of the controls actually work. Upon reading the log, it seems that it fail to find the mappings.

Xbox controllers are a bit strange. I remember having it work out of the box on Midnight Controls. After I applied a firmware update to the controller via my Xbox One, the controls became incorrect. I had to use SDL2 Gamepad Tool and the custom mapping input of the mod to fix it. Today, if I use Midnight Controls with 1.19, it works fine with the custom mappings.

Expected Behaviour

The controller will be detected correctly and and allow me to play with the controller without error.

Screenshots

No response

Reproduction Steps

  1. Download the mod
  2. Launch Minecraft instance
  3. Connect Xbox One controller to your computer via Bluetooth
  4. After seeing a controller detected toast message, select "Mod Menu" (another mod) and click "configure..." on Controlify
  5. Check the game log to see the error

Logs

[22:19:37] [Render thread/WARN]: No controller found via USB hardware scan! Using SDL if available.
[22:19:37] [Render thread/ERROR]: Failed to fetch controller type!
java.lang.UnsatisfiedLinkError: 'int org.libsdl.SDL.SDL_JoystickGetDeviceVendor(int)'
	at org.libsdl.SDL.SDL_JoystickGetDeviceVendor(Native Method) ~[dev_isxander_sdl2-jni-2.28.2-26-57432fdbd3a5c79a.jar:?]
	at dev.isxander.controlify.hid.ControllerHIDService.fetchTypeFromSDL(ControllerHIDService.java:158) ~[Controlify-1.5.1+1.20.jar:?]
	at dev.isxander.controlify.hid.ControllerHIDService.fetchType0(ControllerHIDService.java:101) ~[Controlify-1.5.1+1.20.jar:?]
	at dev.isxander.controlify.hid.ControllerHIDService.fetchType(ControllerHIDService.java:60) ~[Controlify-1.5.1+1.20.jar:?]
	at dev.isxander.controlify.Controlify.onControllerHotplugged(Controlify.java:390) ~[Controlify-1.5.1+1.20.jar:?]
	at dev.isxander.controlify.Controlify.lambda$initializeControlify$2(Controlify.java:122) ~[Controlify-1.5.1+1.20.jar:?]
	at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) ~[?:?]
	at java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:887) ~[?:?]
	at java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2325) ~[?:?]
	at dev.isxander.controlify.Controlify.lambda$initializeControlify$3(Controlify.java:120) ~[Controlify-1.5.1+1.20.jar:?]
	at org.lwjgl.glfw.GLFWJoystickCallbackI.callback(GLFWJoystickCallbackI.java:43) ~[lwjgl-glfw-3.3.1.jar:?]
	at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.1.jar:?]
	at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403) ~[lwjgl-glfw-3.3.1.jar:?]
	at com.mojang.blaze3d.systems.RenderSystem.pollEvents(RenderSystem.java:201) ~[client-intermediary.jar:?]
	at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:212) ~[client-intermediary.jar:?]
	at net.minecraft.class_1041.method_15998(class_1041.java:288) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1523(class_310.java:1241) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1514(class_310.java:802) ~[client-intermediary.jar:?]
	at net.minecraft.client.main.Main.main(Main.java:250) ~[minecraft-1.20.1-client.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.22.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.22.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.22.jar:?]
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71) ~[NewLaunch.jar:?]
[22:19:37] [Render thread/WARN]: No joystick mapping found for controller: 'unknown'
[22:19:37] [Render thread/INFO]: Controller connected: Xbox Wireless Controller
[22:19:37] [Render thread/INFO]: Saving Controlify config...
[22:19:48] [Render thread/INFO]: Generating YACL screen
[22:19:48] [Render thread/INFO]: OpenGL debug message: id=2, source=API, type=ERROR, severity=HIGH, message='GL_INVALID_OPERATION in glTexSubImage2D(invalid texture level 0)'
[22:19:48] [Render thread/INFO]: OpenGL debug message: id=2, source=API, type=ERROR, severity=HIGH, message='GL_INVALID_OPERATION in glTexSubImage2D(invalid texture level 0)'
[22:20:18] [Render thread/INFO]: Saving Controlify config...

Mod Version

1.5.1+1.20

Controller

Xbox One Controller

Bluetooth

  • Yes

Operating System

Linux/SteamOS

ARM

  • Yes

Additional Information

I am using Pop!_OS 22.04

Just to make sure...

  • I have made sure I am using the latest version of Controlify for the latest version of Minecraft.
  • I have made sure there are no other issues describing the same problem on the issue tracker.