Comments (4)
No it does not. Genuine controllers have a hardware security chip on the PCB whose security method has not been (openly) broken. The PC driver does not check for this chip but the console does, which means unauthorized clones like this library won't work with it.
The lack of console compatibility is stated in the README
files for the various boards packages, but I do realize that it wasn't stated anywhere in this repository so I've added a disclaimer to the README
.
from arduinoxinput.
I see, thanks. You just saved me from wasting money buying another Arduino. I already own a few, but none that have the programmable USB functionality... That leaves me only one option (that I know of) that's supposed to work, and that's a ConsoleTuner Titan One, which enables authentication by piggybacking on a real 360 controller and can be controlled from a PC. It's twice as expensive as an Arduino (or more), and needs a wired 360 controller (which I don't have), but at least it should work.
I wonder how 3rd party controllers do it? Do they buy the special sauce from Microsoft to get it to work? What about cheapo chinese controllers, surely they didn't buy security chips off of M$ to make it work. I feel like they've figured out a way around it, and the open source community hasn't caught on yet. But then again, they have the money to pay a team to reverse engineer the controller and figure out what makes it tick -- not so for the open source community, so I can't expect that kind of thing.
from arduinoxinput.
3rd party controllers buy licensing rights from Microsoft for permission to make controllers for the console. I don't know how cheapo Chinese controllers do it, but I'd assume there's some gray market sales of the security chips going on.
Eventually I'd like to enable the library to catch and pass along the authentication requests so you can use a genuine controller to authenticate with the console, but I have no plans for that at the moment.
from arduinoxinput.
There is an easy way to use an Arduino XInput controller with a console. Use a controller converter. Brook and MayFlash make converters in the $20 to $50 range. For example, a Teensy 3.6 running Arduino XInput connected to a MayFlash Magic S Pro connected to a PS4 works for me. There are more expensive converters that can handle all of the major consoles.
Build one Arduino XInput custom controller and use it on all consoles supported by converters.
from arduinoxinput.
Related Issues (20)
- Question: USB serial read and xinput HOT 1
- send data to arduino while emulating HOT 1
- XInput.h not found HOT 3
- bluetooth feature HOT 1
- Raspberry Pi Pico support HOT 3
- BUTTON_LOGO Does Not Result in Any Button Press HOT 2
- esp32 support HOT 1
- Non-debug mode in PlatformIO IDE HOT 2
- A question about Xinput device identification HOT 2
- Not able to get teensy board to have xinput mode Help HOT 1
- error: recipe.preproc.macros pattern is missing HOT 4
- XInput.getRumbleLeft() and XInput.getRumbleRight() byte structure HOT 2
- Is it possible to send additional 'keypresses' or buttons outside of what's provided? HOT 7
- Not issue: I just want to tip my hat. HOT 1
- Is there a way to have two ArduinoXinput devices and have them show up as two Joysticks? HOT 2
- Arduino uno R4 minima support HOT 1
- More than 1 controller like the wireless receiver HOT 1
- is it possible to use a bluetooth module(like hc06)、Pro Micro together with XInput to make gamepad wireless? HOT 1
- Using along with other libraries HOT 1
- Support with other libraries and button matrix HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arduinoxinput.