..:: PCSX2 Forums ::..

Full Version: ScpToolkit (XInput Wrapper aka ScpServer Reloaded)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(11-05-2015, 09:01 PM)ZmeyNet Wrote: [ -> ](LOW PRIORITY)
Looking for a way to turn off/disconnect  gamepadd remotely (save power) or by pressing some magical button in UI .

I found few places one of them in UsbDs3.cs method ParseHidReport 

Code:
// detect Quick Disconnect combo (L1, R1 and PS buttons pressed at the same time)
           if ((buttons & Ds3Button.L1) == Ds3Button.L1
&& (buttons & Ds3Button.R1) == Ds3Button.R1
&& (buttons & Ds3Button.PS) == Ds3Button.PS)           {...
         

Combination L1+R1+PS wont work (PS3 joy). "PS" button block any other.
my suggestion will be  : implementing long PS button press (~5 sec) as trigger:
Code:
private int MAGIC_NUMBER_5 = 5;
 private bool wasPsButtonPressed;
 private DateTime? firstPSButtonPressedTime;
....
public override bool Start(){...
           wasPsButtonPressed = false;
           firstPSButtonPressedTime = null;
           return base.Start();
}
public override void ParseHidReport(byte[] report)
       {...
           bool isPsButtonPressed = (buttons & Ds3Button.PS) == Ds3Button.PS;


           if (isPsButtonPressed && wasPsButtonPressed)
           {
               if (firstPSButtonPressedTime.HasValue)
               {
                   if ((DateTime.Now - firstPSButtonPressedTime.Value).Seconds > MAGIC_NUMBER_5)
                   {
                       trigger = true;
                       report[13] ^= 0x1;
                       wasPsButtonPressed = false;
                       firstPSButtonPressedTime = null;
                   }
               }
               else
               {
                   wasPsButtonPressed = false;
                   firstPSButtonPressedTime = null;
               }
               
           }
           else
           {
               if (isPsButtonPressed && !wasPsButtonPressed)
               {
                   wasPsButtonPressed = true;
                   firstPSButtonPressedTime = DateTime.Now;
               }

               if (wasPsButtonPressed && !isPsButtonPressed)
               {
                   wasPsButtonPressed = false;
                   firstPSButtonPressedTime = null;
               }
           }
...
} //end ParseHidReport

But the existing combo does already work...?!
(11-05-2015, 09:10 PM)Nefarius Wrote: [ -> ]But the existing combo does already work...?!
False alarm Blush
combination work  , just need more time to hold all together
@Nefarius
seems the scptoolkit makes some problems with the monitor standby.

i tested 1 week with controller connected via usb and 1 week without the ds3 connected...
got following result:

connected controller via usb:
monitor standby sometimes doesn't work. If it works, sometimes the monitor get some "wake up" signal and get to sleep again after the seleced minutes.

controller disconnected:
monitor standy works without problems and without "wake up" happenings.

maybe this problem is already known, but would be nice if it could be fixed in some way.

kind regrads and keep going your good work
~skitey
(11-05-2015, 10:30 PM)skite2001 Wrote: [ -> ]@Nefarius
seems the scptoolkit makes some problems with the monitor standby.

i tested 1 week with controller connected via usb and 1 week without the ds3 connected...
got following result:

connected controller via usb:
monitor standby sometimes doesn't work. If it works, sometimes the monitor get some "wake up" signal and get to sleep again after the seleced minutes.

controller disconnected:
monitor standy works without problems and without "wake up" happenings.

maybe this problem is already known, but would be nice if it could be fixed in some way.

kind regrads and keep going your good work
~skitey

This is a known issue that's been reported countless times and sadly isn't fixed yet since I have no clue where to search for Wacko

(11-05-2015, 02:29 PM)Chetyre Wrote: [ -> ]Nefarius, I can't start the service. It crashes immediately. Could you help?

Your problem got fixed in the new release!
Keep up the great work Nefarius Wink.. The last dongle wouldn't work because of a signal block/interference apprently.. I have placed it on a higher usb slot and the issue solved itself (honestly it was way simpler then expected xD).. However right now it is working fine Smile. Just made a donation to your account Wink.
(11-05-2015, 11:00 PM)Nefarius Wrote: [ -> ]This is a known issue that's been reported countless times and sadly isn't fixed yet since I have no clue where to search for Wacko



i will make 2 "powercfg.exe -energy" html files. maybe they could help to find the problem.
Hi, thanks for this, I was going mad with motioninjoy! The only problem I have is that there are two extra 'Xbox 360 Controllers for Windows' in my Device manager that keep bumping my actual 360 controller down to player 4. - When I tried ScpServer the install mentioned phantom devices, could that be it?

Edit: I had to use a command line prompt to show the phantom devices and deleted all 5 of the motioninjoy ones X(. I reinstalled my 360 controller and now all seems to be good. Thanks again for this excellent tool!
@Nefarius

ok, here are the 2 html - logs that "powercfg.exe - energy" tells me about the energy/standby settings:

[attachment=57927]
[attachment=57928]

hope it could help you in some way...
and sorry for the german language Smile
(11-06-2015, 08:57 AM)skite2001 Wrote: [ -> ]@Nefarius

ok, here are the 2 html - logs that "powercfg.exe - energy" tells me about the energy/standby settings:




hope it could help you in some way...
and sorry for the german language Smile

Deutsch ist kein Problem Tongue

I might have found the problem, to everybody having the issue about screensaver/monitor sleep never occurring; I uploaded a Beta release which attempts to fix it. Please keep in mind that I'm currently not at home so I can't test it with controllers. For experimental use only Ninja
(11-05-2015, 11:00 PM)Nefarius Wrote: [ -> ]Your problem got fixed in the new release!

Thanks, Nefarius. Service is now starting normaly.