Page 1 of 1

DS4 Touchpad Coordinate Press

Posted: Mon Jul 06, 2020 3:38 am
by Nickle
Hi there,

I'm exploring different methods of interfacing with the DS4 touchpad when I came across GIMX.

What I am trying to accomplish is pressing specific regions of the touchpad. For example:

Code: Select all

|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|                                                             |
|                                                             |
|                                                             |
|A           B           C           D           E           F|
|                                                             |
|                                                             |
|                                                             |
|                                                             |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
It is important that ONLY region B is pressed when required. Not region A, and then region B.

I know that the corners are easily done, but is it possible to tap in the middle such as this?

Even other options like this would be acceptable

Code: Select all

|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|                                                             |
|                                                             |
|                                                             |
|                                                             |
|                                                             |
|                                                             |
|                                                             |
|A           B           C           D           E           F|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Is this functionality that GIMX has? If so, how would I go about this?

Cheers!
~Nickle

Re: DS4 Touchpad Coordinate Press

Posted: Mon Jul 06, 2020 4:54 am
by LoneWolf81
Hi

Dont know if this will be of any help as I have myself not experimented with the touch-pad. The PS4_KillZoneShadowFall.xml config has a profile that you activate with f and then you move the mouse in the desired direction.

But from what you are explaining and if I understand correctly you want to activate a touch on a specific coordinate and not emulate a swipe ? I know that macros are supported on axis inputs but not 100% sure it will work on the touch-pad axis

I have reached out to the other members for input on this matter so we can assist you.

Re: DS4 Touchpad Coordinate Press

Posted: Mon Jul 06, 2020 6:01 am
by Nickle
Thank you for the prompt response!

You are correct - I want the touch to only activate at a specific coordinate when tapped. That being said, if I could accurately swipe over the tiny required portion of the touchpad, while ignoring the other parts, that could work as opposed to just using a single tap.

Re: DS4 Touchpad Coordinate Press

Posted: Mon Jul 06, 2020 5:39 pm
by Matlo
Please provide the log file requested in forum rules so that we can better understand your use case and your setup: viewtopic.php?f=5&t=691

Re: DS4 Touchpad Coordinate Press

Posted: Tue Jul 07, 2020 4:07 am
by Nickle
For clarification: I do not yet own a GIMX adapter and can't provide the log file. I am trying to determine if this functionality is possible with GIMX. If so, I will absolutely buy an adapter. I know I need one that functions with the PS4 and can have its bdaddr permanently changed.

Other information that may be applicable
System: PS4
Game: The Last of Us 2
Controller: Dualshock 4

Reading here I know that you can control finger1x+/- and finger2x+/- on the PS4 controller through GIMX. Although it appears the location can only be controlled in a relative way (increase/decrease starting at 0 or your offset), not in an exact way like I would need (i.e. simply inputting the coordinates you want to tap)


Edit: Looking inside 'GIMX/core/connectors/gpp_con.c' I came across this

Code: Select all

    if(axis[ds4a_finger1])
    {
      axis_value = output[id][PS4_TOUCHX] + scale_axis(type, ds4a_finger1_x, axis);
      output[id][PS4_TOUCHX] = clamp(-100, axis_value, 100);

      axis_value = output[id][PS4_TOUCHY] + scale_axis(type, ds4a_finger1_y, axis);
      output[id][PS4_TOUCHY] = clamp(-100, axis_value, 100);
    }
I know there is access to the axis values deep in the code -- but can these axis values be easily changed, to precise values, in the GIMX software itself?

Re: DS4 Touchpad Coordinate Press

Posted: Wed Jul 22, 2020 9:02 am
by Matlo
Moved to discussion section.

This can probably be addressed using macros: https://gimx.fr/wiki/index.php?title=Macros

It is possible to test if it can be done without having an adapter, using the "Stub" output together with "text" messages.