..:: 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.
I just mean going to the DS4Windows directory and typing exactly that, "DS4Tool > log.txt"; this is basic functionality of CMD.EXE, and no program you run afaik could fail to create the log.txt file as the program doesn't create it... The command line does and it should not fail unless you cannot write to the directory. You could use any path name there instead of log.txt.
(04-05-2014, 06:46 PM)electrobrains Wrote: [ -> ]I just mean going to the DS4Windows directory and typing exactly that, "DS4Tool > log.txt"; this is basic functionality of CMD.EXE, and no program you run afaik could fail to create the log.txt file as the program doesn't create it... The command line does and it should not fail unless you cannot write to the directory. You could use any path name there instead of log.txt.

You're right, it's my mistake, I was trying to run DS4Tool.exe with > log.txt as an argument. I got it working now, log is attached, I tried to do nothing but move my cursor to where I could see it and then make it skip around in a small square over and over again.

The relevant part of the log appears to be the repetition of this pattern:

Code:
2014-04-05T18:01:00.9824572Z moved to 917,601
2014-04-05T18:01:00.9980761Z moved to 918,601
2014-04-05T18:01:01.0293356Z moved to 919,601
2014-04-05T18:01:01.0605887Z moved to 920,601
2014-04-05T18:01:01.0918406Z moved to 921,601
2014-04-05T18:01:01.1230934Z moved to 922,601
2014-04-05T18:01:01.1855987Z moved to 923,601
2014-04-05T18:01:01.2481034Z moved to 924,601
2014-04-05T18:01:01.5137494Z moved to 924,612
2014-04-05T18:01:01.5450020Z moved to 924,613
2014-04-05T18:01:01.6231350Z moved to 924,614
2014-04-05T18:01:01.7637701Z moved to 924,615
2014-04-05T18:01:02.1387993Z moved to 924,616
2014-04-05T18:01:02.2481839Z moved to 913,616
2014-04-05T18:01:02.2950621Z moved to 912,616
2014-04-05T18:01:02.3263143Z moved to 911,616
2014-04-05T18:01:02.3888208Z moved to 910,616
2014-04-05T18:01:02.4200724Z moved to 909,616
2014-04-05T18:01:03.1857588Z moved to 909,605
2014-04-05T18:01:03.2795160Z moved to 909,604
2014-04-05T18:01:03.4357782Z moved to 909,603
2014-04-05T18:01:03.7014251Z moved to 920,603
2014-04-05T18:01:03.7483041Z moved to 921,603
2014-04-05T18:01:03.8108089Z moved to 922,603
2014-04-05T18:01:03.9201920Z moved to 923,603
2014-04-05T18:01:04.0139516Z moved to 924,603
2014-04-05T18:01:04.6077492Z moved to 924,614
2014-04-05T18:01:04.6546262Z moved to 924,615
2014-04-05T18:01:04.7640100Z moved to 924,616
2014-04-05T18:01:05.3890604Z moved to 913,616
2014-04-05T18:01:05.4359403Z moved to 912,616
2014-04-05T18:01:05.4984444Z moved to 911,616
2014-04-05T18:01:05.5765754Z moved to 910,616
2014-04-05T18:01:05.6859609Z ended at 910,616

You can see it gliding from 918-924 while remaining at 601, then remaining at 924, but 601 jumps to 612. The behavior repeats the other way when it remains at 924 while gliding to 616, then leaps to 913. It's like rather than moving in circles it locks in on one axis and then suddenly skips to the next position when directions change.

Dunno what to make of it.
(04-05-2014, 08:07 PM)Tox Wrote: [ -> ]You're right, it's my mistake, I was trying to run DS4Tool.exe with > log.txt as an argument. I got it working now, log is attached, I tried to do nothing but move my cursor to where I could see it and then make it skip around in a small square over and over again.

The relevant part of the log appears to be the repetition of this pattern:

Code:
2014-04-05T18:01:00.9824572Z moved to 917,601
2014-04-05T18:01:00.9980761Z moved to 918,601
2014-04-05T18:01:01.0293356Z moved to 919,601
2014-04-05T18:01:01.0605887Z moved to 920,601
2014-04-05T18:01:01.0918406Z moved to 921,601
2014-04-05T18:01:01.1230934Z moved to 922,601
2014-04-05T18:01:01.1855987Z moved to 923,601
2014-04-05T18:01:01.2481034Z moved to 924,601
2014-04-05T18:01:01.5137494Z moved to 924,612
2014-04-05T18:01:01.5450020Z moved to 924,613
2014-04-05T18:01:01.6231350Z moved to 924,614
2014-04-05T18:01:01.7637701Z moved to 924,615
2014-04-05T18:01:02.1387993Z moved to 924,616
2014-04-05T18:01:02.2481839Z moved to 913,616
2014-04-05T18:01:02.2950621Z moved to 912,616
2014-04-05T18:01:02.3263143Z moved to 911,616
2014-04-05T18:01:02.3888208Z moved to 910,616
2014-04-05T18:01:02.4200724Z moved to 909,616
2014-04-05T18:01:03.1857588Z moved to 909,605
2014-04-05T18:01:03.2795160Z moved to 909,604
2014-04-05T18:01:03.4357782Z moved to 909,603
2014-04-05T18:01:03.7014251Z moved to 920,603
2014-04-05T18:01:03.7483041Z moved to 921,603
2014-04-05T18:01:03.8108089Z moved to 922,603
2014-04-05T18:01:03.9201920Z moved to 923,603
2014-04-05T18:01:04.0139516Z moved to 924,603
2014-04-05T18:01:04.6077492Z moved to 924,614
2014-04-05T18:01:04.6546262Z moved to 924,615
2014-04-05T18:01:04.7640100Z moved to 924,616
2014-04-05T18:01:05.3890604Z moved to 913,616
2014-04-05T18:01:05.4359403Z moved to 912,616
2014-04-05T18:01:05.4984444Z moved to 911,616
2014-04-05T18:01:05.5765754Z moved to 910,616
2014-04-05T18:01:05.6859609Z ended at 910,616

You can see it gliding from 918-924 while remaining at 601, then remaining at 924, but 601 jumps to 612. The behavior repeats the other way when it remains at 924 while gliding to 616, then leaps to 913. It's like rather than moving in circles it locks in on one axis and then suddenly skips to the next position when directions change.

Dunno what to make of it.

Yes, that's exactly what I tend to see: it likes to try to give you straight lines vertically and horizontally and there are big jumps in direction changes. I'll take a look at your log in much greater detail to see why the algorithm that works for me doesn't work for you. Thanks a bunch for capturing the data so I can investigate!
Anything you plan to do in the future about old pc games that can't read the triggers from xinput devices (Like make a separate .dll that you can put in the game folder of your choice to turn the triggers only into direct input buttons [hybrid mode] or something like that)?
I really don't want to have to switch from Windows 7 to 8.1, but damnit I am still having troubles with DS4Windows Sad even with USB, it's flaky. The first time I use my controller on every boot up, whether it's USB or Bluetooth, it works perfectly. Once I turn it off/disconnect it, every single attempt after that only shows the Wireless Controller in the controller panel, and it never works again. I have to manually mess with the SCP Service and device in the device manager to get it working again, or just reboot the machine.

On the latest beta. Just wish I knew what was going on, why I feel like the only one with these problems. Can it really be simply Windows 7?
(04-07-2014, 05:28 AM)DaRkL3AD3R Wrote: [ -> ]I really don't want to have to switch from Windows 7 to 8.1, but damnit I am still having troubles with DS4Windows Sad even with USB, it's flaky. The first time I use my controller on every boot up, whether it's USB or Bluetooth, it works perfectly. Once I turn it off/disconnect it, every single attempt after that only shows the Wireless Controller in the controller panel, and it never works again. I have to manually mess with the SCP Service and device in the device manager to get it working again, or just reboot the machine.

On the latest beta. Just wish I knew what was going on, why I feel like the only one with these problems. Can it really be simply Windows 7?
I don't see that ScpService could be that related... the ScpVbus device is known to have some issues that sometimes require restarting, and this even happens on Windows 8.1 but it happens on this Windows so seldomly that I have only seen it happen once or twice. Are you using the latest version of Scarlet.Crush's software?
Ok, i messed around with DS4Windows and tried to make it work nicely with DS4Ui. Used a custom event instead of an empty event args and added the same event also during the connection of a new controller.

I couldn't try it (i'm using the PC at work) but the service start without problem and wait for a controller. Can anyone test it for me?

To install the service, just launch ServiceDestroyer and click on the button to install it, then launch the DS4Tool.
ATM the DS4Tool is only receiving signals from the service, so only connection/disconnection/battery level; if it works the next step is copying all the functions of the old client and crossing the fingers Biggrin
(04-05-2014, 08:07 PM)Tox Wrote: [ -> ]You're right, it's my mistake, I was trying to run DS4Tool.exe with > log.txt as an argument. I got it working now, log is attached, I tried to do nothing but move my cursor to where I could see it and then make it skip around in a small square over and over again.

The relevant part of the log appears to be the repetition of this pattern:

Code:
2014-04-05T18:01:00.9824572Z moved to 917,601
2014-04-05T18:01:00.9980761Z moved to 918,601
2014-04-05T18:01:01.0293356Z moved to 919,601
2014-04-05T18:01:01.0605887Z moved to 920,601
2014-04-05T18:01:01.0918406Z moved to 921,601
2014-04-05T18:01:01.1230934Z moved to 922,601
2014-04-05T18:01:01.1855987Z moved to 923,601
2014-04-05T18:01:01.2481034Z moved to 924,601
2014-04-05T18:01:01.5137494Z moved to 924,612
2014-04-05T18:01:01.5450020Z moved to 924,613
2014-04-05T18:01:01.6231350Z moved to 924,614
2014-04-05T18:01:01.7637701Z moved to 924,615
2014-04-05T18:01:02.1387993Z moved to 924,616
2014-04-05T18:01:02.2481839Z moved to 913,616
2014-04-05T18:01:02.2950621Z moved to 912,616
2014-04-05T18:01:02.3263143Z moved to 911,616
2014-04-05T18:01:02.3888208Z moved to 910,616
2014-04-05T18:01:02.4200724Z moved to 909,616
2014-04-05T18:01:03.1857588Z moved to 909,605
2014-04-05T18:01:03.2795160Z moved to 909,604
2014-04-05T18:01:03.4357782Z moved to 909,603
2014-04-05T18:01:03.7014251Z moved to 920,603
2014-04-05T18:01:03.7483041Z moved to 921,603
2014-04-05T18:01:03.8108089Z moved to 922,603
2014-04-05T18:01:03.9201920Z moved to 923,603
2014-04-05T18:01:04.0139516Z moved to 924,603
2014-04-05T18:01:04.6077492Z moved to 924,614
2014-04-05T18:01:04.6546262Z moved to 924,615
2014-04-05T18:01:04.7640100Z moved to 924,616
2014-04-05T18:01:05.3890604Z moved to 913,616
2014-04-05T18:01:05.4359403Z moved to 912,616
2014-04-05T18:01:05.4984444Z moved to 911,616
2014-04-05T18:01:05.5765754Z moved to 910,616
2014-04-05T18:01:05.6859609Z ended at 910,616

You can see it gliding from 918-924 while remaining at 601, then remaining at 924, but 601 jumps to 612. The behavior repeats the other way when it remains at 924 while gliding to 616, then leaps to 913. It's like rather than moving in circles it locks in on one axis and then suddenly skips to the next position when directions change.

Dunno what to make of it.

I found some error in the cursor-motion logic, but nothing that should have failed to account for your fine motion. Still, I corrected other mistakes that might have screwed things up if you are using a non-100 Touch sensitivity (cursor motion multiplier of non-1.0.) Try again and see if things are ever jumpy or jerky with jitter compensation on, because I can't provoke the issue anymore.
(04-07-2014, 07:45 AM)electrobrains Wrote: [ -> ]I don't see that ScpService could be that related... the ScpVbus device is known to have some issues that sometimes require restarting, and this even happens on Windows 8.1 but it happens on this Windows so seldomly that I have only seen it happen once or twice. Are you using the latest version of Scarlet.Crush's software?

Yeah I pulled the latest update from the link in your main post. I just don't know what else could be going on here.
(04-07-2014, 09:14 PM)electrobrains Wrote: [ -> ]I found some error in the cursor-motion logic, but nothing that should have failed to account for your fine motion. Still, I corrected other mistakes that might have screwed things up if you are using a non-100 Touch sensitivity (cursor motion multiplier of non-1.0.) Try again and see if things are ever jumpy or jerky with jitter compensation on, because I can't provoke the issue anymore.

I should note that the behavior in question was present for me at both the default 100 sensitivity and others; in fact I turned it down precisely because it MITIGATED it. It was also true with two separate DS4s so I don't think it was a hardware thing.

The good news is, IF jitter compensation is enabled, this current build no longer experiences the jumping! I'm able to crank my sensitivity from 73 to 91 without wanting to throw my controller out the window every time I try to click a tray icon or line up a distant shot.

The bad news is, there's also a sort of acceleration lag on mouse movement (if you swipe your finger, the cursor seems to accelerate to the appropriate speed and then decelerate out of it) if you leave your finger on the pad... that is to say, if you swipe but don't lift your thumb afterward, the cursor sort of glides lazily around where your finger is resting, whereas a swipe-and-lift produces snappy cursor motion. This is especially noticeable if you try to wiggle the cursor around very rapidly in a little figure 8 shape or something similar (not that you'd ever do this during normal use, of course), you'll see how as your thumb moves back and forth the cursor just sort of hovers in one place or just barely edges in one direction, presumably because it's not able to fully start its motion before it gets pulled in the opposite direction.

I don't THINK this new behavior is related to the fix itself since the behavior is present even with jitter compensation disabled (I can get a swishy, squishy glide AND some grid snapping behavior with that checkbox unticked, lol) though I personally greatly prefer the older motion and if it's possible to retain that sort of rigid responsiveness without giving up the degree of fine cursor placement accuracy you've got with this, I think it would be a perfect implementation of the trackpad.

Anyway, thanks for your serious effort on this issue, I know it probably feels pointless given how well it evidently works for your purposes but these changes are night and day on my end in terms of comfort and usability.

EDIT: While I've got your ear about mouse behavior, I don't suppose you're doing anything particular with your mouse button presses that might be nonstandard? e.g. in Warframe, pressing right-click via the lower-right of the pad causes the game to think I've never UNpressed it (it will keep me in iron sights, it also has a weird tendency to break menus because if I right-click the game will do nothing until I grab my actual mouse and right click to "unstick" it... it's like DS4W is sending right mouse press but never right mouse unpress messages) in Goldeneye Source, it will cause my sights to flick on and off immediately and it is impossible to hold them. I can't get any of DS4Windows' right click commands to consistently work anywhere but Windows itself.