..:: 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-19-2014, 05:58 PM)wahgah Wrote: [ -> ]does anyone have word on how the service version is going? I have been waiting for more on that but it was also on the other topic. just curious if it is still an idea for this fork of the dev.

First i've heard of it, what's the purpose for it?

(05-19-2014, 06:00 PM)marcoboyle Wrote: [ -> ]ok yeah i had done that but its just folders with unusable files referencing all the stuff inside, i cant seem to find a application or executable file to run it. i may just have done something stupid though....

Thats the code, if you just want the binaries you don't need to worry about google code, just extract the latest DS4Tool.zip

Also apparently HostGator is having server issues, so its hit or miss if you can get to the page.
(05-19-2014, 06:01 PM)jhebbel Wrote: [ -> ]First i've heard of it, what's the purpose for it?

The original idea was, once the backend worked, to move everything to a service and give the flexibility to use whatever interface anyone want, communicating with the service using a NamedPipe.

I created the Metro style interface, transformed the DS4Tool to a service but considering that i'm doing it mostly at work during free time the project started slowing a lot considering that i can't test it with real hardware.

The client-service communication protocol it's already working flawlessy with a test service, but i didn't dig enough inside the DS4Tool to add the necessarily messages to and from the client.

If you are interested in providing help or forking these are my repos (devel branch):
https://code.google.com/p/ds4ui/
https://github.com/donbabbeo/ds4ui

Keep in mind that everything service-side is based on an old build of DS4Tool.
PS: to compile the client you will need the libraries attached here (i didn't include in the source because license and such).

PPS: this should also answer some of the PMs that i received recently Laugh
(05-19-2014, 05:30 PM)marcoboyle Wrote: [ -> ]ive tried unistalling everything and going again from scratch so many times and nothing is working, any suggestions? if i click it to continue it goes away and lets me use it still but it obviously a problem.

Jay, i have the same thing happening with yours but when i click continue it repeats with a new error 5 or 6 times and the it crashes.

Can anyone offer suggestions?

Also, i your installation guide on page one you say:
Install Scarlet.Crush's Xinput virtual bus driver found here; you should NOT install the Bluetooth driver replacement to use DS4Windows:
http://forums.pcsx2.net/Thread-XInput-Wr...Controller

I downloaded it but i cant find the driver replacemet your talking about, i ran the scpdriver and the bluetooth dongle was no longer able to discover devices.

I havent had any problems really throughout the tools development, just now unfortunately. If i use one of your old ones or inhexters it still works fine.

if you want the error information i can post it as well.

thanks in advance!

Could you expand that error dialog by hitting details? Also the Scarlet.Crush's driver should only be installed if you plan to use both the DualShock 3 and DualShock4 at the same time. I recommend uninstalling it if you're not using a DS3, as it sounds like you still installed that over your bluetooth driver. Also try reinstalling InhexSTER's driver: http://forums.pcsx2.net/attachment.php?aid=46600
(05-19-2014, 07:37 PM)Donbabbeo Wrote: [ -> ]The original idea was, once the backend worked, to move everything to a service and give the flexibility to use whatever interface anyone want, communicating with the service using a NamedPipe.

I created the Metro style interface, transformed the DS4Tool to a service but considering that i'm doing it mostly at work during free time the project started slowing a lot considering that i can't test it with real hardware.

The client-service communication protocol it's already working flawlessy with a test service, but i didn't dig enough inside the DS4Tool to add the necessarily messages to and from the client.

If you are interested in providing help or forking these are my repos (devel branch):
https://code.google.com/p/ds4ui/
https://github.com/donbabbeo/ds4ui

Keep in mind that everything service-side is based on an old build of DS4Tool.
PS: to compile the client you will need the libraries attached here (i didn't include in the source because license and such).

PPS: this should also answer some of the PMs that i received recently Laugh

I don't think everything would need to be in a service for that to happen, nor would it really reside there anyway, but that can be accomplished by moving most the BAL and BLL in to libraries which for the most part they already are, all thats really in the exe at this point is the actual application layer and that needs to be on the same platform as the GUI because rarely will two GUIs share enough of the application layer that it would be beneficial.

For the most part the libraries have not changed since 1.2.2 of the original tool, these forks have mostly had to do with GUI and small feature additions.

I like the idea of you working on a metro GUI (though I despise metro itself) and I've considered it, I just don't like the hoops you have to jump through to get it MS approved to cleanly work on systems other than the one you're developing on.

My next step it likely to get away from this individual file in a zip nonsense and start working on a proper installer to hopefully help with some of the issues not-so-experienced PC users are having with installation. Beyond that my longer term goals are to write DX and oGL hooks to build an in game interface for the app, and also to someday have audio working even if I have to learn about BT and driver development myself.
(05-19-2014, 08:43 PM)jhebbel Wrote: [ -> ]I don't think everything would need to be in a service for that to happen, nor would it really reside there anyway, but that can be accomplished by moving most the BAL and BLL in to libraries which for the most part they already are, all thats really in the exe at this point is the actual application layer and that needs to be on the same platform as the GUI because rarely will two GUIs share enough of the application layer that it would be beneficial.

For the most part the libraries have not changed since 1.2.2 of the original tool, these forks have mostly had to do with GUI and small feature additions.

There isn't two GUIs, there is only one, the service got no interface, it's working in the background.
The problem is that there should be someone that will test the communication layer client-service, that ATM is not working correctly (the service start, the client too, no info about controllers).
Electrobrains agreed to look into it, but he cannot compile it (i forget about the libs.zip at the time) and then never looked again.

(05-19-2014, 08:43 PM)jhebbel Wrote: [ -> ]I like the idea of you working on a metro GUI (though I despise metro itself) and I've considered it, I just don't like the hoops you have to jump through to get it MS approved to cleanly work on systems other than the one you're developing on.

It's only a Metro Style GUI, the application is a classic WinXP/WinVista/Win7/Win8 software.

(05-19-2014, 08:43 PM)jhebbel Wrote: [ -> ]My next step it likely to get away from this individual file in a zip nonsense and start working on a proper installer to hopefully help with some of the issues not-so-experienced PC users are having with installation. Beyond that my longer term goals are to write DX and oGL hooks to build an in game interface for the app, and also to someday have audio working even if I have to learn about BT and driver development myself.

Good luck with that, honestly i'm pretty confident that the DX injection it's only wasted time that will deliver nothing. Too many variables and too complicated for a limited outcome.

Regarding installer, NSIS
(05-19-2014, 10:06 PM)Donbabbeo Wrote: [ -> ]There isn't two GUIs, there is only one, the service got no interface, it's working in the background.
The problem is that there should be someone that will test the communication layer client-service, that ATM is not working correctly (the service start, the client too, no info about controllers).
Electrobrains agreed to look into it, but he cannot compile it (i forget about the libs.zip at the time) and then never looked again.
Not sure what you were originally referring to then in regards to trying to move more of the tool into a windows service, at present I have not had any issues with the service and client no communicating, but then Ih have not been able to reproduce most the bugs people have reported in previous builds.

(05-19-2014, 10:06 PM)Donbabbeo Wrote: [ -> ]It's only a Metro Style GUI, the application is a classic WinXP/WinVista/Win7/Win8 software.
Ahh ok, your one of the first people i've met that like the tile direction MS is taking everything, the general consensus has typically been against it.

(05-19-2014, 10:06 PM)Donbabbeo Wrote: [ -> ]Good luck with that, honestly i'm pretty confident that the DX injection it's only wasted time that will deliver nothing. Too many variables and too complicated for a limited outcome.
Its more a feature then a requirement obviously, i've just at times wanted to quickly swap profiles between games or look at controller connection statuses.

(05-19-2014, 10:06 PM)Donbabbeo Wrote: [ -> ]Regarding installer, NSIS

Ill read into it, Ive typically use Telerik in the past
(05-19-2014, 06:01 PM)jhebbel Wrote: [ -> ]Thats the code, if you just want the binaries you don't need to worry about google code, just extract the latest DS4Tool.zip

Also apparently HostGator is having server issues, so its hit or miss if you can get to the page.

cool thanks for the heads up on the server issue.
And I know experienced ppl like you will probably pull your hair out with noob questions but i really cannot work out how to use your branch of the tool. Is it an actual scpserver tool with your changes added? As i said, i clicked on the code.google link, downloaded the zip loads of times and its just folders and files when i extract it - theres no application or exe to run. So do i replace something in electros build with your configs perhaps? Sorry, im maybe just missing something.

I love the enthusiasm you have brought to the development btw, ive seen a few come in with lots of vigour and slowly seen their interest wain, so dont burn yourself out on it!
And btw, aiming for or achieving the holy grail of allowing it to make use of audio would be
mindblowing. Id actually pay you lots of money for the tool with that feature!
(05-19-2014, 10:44 PM)marcoboyle Wrote: [ -> ]cool thanks for the heads up on the server issue.
And I know experienced ppl like you will probably pull your hair out with noob questions but i really cannot work out how to use your branch of the tool. Is it an actual scpserver tool with your changes added? As i said, i clicked on the code.google link, downloaded the zip loads of times and its just folders and files when i extract it - theres no application or exe to run. So do i replace something in electros build with your configs perhaps? Sorry, im maybe just missing something.

I love the enthusiasm you have brought to the development btw, ive seen a few come in with lots of vigour and slowly seen their interest wain, so dont burn yourself out on it!
And btw, aiming for or achieving the holy grail of allowing it to make use of audio would be
mindblowing. Id actually pay you lots of money for the tool with that feature!

Thanks.

My development so far is mostly contained to the application layer, the libraries are the ones from electrobrain build, so you need his first then install mine or j2k's on top of it, though I will soon be making an all encompassing installer to make things a little easier to understand, but for now the majority of us are just throwing up zips that are intended to overwrite existing files and not be a complete application in itself.

(05-19-2014, 10:44 PM)marcoboyle Wrote: [ -> ]cool thanks for the heads up on the server issue.
And I know experienced ppl like you will probably pull your hair out with noob questions but i really cannot work out how to use your branch of the tool. Is it an actual scpserver tool with your changes added? As i said, i clicked on the code.google link, downloaded the zip loads of times and its just folders and files when i extract it - theres no application or exe to run. So do i replace something in electros build with your configs perhaps? Sorry, im maybe just missing something.

I love the enthusiasm you have brought to the development btw, ive seen a few come in with lots of vigour and slowly seen their interest wain, so dont burn yourself out on it!
And btw, aiming for or achieving the holy grail of allowing it to make use of audio would be
mindblowing. Id actually pay you lots of money for the tool with that feature!

Servers look like they are behaving better now, http://dsdcs.com/index.php/portfolio/sof...ds4windows is where the biniaries are, the recent outtages have also pointed out some bugs in my code where the tool was throwing exceptions when the update server could not be found so everyone should expect a new build with at least that fixed tonight.
Well I learned a lot today, Deployment is not typically my job so this is new to me but I was unaware the installers can have native zip commands run against them, this is great because that means that for new versions all I have to do is upload new installers and have the applications internal updater download the installer and unzip. It also looks like I will be able to install the scp driver and xbox utility from within the installer as well so this will be, hopefully, a single installation process thus simplifying the process for new users. I know people probably already knew about this crap but as a developer deployment was always somebody else's problem so its nice to learn new things.

Sadly the culmination of my knowledge did not result in a release today as I'm tired and punchy and want to get this right, so aiming for tomorrow.
I have tried both Jays2Kings and jhebbel's newest versions of DS4Tool, and they both crash.
I am running Windows 8.1 x64 Professional

jhebbel's crashes with no error message.

J2K's causes the following error:
Code:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at ScpServer.ScpForm.Form_Resize(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnResize(EventArgs e)
   at System.Windows.Forms.Control.OnSizeChanged(EventArgs e)
   at System.Windows.Forms.Control.UpdateBounds(Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight)
   at System.Windows.Forms.Control.UpdateBounds()
   at System.Windows.Forms.Control.WmWindowPosChanged(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Form.WmWindowPosChanged(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at ScpServer.ScpForm.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34014 built by: FX45W81RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
DS4Tool
    Assembly Version: 1.3.0.0
    Win32 Version: 1.3
    CodeBase: file:///C:/Users/Chris/Desktop/DS4Tool%20J2K/DS4Tool.exe
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34003 built by: FX45W81RTMGDR
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
DS4Control
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/Chris/Desktop/DS4Tool%20J2K/DS4Control.DLL
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
DS4Library
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/Chris/Desktop/DS4Tool%20J2K/DS4Library.DLL
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

I don't know if this is of any help to either of you, but I hope it is. DS4Tool 1.3 RC3 is running without issue for me. If there's anything else I can do to help, let me know!