I have the same awful controller. It tries to detect the device that it's connected to and select mode based on that. If the system is running Windows it will switch to Xbox mode.

I'm still not sure how exactly to switch mode, but last I got I working by holding select+analog. But I also found this on a sellers website:
"press the "home" button for 7 seconds, you can freely switch the mode."

Linux actually seams able to use the gamepad in all 3 modes (it also has an Android mode), but the device sometimes won't fully register before switching the mode a couple of times.