..:: PCSX2 Forums ::..

Full Version: DS4Windows -- yet another DualShock 4 driver! (No longer under active development)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(05-12-2014, 08:37 PM)Jays2Kings Wrote: [ -> ]Nope, honestly I had no idea that's a thing, I'll be sure to research it because that sounds great. I'll check it out later and hopefully I can implement it.

Yup, assuming your using MS Visual Studio, just set up a FTP on a server somewhere (this will be where the app looks for and downloads updates) then in VS just goto BUILD > Publish xxxxxxxxx... and fill out saying that users install from web. Also since this modifies were the files are stored on users computers it makes adding a startup shortcut harder if you are like me and want this app to start with windows, so it would be a good idea to also create a checkbox next to "Start Minimized" that says "Start with windows" and create a startup keep using something like this:

Code:
// The path to the key where Windows looks for startup applications
RegistryKey rkApp = Registry.CurrentUser.OpenSubKey(
                    @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);

//Path to launch shortcut
string startPath = Environment.GetFolderPath(Environment.SpecialFolder.Programs)
                   + @"\YourPublisher\YourSuite\YourProduct.appref-ms";
(05-12-2014, 07:28 PM)Jays2Kings Wrote: [ -> ]Hey guys I said I'd stop posting new builds since I'm cluttering electobrains's thread, but also being a new developer, at least to windows, I wanted to take jhebbel's advice, and remove the tabs, since as they said there weren't many controls inside of them. So this build's major change is a new Options window.
[Image: 2014-05-12_13-23-43.png]
No functionality has changed from my last build, everything is just in one section now (however you still click on the sticks get a larger view of them).
Minor additions include adding profile changes to the log, when you edit a profile and change the name of it, the old profile is deleted, and fixing a crash where if a button/axis was assigned to mouse movement and was held down during program startup, the program would crash.

I really, REALLY like your version of this program. It's very slick, and the GUI for assigning keyboard keys is fantastic.

I'm having the same problem as I've been having with electrobrains's build, though, but maybe you can fix it: When I start DS4tool up BEFORE wirelessly connecting my controller, the program stays on "Connecting..." until I stop and restart the service when I try to connect the controller. This makes it impossible to just have the program start with Windows, which would allow me to just turn the controller on and off as I see fit. This problem has persisted in every version of every branch ever since InhexSTER's 1.3 RC4; RC3 works perfectly.

I'm on Windows 7, and it seems like nobody with Windows 8 has this problem. Do you know what could be causing it? It's the only thing that's keeping me from upgrading, as right now, I'm still using 1.3 RC3.
(05-13-2014, 10:20 AM)pedrovay2003 Wrote: [ -> ]I really, REALLY like your version of this program. It's very slick, and the GUI for assigning keyboard keys is fantastic.

I'm having the same problem as I've been having with electrobrains's build, though, but maybe you can fix it: When I start DS4tool up BEFORE wirelessly connecting my controller, the program stays on "Connecting..." until I stop and restart the service when I try to connect the controller. This makes it impossible to just have the program start with Windows, which would allow me to just turn the controller on and off as I see fit. This problem has persisted in every version of every branch ever since InhexSTER's 1.3 RC4; RC3 works perfectly.

I'm on Windows 7, and it seems like nobody with Windows 8 has this problem. Do you know what could be causing it? It's the only thing that's keeping me from upgrading, as right now, I'm still using 1.3 RC3.

My program starts with windows, all I have to do is turn on my computer then pick up a controller and press the PS icon and it turns on and connects automatically.

Sounds like your issue is specific to how something is set up your end so give us as much info as possible such as what versions of driver and tool you running, how do you have it set to startup, how is your controller connected during boot (usb?)
(05-12-2014, 07:28 PM)Jays2Kings Wrote: [ -> ]Hey guys I said I'd stop posting new builds since I'm cluttering electobrains's thread, but also being a new developer, at least to windows, I wanted to take jhebbel's advice, and remove the tabs, since as they said there weren't many controls inside of them. So this build's major change is a new Options window.
[Image: 2014-05-12_13-23-43.png]
No functionality has changed from my last build, everything is just in one section now (however you still click on the sticks get a larger view of them).
Minor additions include adding profile changes to the log, when you edit a profile and change the name of it, the old profile is deleted, and fixing a crash where if a button/axis was assigned to mouse movement and was held down during program startup, the program would crash.

Wow v6 is looking great man!
Thanks a lot for keeping developing the DS4Tool!
(05-13-2014, 12:51 PM)jhebbel Wrote: [ -> ]My program starts with windows, all I have to do is turn on my computer then pick up a controller and press the PS icon and it turns on and connects automatically.

Sounds like your issue is specific to how something is set up your end so give us as much info as possible such as what versions of driver and tool you running, how do you have it set to startup, how is your controller connected during boot (usb?)

Okay, here's what I found:

*The SCP driver is 1.0.0.103
*The program is set to start minimized, and it actually starts just fine; it's the wireless connection when I turn the DS4 on that doesn't work properly
*The controller isn't connected to the PC at all during boot
*System is Windows 7 64-bit with an Atheros Bluetooth device built in

In InhexSTER's RC3, everything works, and when I turn the DS4 on, it immediately makes the connection and all my settings are loaded. In every version and branch since, it just stays on "Connecting..." until I stop and restart the service. I've heard Windows 8 doesn't have any issues with this, but I don't have a Windows 8 machine to test it on.
(05-14-2014, 02:19 AM)pedrovay2003 Wrote: [ -> ]Okay, here's what I found:

*The SCP driver is 1.0.0.103
*The program is set to start minimized, and it actually starts just fine; it's the wireless connection when I turn the DS4 on that doesn't work properly
*The controller isn't connected to the PC at all during boot
*System is Windows 7 64-bit with an Atheros Bluetooth device built in

In InhexSTER's RC3, everything works, and when I turn the DS4 on, it immediately makes the connection and all my settings are loaded. In every version and branch since, it just stays on "Connecting..." until I stop and restart the service. I've heard Windows 8 doesn't have any issues with this, but I don't have a Windows 8 machine to test it on.

So only Bluetooth is affected, not USB? I briefly tried an Atheros adapter out in a computer store and couldn't even make the DS4 pair, so that's further than I got there. Recent versions of DS4Windows (not DS4Tool) will output the specific error codes you get if there is a failure writing to the controller, so if you capture console output, I would expect to see some kind of hint as to the problem there.
(05-13-2014, 10:20 AM)pedrovay2003 Wrote: [ -> ]I really, REALLY like your version of this program. It's very slick, and the GUI for assigning keyboard keys is fantastic.

I'm having the same problem as I've been having with electrobrains's build, though, but maybe you can fix it: When I start DS4tool up BEFORE wirelessly connecting my controller, the program stays on "Connecting..." until I stop and restart the service when I try to connect the controller. This makes it impossible to just have the program start with Windows, which would allow me to just turn the controller on and off as I see fit. This problem has persisted in every version of every branch ever since InhexSTER's 1.3 RC4; RC3 works perfectly.

I'm on Windows 7, and it seems like nobody with Windows 8 has this problem. Do you know what could be causing it? It's the only thing that's keeping me from upgrading, as right now, I'm still using 1.3 RC3.
Sadly I have no windows 7 machine test on, just one medialink adapter, one windows 8 machine, and one ds4 (so yeah I don't even know how/if profiles work with multiple controllers yet, I hope it does Tongue). My best guess is that your adapter is being recognized like the toshiba stacks, as InhexSTER said bluetooth with it was weird.

In other news, I actually got auto updates to work. I tried the ClickOnce method, but didn't really like how it tried to install like a regular program, and in a weird spot too. It was hard enough finding where it installed, so importing/exporting profiles would be a pain. On top of that it checks for a version update before the actually program starts, which is a bit annoying. Instead I made my own auto updater. I don't have any servers so I'm just using my dropbox for the tool to check the version, as well as update it when a new version is available. I did some decent testing with this, so it should work out well, and this way the program can remain portable. Of course since this is the first version with this, you can't test the update process yet (well you force update, but I'd rather you didn't kill my dropbox Tongue). Once you download the zip below, the rest will be automated, however I will still post updates in this thread.
(05-14-2014, 06:21 PM)electrobrains Wrote: [ -> ]So only Bluetooth is affected, not USB? I briefly tried an Atheros adapter out in a computer store and couldn't even make the DS4 pair, so that's further than I got there. Recent versions of DS4Windows (not DS4Tool) will output the specific error codes you get if there is a failure writing to the controller, so if you capture console output, I would expect to see some kind of hint as to the problem there.

Yeah, USB works flawlessly; it's just Bluetooth that's wonky, and it wasn't in DS4tool 1.3 RC3. If you remind me how to capture console input, I'll do that, or are you just talking about screencapping the program after trying to wirelessly connect?
Hi guys, been using my DS4 for a couple of weeks now thanks to the great work done here and thought now would be the time to post. To say a big thanks to SCP and electrobrains but also to report my very strange set up.

Basically, I can't get the SCPserver to connect to my controller - the host address is disconnected and all the pads are greyed out. Furthermore, when I try to launch DS4windows, I basically encounter the same problem but with a
"System.NullReferenceException: Object reference not set to an instance of an object.
at ScpServer.ScpForm.ControllerStatusChanged() in c:\Users\Brian\Documents\GitHub\brianfundakowskifeldman-ds4windows\DS4Tool\ScpForm.cs:line 178"

Now, I think i've narrowed the problem down to the SCP driver install. I followed the instructions carefully and did everything I was supposed to in the prescribed order. But whenever I try to install the driver, I get a line that reads

"INFO - Looking for Model Section [SCProductions.NTamd64]...
INFO - No matching devices found in INF "C:\Program Files\PS4 DS4\unzip\ScpServer\bin\System\Ds3WinUsb.inf" on the Machine."

which seems to be the only issue.

Now, the weird thing is, despite neither DS4 windows or the SCP server being able to recognise a controller, the SCP monitor will always pick up my DS4 (BT or USB) and the SCPuser test recognises all the inputs/rumble etc. In fact, I'm able to use it to play all the X360 supported games on steam and all the buttons are correctly mapped. For all intents and purposes the pad works as it is supposed to, it is just never recognised by the SCPserver or DS4 windows. In fact I haven't had any isssues reported by the many users having trouble with their BT and windows 7 (I run win7 home basic), and i can switch my ds4 off/on indefinately and always have the monitor recognise it as it's supposed to.

So why am I bothered? Well, I've been fine using it like this for the last couple of weeks (and am happy to continue doing so) but I would really like the enhanced functionality of DS4 windows, namely touchpad support and abiility to adjust the LED. I'm just wondering if anyone can shed some light on the issue I have, how I've managed to circumvent the need for the server/ds4 tool, and whether I can get a full proper install. I've read a lot through this thread and on the SCP thread, and couldn't find anyone in my position. Either it's really strange, or I have such a basic problem I'm just an idiot and can't figure it out.

Many thanks once again and keep up the good work!
(05-13-2014, 10:20 AM)pedrovay2003 Wrote: [ -> ]I really, REALLY like your version of this program. It's very slick, and the GUI for assigning keyboard keys is fantastic.

I'm having the same problem as I've been having with electrobrains's build, though, but maybe you can fix it: When I start DS4tool up BEFORE wirelessly connecting my controller, the program stays on "Connecting..." until I stop and restart the service when I try to connect the controller. This makes it impossible to just have the program start with Windows, which would allow me to just turn the controller on and off as I see fit. This problem has persisted in every version of every branch ever since InhexSTER's 1.3 RC4; RC3 works perfectly.

I'm on Windows 7, and it seems like nobody with Windows 8 has this problem. Do you know what could be causing it? It's the only thing that's keeping me from upgrading, as right now, I'm still using 1.3 RC3.

(05-14-2014, 02:19 AM)pedrovay2003 Wrote: [ -> ]Okay, here's what I found:

*The SCP driver is 1.0.0.103
*The program is set to start minimized, and it actually starts just fine; it's the wireless connection when I turn the DS4 on that doesn't work properly
*The controller isn't connected to the PC at all during boot
*System is Windows 7 64-bit with an Atheros Bluetooth device built in

In InhexSTER's RC3, everything works, and when I turn the DS4 on, it immediately makes the connection and all my settings are loaded. In every version and branch since, it just stays on "Connecting..." until I stop and restart the service. I've heard Windows 8 doesn't have any issues with this, but I don't have a Windows 8 machine to test it on.

Looking at the code for the first time it seems that the issue of your controller not connecting unless you start/stop may be that DS4Controllers[i].IsAlive needs a state change to invoke ControllerStatusChange(), just guessing though as I haven't fully got a lay of the land yet, will keep looking.