[SOLVED] XB1 Elite Controller on PS4 - Share when shaked

Titan Two general support. Questions, firmware update, feature request.

Re: [HELP] XB1 Elite Controller on PS4 - Share/Record with s

Postby yasirs » Fri Feb 23, 2018 8:51 pm

yasirs wrote:
bonefisher wrote:If you use that one don't need input translator.... :smile0517: I have that in library as a header also~!


Great job bonefisher, but could you please explain why does PS4 start record/share when PS4 controller detect motion while I’m playing using XB1 Elite Controller?

Update: I used your script "DESTINY 2 MODzPACK" without any additional code or input translator and when I press Top right paddle it bring share/record in PS4. I think the issue is still there. :ashamed:


Got confirmed fix :smile0202: I used your script "DESTINY 2 MODzPACK" including + injecting with your "Crossover (XB1 Controller and Elite Controller on PS4)" in the thread mentioned previously. :joia:

But still needs explanation for the situation. :smile0517: :smile0208:
User avatar
yasirs
Sergeant First Class
Sergeant First Class
 
Posts: 25
Joined: Fri Dec 15, 2017 11:13 pm

Re: [HELP] XB1 Elite Controller on PS4 - Share/Record with s

Postby bonefisher » Fri Feb 23, 2018 9:10 pm

Code: Select all
 
/*---------- Crossover (XB1 Controller and Elite Controller on PS4) --------- */
/* ------------------------- Runtime Operations: ----------------------------
                       Tap view button to get share.
                 Double tap view button to get touch click.
                      Tap menu button to get options.
 ---------------------------------------------------------------------------- */

uint8 statusIn,  protocolIn,  deviceIn;
uint8 statusOut, protocolOut, deviceOut;
bool double_tap;
 
main {
    statusIn  = port_status(PORT_USB_A, &protocolIn,  &deviceIn);
    statusOut = port_status(PORT_USB_C, &protocolOut, &deviceOut);
 
    if(protocolIn == PROTOCOL_XB1 || protocolIn == PROTOCOL_XB1_WRC
    && protocolOut == PROTOCOL_PS4) {
    inhibit(BUTTON_2, 140);
    if(event_active(BUTTON_2) && time_release(BUTTON_2) < 140) {
        double_tap = 1;
    }else if(event_release(BUTTON_2)) {
        double_tap = 0;
    }
    if(get_val(BUTTON_2)) {
        set_val(BUTTON_2, 0.0);
        set_val(BUTTON_18, 100.0);
    }
    if(double_tap == 1) {
        set_val(BUTTON_18, 0.0);
        set_val(BUTTON_2, 100.0);
    }
//Ignore Xbox Elite paddle buttons since they pass in the buttons programmed in the xbox accessory app.
    if(get_actual(BUTTON_18)) {
        set_val(BUTTON_18, 0.0);
    }
    if(get_actual(BUTTON_19)) {
        set_val(BUTTON_19, 0.0);
    }
    if (get_actual(BUTTON_20)) {
        set_val(BUTTON_20, 0.0);
    }
    if (get_actual(BUTTON_21)) {
        set_val(BUTTON_21, 0.0);
    }
    }
}
 

Here if you don't need swipe pad which I never use. You don't need to use any translator with this.
bonefisher
Lieutenant General
Lieutenant General
 
Posts: 5413
Joined: Thu Jan 29, 2015 10:49 am

Re: [HELP] XB1 Elite Controller on PS4 - Share/Record with s

Postby yasirs » Sat Feb 24, 2018 10:52 am

bonefisher wrote:
Code: Select all
 
/*---------- Crossover (XB1 Controller and Elite Controller on PS4) --------- */
/* ------------------------- Runtime Operations: ----------------------------
                       Tap view button to get share.
                 Double tap view button to get touch click.
                      Tap menu button to get options.
 ---------------------------------------------------------------------------- */

uint8 statusIn,  protocolIn,  deviceIn;
uint8 statusOut, protocolOut, deviceOut;
bool double_tap;
 
main {
    statusIn  = port_status(PORT_USB_A, &protocolIn,  &deviceIn);
    statusOut = port_status(PORT_USB_C, &protocolOut, &deviceOut);
 
    if(protocolIn == PROTOCOL_XB1 || protocolIn == PROTOCOL_XB1_WRC
    && protocolOut == PROTOCOL_PS4) {
    inhibit(BUTTON_2, 140);
    if(event_active(BUTTON_2) && time_release(BUTTON_2) < 140) {
        double_tap = 1;
    }else if(event_release(BUTTON_2)) {
        double_tap = 0;
    }
    if(get_val(BUTTON_2)) {
        set_val(BUTTON_2, 0.0);
        set_val(BUTTON_18, 100.0);
    }
    if(double_tap == 1) {
        set_val(BUTTON_18, 0.0);
        set_val(BUTTON_2, 100.0);
    }
//Ignore Xbox Elite paddle buttons since they pass in the buttons programmed in the xbox accessory app.
    if(get_actual(BUTTON_18)) {
        set_val(BUTTON_18, 0.0);
    }
    if(get_actual(BUTTON_19)) {
        set_val(BUTTON_19, 0.0);
    }
    if (get_actual(BUTTON_20)) {
        set_val(BUTTON_20, 0.0);
    }
    if (get_actual(BUTTON_21)) {
        set_val(BUTTON_21, 0.0);
    }
    }
}
 

Here if you don't need swipe pad which I never use. You don't need to use any translator with this.


You made my life easy, I love you. :smile0202:
User avatar
yasirs
Sergeant First Class
Sergeant First Class
 
Posts: 25
Joined: Fri Dec 15, 2017 11:13 pm

Re: [HELP] XB1 Elite Controller on PS4 - Share/Record with s

Postby yasirs » Sat Feb 24, 2018 10:13 pm

I keep do some tests however I came to know (and correct me if I'm wrong) the function port_status is for getting the controller type only (using USB-A and USB-B) and cannot figure out what is the connected console as I do have XB1 and PS4 and when I switch using "Crossover (XB1 Controller and Elite Controller on PS4)" it always give true for the if condition:
Code: Select all
if(protocolIn == PROTOCOL_XB1 || protocolIn == PROTOCOL_XB1_WRC
    && protocolOut == PROTOCOL_PS4)


But I tried to activate that script based on attached controller (e.g. XB1 -> USB-A & PS4 -> USB-B) using the following if condition:
Code: Select all
if(protocolIn1 == PROTOCOL_XB1 && protocolIn2 == PROTOCOL_PS4)
 


And it worked perfectly :smile0517: . but still I want to make it work based on connected console and not controller like what I did. what do you think the solution? :whistling:
User avatar
yasirs
Sergeant First Class
Sergeant First Class
 
Posts: 25
Joined: Fri Dec 15, 2017 11:13 pm

Re: [HELP] XB1 Elite Controller on PS4 - Share/Record with s

Postby yasirs » Sun Feb 25, 2018 4:12 pm

yasirs wrote:I keep do some tests however I came to know (and correct me if I'm wrong) the function port_status is for getting the controller type only (using USB-A and USB-B) and cannot figure out what is the connected console as I do have XB1 and PS4 and when I switch using "Crossover (XB1 Controller and Elite Controller on PS4)" it always give true for the if condition:
Code: Select all
if(protocolIn == PROTOCOL_XB1 || protocolIn == PROTOCOL_XB1_WRC
    && protocolOut == PROTOCOL_PS4)


But I tried to activate that script based on attached controller (e.g. XB1 -> USB-A & PS4 -> USB-B) using the following if condition:
Code: Select all
if(protocolIn1 == PROTOCOL_XB1 && protocolIn2 == PROTOCOL_PS4)
 


And it worked perfectly :smile0517: . but still I want to make it work based on connected console and not controller like what I did. what do you think the solution? :whistling:



I can confirm all issues are solved now :smile0202: :smile0203:

If you are like me and you switch sometime between XB1 and PS4, and to make this work perfectly as it should you have to edit this:
Code: Select all
if(protocolIn == PROTOCOL_XB1 || protocolIn == PROTOCOL_XB1_WRC
    && protocolOut == PROTOCOL_PS4)


To this:
Code: Select all
if((protocolIn == PROTOCOL_XB1 || protocolIn == PROTOCOL_XB1_WRC)
    && protocolOut == PROTOCOL_PS4)


Good work guys keep it up :smile0517:
User avatar
yasirs
Sergeant First Class
Sergeant First Class
 
Posts: 25
Joined: Fri Dec 15, 2017 11:13 pm

Re: [HELP] XB1 Elite Controller on PS4 - Share/Record with s

Postby bonefisher » Sun Feb 25, 2018 4:39 pm

:smile0517:
bonefisher
Lieutenant General
Lieutenant General
 
Posts: 5413
Joined: Thu Jan 29, 2015 10:49 am

Previous

Return to Titan Two Device

Who is online

Users browsing this forum: No registered users and 113 guests