..:: PCSX2 Forums ::..

Full Version: DS4 To XInput Wrapper
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(02-23-2014, 07:07 AM)Jays2Kings Wrote: [ -> ]I'm not sure how many versions back it goes to, but using 1.2.1 RC3, when using the custom mapper to map, what's assigned to Share and Options are switched.

Yeah, you're right. Thanks for the find, already have a fix that will be in next update.
Am I the only one who gets this issue all the time? I normally have to restart my PC to get it working. If I don't select Hide DS4 then it claims to be connected, but doesn't work with games.
Made a large set of changes for the evening:
https://code.google.com/r/brianfundakows...ource/list
* support multiple touchpads simultaneously. previously I am sure it would appear to freak out, because there was only one global touchpad state
* HID queue flushing is an option and enabled by default, as it was in all versions of 1.1
* Arthritis mode/trigger midpoint remapping is there.
* You can choose to enable or disable jitter compensation for the touchpad in real-time.
@InhexSTER & @electrobrains
I would like to ask a question about DS4 To XInput Wrapper:

Does "DS4 To XInput Wrapper" inject any code to Dualshock 4 controller or make any changes on its firmware?
or it just do its job by change "Microsoft Windows"?

i ask this question to know is there any danger on DualShock 4 controller when use your DS4 To XInput Wrapper?
(02-23-2014, 11:19 AM)Web Developer Wrote: [ -> ]@InhexSTER & @electrobrains
I would like to ask a question about DS4 To XInput Wrapper:

Does "DS4 To XInput Wrapper" inject any code to Dualshock 4 controller or make any changes on its firmware?
or it just do its job by change "Microsoft Windows"?

i ask this question to know is there any danger on DualShock 4 controller when use your DS4 To XInput Wrapper?

No danger. Just takes input, makes no changes to DS4, firmware or Windows.
I can't get the controller to work unless I reset my PC. "Cannot control controller 1 for exclusive access" or something. If I don't select Hide DS4 then it claims to be connected, but doesn't work with games. If I do select it, I have to restart the computer
(02-23-2014, 01:16 PM)jfmamjjasond Wrote: [ -> ]I can't get the controller to work unless I reset my PC. "Cannot control controller 1 for exclusive access" or something. If I don't select Hide DS4 then it claims to be connected, but doesn't work with games. If I do select it, I have to restart the computer

If you cannot obtain exclusive access for a controller it is because another program is using it. In most cases this is Steam, but I personally saw it with TeamSpeak. Please start these applications after the DS4 To XInput Wrapper. There is also a setting in both programs which stop them from trying to use the controller.

Also if the Xbox 360 Controller does not appear even though no errors are shown then you likely need to restart the SCP Service in device manager. Disable and enable it by opening it first so that you do not need to restart.

If this solves your problem please note this help has been given before - it gives us more time to add features if we're not answering the same questions.
It's possible to add possibility to show DS4 battery status in a systray icon ?

different possibility with no numeric view/ numeric view...
Hi everyone,

Happy to release RC3 along with all of InhexSTER's changes over the last couple days (including Options/Share and rumble).

This version introduces Touchpad Custom Mapping. Included in this are the standard clicking of the pad, clicking to upper area of the pad, and clicking with two fingers. See below image:

[Image: 2pzl4dh.png]

Another added feature is Scan Code key presses. This is a more hardware friendly way of emulating key strokes and thus it is more compatible with games. Bare in mind that some games look specifically for a physical device and therefore make it very difficult to emulate the keys. Repeat Keys have been added again, which can be used alone or in combination with Scan Code. Touchpad buttons do not support Repeat Keys at the moment.

The way that custom mappings are saved has now been changed, partially in favour of InhexSTER's modifications, but also for more extensibility in future. If there is wide enough demand for there to be backwards compatibility then we can look at that, but for now please delete / rename your old Custom Mapping setting XML files.

Please let me know if you encounter issues Smile
(02-23-2014, 05:40 PM)HecticSeptic Wrote: [ -> ]Hi everyone,

Happy to release RC3 along with all of InhexSTER's changes over the last couple days (including Options/Share and rumble).

This version introduces Touchpad Custom Mapping. Included in this are the standard clicking of the pad, clicking to upper area of the pad, and clicking with two fingers. See below image:

[Image: 2pzl4dh.png]

Another added feature is Scan Code key presses. This is a more hardware friendly way of emulating key strokes and thus it is more compatible with games. Bare in mind that some games look specifically for a physical device and therefore make it very difficult to emulate the keys. Repeat Keys have been added again, which can be used alone or in combination with Scan Code. Touchpad buttons do not support Repeat Keys at the moment.

The way that custom mappings are saved has now been changed, partially in favour of InhexSTER's modifications, but also for more extensibility in future. If there is wide enough demand for there to be backwards compatibility then we can look at that, but for now please delete / rename your old Custom Mapping setting XML files.

Please let me know if you encounter issues Smile

Great news -- I've gotten all of the most interesting features from my development branches integrated, and here is a build based upon the RC3, but with some significant changes:
* Jitter compensation has been drastically improved and the touchpad does not tend to "eat" input like before. It's much easier to move the mouse cursor and tap to click.
* Light bar battery indication is gradual and can show you the entire range of 10%->100%.
* Arthritis mode is in. You can remap the midpoint of your L2 and R2 triggers.
* Multiple controllers should work simultaneously as touchpads.
* HID queue flushing is optional per-controller.

Other than these changes, functionality should be identical.

My To Do for 1.2/1.3:
* Improve two-finger scrolling. Use cumulative mid-point location changes to determine scroll amount, rather than just the Y-delta of the left/first finger. If we scroll toward pure left or pure right, ignore it, otherwise go with whichever X direction the mid-point is pulling toward. Use the distance between both fingers as a scroll distance coefficient so you can move your fingers apart to scroll far or move your fingers closer together to scroll in fine increments.
* Jitter removal via sixaxis sensors. This will replace existing jitter removal for a large part, not augment it. Even before working on this, though, I can do better jitter removal for pushes on the touchpad by applying reduction coefficients to the critical push event similarly to the dejitter performed at the start of a tap gesture.
* Customization of every hard-coded variable (several in the touchpad related to distance, permit defining your exact on/off periods for each battery state from 10% to 100%.)
* Nine different virtual button areas on the touchpad, N/NW/Center/etc only activated on touchpad PUSH. If we drag around, then upon push, only the center button (what is currently left click) will now happen.
* Global configuration snapshots used by the touchpad, custom mappers, etc. There's just no reason to keep reinterpreting configuration data that hasn't changed. This should reduce any latency in the custom mapping path.
* Synthetic rumble events to indicate state changes.
* Touchpad mode switching.
* Controller switch-off via either L1+R1+PS button combination or via resting it on an "off" position (i.e. on the table shoulder down, or face down.)

For 1.3 only:
* Optional dead-zone fix-ups. X360 controller and DS4 have very different behaviors here.
* Try and expose audio.
* Rumble translation into light bar flashes for accessibility (not everyone can feel rumbles in their hands, or feel anything in their hands, despite being able to use a controller effectively.)
* Derive accurate gyrometer and moment of inertia values from the sixaxis sensors and expose these in a basic way. This is tricky for technical reasons because physics.
* Prototype some game-specific modality, i.e. motion controls mapped to thumbpad for sailing in Assassin's Creed 4: Black Flag.
* Associate settings with controllers by MAC address, not by device number.
* Stop stealing Xinput device 0 when an XBox 360 controller is already connected and using it. We can easily avoid renumbering just by querying the API for what controller(s) are active.