Ryochan7 / DS4Windows

Like those other ds4tools, but sexier
https://ryochan7.github.io/ds4windows-site/
GNU General Public License v3.0
6.96k stars 807 forks source link

Major Issues with DS4. About to give up! #1261

Closed rvartanyanov closed 4 years ago

rvartanyanov commented 4 years ago

I just don't know where to start. I Bought a PS4 controller (DS4 v2), i don't own a PS4 I only wanted it for my PC, for the last few days I spent hours and hours looking for a fix and NOTHING works.

-----WITH USB: -----

When I connect the controller I get long-lasting yellow/orange-ish light, as i've come to learn it means its charging? The controller CONNECTS with DS4 Windows, but doesn't seem to be working properly, while it works in games (DRAGON QUEST XI, Trails in the Sky and PCSX2 (PS2 Emulator)), the yellow light GOES OFF after 3-4 minutes and the D-Pad stops working (everything else seems to keep working). Most people complaining from yellow light don't even connect with the controller, so I assume there is a connection issue.

The DS4 Controller doesn't seem to be able to interact with the DS4 Windows, trying to change LED doesn't work, testing big and small motor rumble - both no response AT ALL from the DS4. Again makes me think there's problem with he connection. When I test it with other software or at https://html5gamepad.com/ every single button AND both motors for vibration work fine.

-----Wireless----- Tried to connect it through my Bluetooth device - device detects the DS4 and seem to connect to the PC and I get WHITE nonstop light from the DS4, when I go to DS4 Windows it starts connecting and reconnecting with the DS4 every second. The log says "Controller 1 was removed or lost connection charge battery" I left the DS4 plugged into my phone charger and I get the same yellow light for about a minute and it goes off (which i read should mean the controller is fully charged).

-----What I tried doing----- -Changed the USB cable -Installed DS4 Windows on another PC - same. -Changed from USB 3 to USB 2. Front and back panel. -Played around with the Device Manager Enable/Disable/Uninstall tricks -Installed HidGuard Helper. -Tried Hide DS4 Controller -Tried Resetting DS4 Controller from the back button holding for up to 1 minute, haha. -INSTALLED A FRESH COPY of windows from 2018's updates.

-----Conclusion ----- I NEVER got to see the God's Light (The blue light) EVER. No matter what I do. I guess that must mean there is a problem somewhere, if comeone can help me I would be very thankful, I'm about to give up and buy an Xbox One S controller. It's amazing to me how such Priemium" controllers have such a bad support, things are not cheap!

WHAT DO I DO ? :( :(

mika-n commented 4 years ago

Try running the debug version and please provide the detailed logfile here (as TXT file attachment. Just drag-and-drop a txt file to a comment box here). Log files are in "%APPDATA%\DS4Windows\" folder. https://github.com/Ryochan7/DS4Windows/wiki/Troubleshooting#detailed-debug-log-file-from-gamepad-connection-problems

Also, make sure to test connections issues while using a default "empty" profile without customizations (create a new profile in DS4Windows app). Make sure "Use DInput only" and "Flush HID" options are NOT set.

What do you see "Controller Readings" tab page in DS4Windows app when the gamepad is connected?

Make sure you downloaded the latest version from the following web link. There are other older versions of DS4Windows on Internet with the same app name. https://github.com/Ryochan7/DS4Windows/releases

And read the pinned "Read this before posting a issue ticket" for more tips what information to provide (app versions, logs, tips about usb and BT connections issues, detailed gamepad identifiers).

Finally why sometimes DS4 gamepad works without DS4Windows app in WinOS (JOY.CPL or Html5gamepad test web app)? When you connect the DS4 gamepad to Win PC without running DS4Windows app then the gamepad is in "PC-friendly mode" and not in native DS4 mode. For example touchpad usually doesn't work in WinOS PC out-of-the-box because the gamepad is not in true DS4 native mode.

When DS4Windows app is running then the app switches the gamepad to native DS4 mode to enable "all DS4 custom features" (=not found from ordinary xbox gamepads). Sometimes some PCs have had issues with this native DS4 gamepad mode. However, usually those cases are in BT connections (PC has incompatible BT host) and not in USB connections.

Ryochan7 commented 4 years ago

Besides trying the debug build, there are a couple of other routes to take that might help diagnose the issue. The first one would be posting the most recent ds4windows_log.txt file located in the Logs folder of your DS4Windows installation directory or the appropriate AppData directory. Also, which DS4Windows archive file did you download and how did you install it?

For a while now, I have recommended people download the .7z archive files and extract the contents using 7-Zip rather than the other Zip files; the other Zip files are mainly used by DS4Updater.exe. There is the odd chance that Windows is actually blocking one of the DLL files from loading if you used the older standard Zip archives and extracted it through Windows Explorer. It would more than likely be a problem with the Nefarius.ViGEm.Client.dll file.

If that is the case, you would have to Unblock the Zip archive file in Windows Explorer before extracting it in order for Windows to not put in ADS meta data in the extracted folder that might interfere with it running; the example pic relates to the HidGuardian Test Installer but the same situation applies here. Make sure to Uncheck the box and hit the OK button.

windows_unblock_zip_example

https://github.com/Ryochan7/DS4Windows/releases/download/v2.1.0/DS4Windows_2.1.0_x64.7z

As an aside, I have only ever used my DS4 on PC. I have never owned a PS4 console.

rvartanyanov commented 4 years ago

Thank you for your time.

I have made a few screenshots and I think I got all the logs from different situations as you recommended.

Wired Log.zip

-Bluetooth Log

BT Log.zip

-New "DEFAULT" profile log

New Default profile log.zip

rvartanyanov commented 4 years ago

Also I have screenshoted:

The pads and triggers work properly when tested.

I get TWO Controllers when DS4 Windwos in on, and both work at the same time (get the input) but JUST the "Wireless Controller" vibration option is working.

WITHOUT the DS4 Windwos i get only the "Wireless Controller" and vibration work.

About the last thing, you are suggesting I delete DS4 Windows and Install it again using 7-zip rather than WinRar ?

mika-n commented 4 years ago

The BT connection seems to have some communication problems when the DS4 gamepad is switched over to native DS4 mode. It is usually a sign of incompatibility of BT host chipset (or driver) and DS4 gamepad BT client chipset.

Anyway. The USB connection log seems to be OK, but couple strange things:

2020-05-04 18:30:14.7870|INFO|HidGuardian in use. Launching HidGuardHelper.
2020-05-04 18:30:16.5494|INFO|Using Exclusive Mode

Are you using HidGuardian driver to solve "double controller" issue? If you are using HidG then don't enable "Hide DS4 Controller" (=exclusive mode) option in DS4Windows settings. HidGuardian and the built-in "Hide DS4 Controller" (=exclusive mode) are alternative solutions as explained in the following doc page. https://github.com/Ryochan7/DS4Windows/wiki/Exclusive-Mode-(Hide-DS4-Controller-config-option)-tips-and-issues

Tips to install HidGuardian driver (test installer app) and a helper tool (hidhider) to tweak HidG settings (for example temporarily disabling hidg magic by commenting out DS4 gamepad identifiers if you want to use DS4 gamepad without HidG hiding it). https://github.com/Ryochan7/DS4Windows/wiki/DS4Windows-and-HIDGuardian-Install-and-Setup-Guide#hidguardian-test-installer

Ryusennin commented 4 years ago

"You are suggesting I delete DS4 Windows and Install it again using 7-zip rather than WinRar ?"

No, Ryochan suggests you try the 7z archive instead of the zip one. But as pointed by Mika, your problem seems more related to exclusive mode.

Ryochan7 commented 4 years ago

Using HidGuardian and "Hide DS4 Controller" at the same time should work fine; that is my typical setup. It is redundant but it works. It looks like neither HidGuardian nor Exclusive mode is doing its job based on your screenshots. Is HidGuardHelper.exe actually running while DS4Windows is running? That program should be running as long as DS4Windows is still running. It will purge the DS4Windows whitelist entry and close itself once it no longer detects DS4Windows running.

At least it looks like DS4Windows is not being blocked by Windows. Maybe Windows could be blocking the UtilLibrary.dll file that HidGuardHelper.exe uses.

You might want to try a test build with changes from the report_tweak branch. For me, I notice that BT lag is reduced and the connection seems more stable under system load with recent changes. Still not sure if I will end up bumping the version number to 2.2 just for those changes or just bump it to 2.1.1. I will get a test build uploaded in a bit.

Ryochan7 commented 4 years ago

Test build with report_tweak branch changes

DS4Windows_ReportTweak_20200504.7z: https://drive.google.com/file/d/10JSqkcRwcFR1q8t3nE7tYGTwODezGCD3/view?usp=sharing

mika-n commented 4 years ago

I get TWO Controllers when DS4 Windwos in on, and both work at the same time (get the input) but JUST the "Wireless Controller" vibration option is working. If you get two controllers while DS4Windows is running and you use either HidGuardian tool or HideDS4Controller option (=exclusive mode) then it means that HidG or ExclusiveMode is not working in your setup.

The linked doc page gives couple potential reasons and conflicting apps which may prevent the use of exclusive mode. https://github.com/Ryochan7/DS4Windows/wiki/Exclusive-Mode-(Hide-DS4-Controller-config-option)-tips-and-issues

However, if you use HidGuardian then exclusiveMode is not required because HidG does the same job as exclusive mode. Often HidG works in scenarios where exclusive mode fails (because of PC environment specific reasons and not because of DS4Windows issues).

When you run DS4Windows and the log file tells that "HidGuardian in use" then what do you see in system registry?

AffectedDevices entry should list a gamepad identifier (VID/PID vendor/product ID) and Whitelist should have a process ID of a running DS4Windows app (check from TaskManager that the Whitelisted ID matches with DS4Windows process ID).

DS4Windows_HidGSysReg

Sometimes some Windows update may break the HidGuardian driver registration. The easiest way to fix this is to re-install HidGuardian using the "HidG TestInstaller" tool. https://github.com/Ryochan7/DS4Windows/wiki/DS4Windows-and-HIDGuardian-Install-and-Setup-Guide#hidguardian-test-installer

rvartanyanov commented 4 years ago

I terminated WinStore.app.exe and Microsoft Edge instances in Processes and used DS4Windows_ReportTweak_20200504 in Gamepad Tester https://html5gamepad.com/ I was getting only one controller.

Still the same yellow light and no response from trying to change lights or rumble testing, even weirder after i tried a bluetooth connection again i got the same 1 second connected/disconnected issue and after I switched to USB again I got 4 controllers in https://html5gamepad.com/. One with the properly centered sticks was working , excluding the vibration, others responded only by changing TIMESTAMP value when i press something but not highlighting actual input button

Capture

rvartanyanov commented 4 years ago

Capture2 Capture3

This is what I get in the registry

rvartanyanov commented 4 years ago

Could it be I bought a broken controller ? But everything is working as expected from it I guess.

EDIT: Now I noticed some kind of "Xbox Controller... something something" overlay poped up a few times, could it be interfering in some way ? I don't know who to trace it, i'll try to make it pop out again, but I presume it might be because I also installed the Windwos 7 only 360 Driver with DS4 windows out of desperation. Should I remove it ?

mika-n commented 4 years ago

A bit unusual looking AffectedDevices list if you are using HidG only with DS4 gamepads. Lots of unnecessary entries.

The following entries are enough for DS4v1 usb, DS4v2 usb, DS4viaSonyWirelessAdapter, DS4v1 bt and DS4v2 bt devices.

HID\VID_054C&PID_05C4
HID\VID_054C&PID_09CC&MI_03
HID\VID_054C&PID_0BA0&MI_03
HID\{00001124-0000-1000-8000-00805f9b34fb}_VID&0002054c_PID&05c4
HID\{00001124-0000-1000-8000-00805f9b34fb}_VID&0002054c_PID&09cc

Based on the logfiles you seem to have DS4 version1 gamepad. If it is a brand new DS4 gamepad then a bit surprised to see v1 gamepad because Sony haven't manufactured those for years (since PS4-Slim console was released). The bad news is that often Chinese fake copies use the DS4v1 hardware ID and those have problems when connected over BT. If you purchased the gamepad recently then maybe it is a fake DS4 gamepad if it really has DS4v1 hardware identifier (VID=054C, PID=05C4).

rvartanyanov commented 4 years ago

I guess that could be true. I looks exactly like a v2, but I did buy it from a Chinese guy for 25$, saying it's from "sony's factory" i knew it was risky, but I honestly didn't think there are even fake controllers.

Rogus commented 4 years ago

hey, @rvartanyanov I would ask what you see in the behind of your controller if you see this in the back of your controller in the part called MODEL, like this: MODEL CUH--ZCT2U I bought mine in a market of games and accessories for games and consoles and only had this one ps4 controller lucky me it was a v2 at least it was gemesato says and some others gaming sites say this too it was made in china but the manual it is from Mexico so I don't get it.

Em qua., 6 de mai. de 2020 às 08:25, rvartanyanov notifications@github.com escreveu:

I guess that could be true. I looks exactly like a v2, but I did buy it from a Chinese guy for 25$, i knew it was risky, but I honestly didn't think there are even fake controllers.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Ryochan7/DS4Windows/issues/1261#issuecomment-624592787, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJJZXBKNRAEXTJ6XOKSUOSLRQFCJTANCNFSM4MYM3KPA .

rvartanyanov commented 4 years ago

It says MODEL CUH - ZCT1U. So is the controller fake or it's just the first version.. or both.. cause it looks like the v2, with the more silver looking triggers and "Options" and "Share" buttons.

Ryochan7 commented 4 years ago

That model number is for a version 1 controller.