So i have spent the day importing a number of exclusive OG Xbox titles into LB, i had to collect 90% of the videos manually and slightly tweak the unofficial xbox module for RL to make the bezel work correctly. But all done now and pretty happy with how it came out.
Yup I can share the module, you can also use reshade for inserting bezels as well if you struggle with RL because I know it can be a fickle beast. Altho I have never tried using Reshade for bezels, it was just suggested to me the other day.
- do you use the launchbox startup screen ? Because it seems to doesn't work with the RL bezels. I want to keep my launchbox startup screen, so if it's not possible, I will try with reshade. I use RL for the fade in because of the LB fade compatibility issue with RL. If you already have RL set up just use there fade setup. i can supply files if needed.
Ok I succeed to make it working with reshade. I found a CRT easymode shader adapted from retroarch, and a crt geom mod shader which put a bezel (but I remove the scanline of crt geom because I prefer the easymode) and which can resize the xemu windows. I had to adapt a little the bezel png though.
Hello. I use DualShock 4 and it works badly, in every game the system is emulating XBOX controller, even if the game supports DualShock4 (I check it on Windows). It is not convenient when you played for 4 years on DualShock and you need to re-learn the location of the buttons. And also some buttons stopped working correctly or do not work at all.
It is strange, but Steam Big Picture recognizes it as DualShock, but even there is no PS icons: square, triangle, circle and cross. Instead of them just a black spot.
How can I do so that the system and games do not emulate xbox, and normally perceived DualShock?
You are experiencing this because of Steam's controller settings. You can easily toggle off the support if you don't want it to be wrapped in Steam's "Steam input" that outputs as an xbox-style controller. HOWEVER, If you are just worried about GUI buttons icons.. sorry but even if you change it, most games don't have PS4 button UI options. Just going to be upfront about that.
If you want to shut off "steam input" for everything ( although I do not recommended this because some games lack native ps4 controller support), the option is in (Steam) Settings > Controller > General Controller Settings > then uncheck the box for ps4 controllers.
Also, I have already stated what you were experiencing was Steam Input. All this information is already easily searchable via the arch wiki and steam forums.
From Gamepad - ArchWiki "PlayStation 3/4 controller
For example Witcher 3 (from Steam), Detroid become human, death stranding and other games worked on windows 10 with normal PS icons and button bindings. It is very strange that they all work as on xbox, from this I conclude that the system forcibly emulates xbox.
Now, if your games from steam are having issues displaying PS icons that they normally should be doing just fine; then the game most likely has native playstation controller support. Turn off the Steam Input per that game as I have listed above and it should work fine. Other games have Playstation button icon display in the game options (though rarely).
If somehow none of this works but it should be showing PS buttons as the game does support displaying it, try and see if force running the game with Proton-GE support fixes it as regular Proton sometimes has issues with devices. Toggling between Proton or Proton-GE per game is good practice in general as it can be a better gamepad experience with one Proton over the other depending on the game.
Detroit Become Human should show PS icons if the gamepad is plugged in (not wireless) to a USB and Steam Input per that game is shut off ( source: PS4 controller :: Detroit: Become Human General Discussions )
Witcher 3 can have issues displaying PS icons. Yet again the controller has to be wired via USB for it to work right (and have steam input off yet again per game of course). If there is an issue still with it, a work around was posted a few years ago here on post #9 might help: PS4 Controller Button Prompts in Witcher 3 :: The Witcher 3: Wild Hunt General Discussions
Hi. I solved the problem. Before that, I ran games through steam and lutris, today I tried to launch games through PortProton and everything works fine, the games understand that this is Dualshok and the buttons work fine, thanks for the help.
Note that the Arduino Uno, Nano, and Mega are missing from this list. Those three boards do not have native USB support and will not work for this. You will need to buy another microcontroller. Sorry Charlie ?
You need to download the one(s) required for your microcontroller and install them. Specific installation instructions are provided in each repo. Make sure you have the latest version of the Arduino IDE to avoid any issues.
Hi, is it possible to use 4 pots (two for x axis and two for y axis) instead of just 2 (one for x axis and one for y axis)? I was messing around with another xinput library (MSF-XINPUT) and I have exhausted all possibilities without a positive result so I thought that maybe your library will be more flexible. I need every direction (left, right, up, down) to hove its own potentiometer.
Sorry for bothering you but your library is much more complicated (although I think meticulous would be a better word) and I am struggling a bit with it. I guess this is the first part I need to modifie?
Can you help me by adding the necessary lines of code in the second part? Normally I would not ask for such a thing but it would take a minute to type these few lines of code for you and hours of trial and error for me.
How difficult would it be to modify this to work with Adafruit Feather Bluefruit LE 32u4? I actually got most of the inputs to work by loading my board with your Circuit Playground with Xinput firmware. But I need to access my Feather BT,
XInput is a closed standard, which is why I had to reverse engineer the descriptors myself and why the project is strictly for hobbyists and non-commercial projects. The way this works is by telling the PC that the Arduino/Teensy is a genuine Microsoft-branded Xbox 360 controller. The PC then loads the official Microsoft driver for Xbox controllers and everything works smoothly. When you add additional descriptors onto the end, the PC no longer recognizes the controller as the official Xbox controller and everything stops.
As seen in all examples, there is never a use of attachInterrupts, instead always a use of digitalRead funktions. I wanted to make a steeringwheel with FFB and this looked like the best library. To get the steeringwheel angle I wanted to use a rotary encoder but here I need to use Interrupts. On a classic way I cant get the Interruptfunktions to be called, like it would be on a normal Joystick library. I#m using a Arduino Leonardo. Do you have any ideas for me?
You need to find the motors you want to use, then pass the XInput data using the XInput.getRumbleLeft(); or XInput.getRumbleRight(); functions. How to drive a motor with an Arduino is well beyond the scope of this tutorial, though.
So would it be possible to utilize parts of this control just one of the buttons on the controller itself rather than it be a complete emulator? I am trying to reconfigure one of my controllers where the controller feeds to the xbox the user input that is actually coming from a code being run on the arduino.
Given that iOS 13 now supports Bluetooth controllers (or at least, certain ones, namely the PS4 controller and newer Xbox One controllers), would the XInput library be useful in making a controller emulator that works over Bluetooth instead of USB? For example, would it be possible to swap out the USB layer for Bluetooth?
This is great. I have used a $3 Pro Micro from China to replace the zero-delay USB controller in my self-built arcade stick.
This has brought several improvements.
Firstly it now works with games that only support XInput.
Secondly, I have coded one of the buttons to enable/disable rapid fire, selectable from 8 different speeds via the joystick. Any fire button/trigger, can have any of the 8 speeds configured independently.
Thirdly, I can switch the joystick to emulate the left analog stick if required.
Hi there David! Great work on this library, it worked flawlessly on my Windows 10 machine. I am trying to make a controller with your library that works on an Android phone. I have seen some comments that some Android phones are not supported, mine may unfortunately be one of them.
hello i sucessfull installed the code in a pro micro works but i trying to figure out the response time if there are some input lag and if it can be be lowered in some form. im playing a fight game and i suspect that there are a little time between push the button and the action but there are no traces in code of that. (and dont know if its the arduino or something more in the pc)
thanks for the tutorial and the time to make it
Please let me know if you have any ideas about what might be causing this. I have a good amount of practice debugging electronics, but this is defeating me at the moment. All I really want is some way to get analog steering and gas pedal for Rocket League. If it has to be all discrete, then so be it.
Hi Dave, thank you and thank you so much for the reply. I did not know about the Teensy LC and the Teensy 3.2 having two I2C. I hope the 3.2 will be powerful enough to run the code and sensors as smoothly as on the 4.0. I will try. Thank you!
Wanted to clarify that I have used this method based on a mini router and virtualhere, to make wireless your xinput gamepad based on the Arduino leonardo. The previous locomotion system I have used, was based on just one i2c channel on an arduino mega mounting a digipot shield. The digipot shield on the arduino mega was replacing the joystick of the arduino leonardo. The arduino leonardo was connected via usb to the minirouter and the minirouter was wireless connected to my pc internet home network
b37509886e