jays2kings / ds4windows Goto Github PK
View Code? Open in Web Editor NEWLike those other ds4tools, but sexier
Like those other ds4tools, but sexier
Please considering working in this direction at some point, if it is at all possible. Would be incredibly useful, especially over Bluetooth.
While using the program with notifications disabled for less visual clutter it occurred that it would be useful if the tray icon displayed a connected controllers overlay badge for quickly glancing at the state of connected controllers (how many are connected, if any).
Re-drew the icon and added a badge for example:
This would also help when the profile used has an idle disconnect, and in general as a visual indicator when a controller has connected/disconnected.
I have a wired Xbox360 controller connected to my PC. In settings, I selected "Use Xinput Ports 2-5" so that DS4Windows would never steal the slot from my Xbox360 controller. Instead, it always steals slot 1.
In Profiles, I set "Use Controller 2 for Mappings and readout x" in the Other section, but the number here is not saved when I click Save Profile and re-open the profile. The checkbox after "readout" is saved. Unchecking it does not prevent DS4Windows from stealing slot 1.
If I set "Use Xinput Ports 3-6" or "Use Xinput Ports 1-4", DS4Windows no longer steals slot 1.
I am determining which controller is in which slot using Joy2Key.
Not sure what version of DS4Windows I have. I ran the autoupdater today.
I couldn't find any license in the source code, or a LICENSE file explaining on which license the software is. This means that it falls under standard copyright, i.e. no redistribution without permission from the author.
hello there. i just want to inform you that toggling the experimental exclusive mode will kill classicshell and will result in default windows 8.1 start button / windows key behavior (metro screen)
i do not expect a fix. i'm just informing you about this behavior. i guess there are lots of people affected by this.
Hi guys
Great job for this program I LOVED and i respect ou great Work
unfortunately I have a little problem with me crashing from FIFA with DS4Windows
Is there a solution for this?
So, during my first usage of Ds4Windows I had my PS4 running and its display off. By the end of the night of playing, I had made over $90 of purchases on PSN. Trying to get a refund :(
Repro:
Expected: The PS4 should not receive input from the DS4 while Ds4Windows is running
Actual: Both receive input
Windows 10 pro
i7 6820HK no overclocking
32GB ram
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.IO.FileNotFoundException: Could not find file 'C:\Users\User\Desktop\ds4\ScpDriver.log'.
File name: 'C:\Users\User\Desktop\ds4\ScpDriver.log'
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)
at System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost)
at DS4Windows.WelcomeDialog.timer_Tick(Object sender, EventArgs e)
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.TimerNativeWindow.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.6.127.1 built by: NETFXREL3STAGE
DS4Windows
Assembly Version: 1.4.27.0
Win32 Version: 1.4.27
System
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.6.93.0 built by: NETFXREL2STAGE
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.IO.Compression.FileSystem
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0
System.IO.Compression
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0
************** 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:
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.
In controller readings window Gyro and Accel are switched. Accel should show direction of gravitational gradient and Gyro should show relative rotation.
It would be nice to be able to emulate multiple XInput devices and map them with one DS4.
For example: mapping Sixaxis controls to a second 360's analog sticks (currently have to give up one analog stick to use Sixaxis). This could be useful for movement controls with Dolphin.
Similar to issues here:
http://www.reddit.com/r/PS4/comments/1s1rpo/dualshock_4_bluetooth_with_pc_solution/
and here:
http://www.reddit.com/r/PS4/comments/1p9y0l/pairing_your_ds4_controller_via_bluetooth/
But I still can't get it to stay connected.
No idea what was changed but after the latest update FFXIII does not detect DS4windows. While its open it will not allow any gamepad to work. After closing DS4windows and using my Xbox one controller that gamepad works. I was used to be able to use PS4 with DS4windows. Any idea what can be the problem, But I can confirm it used to work.
Update: DS4Windows can be opened and the Xbox One control will work. It just seems that FFXIII cannot detect my PS4 control yet it works fine in steam big picture and other games...
In the profile editor, the Scroll
numeric up/down (for mouse emulation) can be a negative number, but it's parsed as an unsigned integer which throws an exception on negative values. I came across this since I imagined setting a negative value would invert the scroll direction.
Set R2 to be a macro that clicks Alt-F4. Crashes application.
LMenu press
F4 press
F4 unpress
LMenu unpress
Motioninjoy is the only one which support sixaxis for DS3, but it is no longer updated and not supported with win8.1
Wish DS4Windows could add support for DS3 Controller.
Sorry for my poor English.
I get the following error when I attempt to toggle 'Hide DS4 Controller'
I'm using Windows 7.
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): A 32 bit processes cannot access modules of a 64 bit process.
at System.Diagnostics.NtProcessManager.GetModuleInfos(Int32 processId, Boolean firstModuleOnly)
at System.Diagnostics.ProcessManager.GetModuleInfos(Int32 processId)
at System.Diagnostics.Process.get_Modules()
at DS4Windows.DS4Form.hideDS4CheckBox_CheckedChanged(Object sender, EventArgs e)
at System.Windows.Forms.CheckBox.OnCheckedChanged(EventArgs e)
at System.Windows.Forms.CheckBox.set_CheckState(CheckState value)
at System.Windows.Forms.CheckBox.OnClick(EventArgs e)
at System.Windows.Forms.CheckBox.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Thanks!
Description: Whenever a DS4 controller is connected with the "Hide the DS4 Controller" option activated while Teamspeak is already open, I encounter the following message.
Could not open DS4 (MAC Address) exclusively. You must quit other applications like Steam, UPlay before activating "Hide DS4 Controller" option.
If you connect the controller and hide the DS4 controller sucessfuly and then shortly after open the Teamspeak 3, the computer will freeze until you disconnect the controller, or somehow manage to close the Teamspeak process.
Steps to reproduce are simple.
If you open DS4Windows and try to Hide DS4 Controller with teamspeak open to get the error or try to open teamspeak with the DS4 controller already hidden by DS4Windows to freeze your computer, one of the two.
Other Information:
Teamspeak 3 - 64bit Edition - Version 3.0.18.2
DS4Windows - 1.4.27
I've found profiles often (if not always) do not load when connected through Bluetooth. The controller is connected definately connected through bluetooth, the controller light is white, no features function and games don't recognise it.
I have to stop and start DS4 Windows manually to get the profiles to load.
I tried to make it run exclusively but it never worked not even after closing everything that i could possibly close without shutting down my PC.
Then i kept trying to make it exclusive which it failed, then after that i tried it again after less than a second a BSOD happened.
Even though this was because i was trying too fast a BSOD is never good
I've used the online dump analyzer and this is the result
Firstly, superb utility, have been testing it recently with various games and settings and it's been performing solidly (apart from several freezes of the tool during one particular game which required multiple relaunches).
As it varies from game to game whether to enable the 'Hide DS4 Controller' checkbox it would be useful and time-saving to incorporate the setting within the config profiles, allowing the option to be enabled/disabled changing profiles rather than opening the Settings window each time.
On further thought the main reason I assume it's not a profile option are the auto profiles that can't change the setting after game launch, which is a major drawback in convenience. Is there any way around this limitation?
In the original DS4Tool, we had the option to select the intensity of of the Lightbar's lamp. In this one, it's unchangeable, and seems to default to 100%. Two problems in that, controller battery will die faster, and that in a dark room, this feels like a light beam from the sun. It's surprisingly bright and causes reflections on the TV, not to mention it lights up the entire room.
Second feature request is a minor one, the ability to test rumble motors individually. That was something doable in XInputTest, but it doesn't work in Windows 8.1 it seems. Your tool however implemented most of it's functionality however, this is the only thing I missing.
The third one is probably the most technically difficult, but also one of the biggest features you could have. Some games don't disable mouse and keyboard controlling when a controller is active. That means that even the slightest motion from the mouse, say from a loud subwoofer, puts the game in KB+Mouse mode, and moves the view with the mouse. A Touchpad gesture that enables/disables the keyboard and mouse would be immensely helpful in these scenarios. Instead of crawling to the back of the desk and unplugging the peripherals, a quick flick through the Touchpad would temporarily disable them.
I'm not sure if the last one can even be accomplished, I am not a Windows programmer nor am I familiar with the .NET FW, but it would be an amazing feature to have. In any case your tool is insanely awesome and I would like to thank you for your efforts and hard work. Keep it up!
Hello,
Not sure if a bug or my system config, but I'm unable to bind AppsKey (via scan code or macro) to anything other than the PS/Guide button.
Using DS4W: 1.4.161 / Win7 x64
Okay thanks!
I recently started playing an old game that doesn't recognize the Z axis as a valid input, thus the LT/RT buttons don't work. I'm not sure if it would be possible to map controls to virtual controller buttons.
Win 8.1, bluetooth connection.
Is it possible to make LED turn blue on connect if driver has been started before?
I'd like to be able to do things like axis emulation with the touch pad, but right now the only method for gesture detects a swipe and will repeat it as long as your finger is on the touch pad.
So I guess I'm really suggesting two things: Touch-based stick emulation (like in a smart phone game), and swipes that can change direction, so to speak (i.e if I mapped swipes to the d-pad and swipe left, allow me to swipe right without lifting my finger for d-pad right).
It looks like Windows 10 9879 is locking the Wireless Controller preventing the use of Exclusive Mode / Hiding of the Wireless Controller.
Sorry, I don't have Visual Studio setup yet to provide more information or debug this more properly. Though I'd report it anyway, Cheers!
This happens on both my controllers. Sometimes I push the analog to the right and my character will spin for seconds. It's a tremendous input lag.
Everything works fine in wired mode.
I am on a 2015 macbookpro, running OS X and windows 10 guest OS with parallels.
i installed ds4windows and my controller works fine by USB in windows. but in bluetooth settings it never sees the controller, although i have successfully paired the controller in OS X and bluetooth sharing is enabled in the settings of the parallels virtual machine. i have tried many times to get it to connect by bluetooth in windows.
i would really like this to work
For a couple months I had been using my DS4 wired and it worked great. I just got an Intel wireless card (AC 7260) which comes with bluetooth. Unfortunately, after some troubleshooting getting it to connect via bluetooth, now it refuses to actually work in games while hidden. It still kinda works while wired and unhidden, although it's with the "1 2 3 4 5 etc." input rather than ABXY. It won't work at all while wireless, although DS4Windows acknowledges every command I input.
I've tried uninstalling the bluetooth drivers and such, but nothing has restored it to it's previous full functionality.
after the 1.4.245 update i cannot play games with my ds4 i could before but now i can't. I can still use my touchpad on the controller but the buttons won't work on any game.
Hello,
I tried your tool today, but just like in the original program, I get an IndexOutOfRangeException when I try to connect my controller via Bluetooth.
I'm using a CSR Bluetooth Adapter on a Windows 7 Desktop PC.
I attached an image, showing where the exception occurs. My little "hotfix" (which I know is bad practise since I do c# programming myself at work, though not nearly advanced to fix stuff like that) unfortunately only passes the Index exception and
throws new errors afterwards.
I really hope you can do something about that issue, without the CSR Bluetooth Stack, my adapter won't recognize anything. And I really want to play SR IV with my PS4 controller via bluetooth.
Kind regards,
Deejay
After disconnecting by holding the PS button the program doesn't recognise the controller as disconnected- still showing the controller under the 'Controllers' tab with outdated information.
The startup window that tells you how to setup DS4Windows is great and makes it much easier to use.
I had two problems getting started (first time I connected a DS4 to my PC) that may be good additions to the window's text:
Hi,
I'm a user of Windows 10 (you can find it here : https://insider.windows.com/ ), and I tried to install and use the DS4. However, even if I followed steps indicated on the website and inside the soft, the controller isn't recognized. I tried with Bluetooth and USB, but the controller isn't recognized by your soft. It's well indicated in controller list.
I hope you'll fix the problem. If you need my assistance, just ask, I'll try my best to help you to solve this problem.
There isn't an uninstall driver button and I can't find any information about how to uninstall the DS4 driver.
I have checked "Start with Slide/Scroll off" and verified it is set in the profile XML
<StartTouchpadOff>True</StartTouchpadOff>
However, the touch pad always starts on.
I have 3 profiles, each set like this. I disable the touchpad with PS+Touchpad hotkey and switch profile - the touchpad works again.
Using BT, holding XMB for 10 seconds does not register with DS4W. Instead it continues to read a connection and assumes XMB is still held down. When DS4 is connected by BT again, it will connect to my system, but not through DS4W rendering it unusable until DS4W is restarted.
...maybe something with drivers.
Sometimes, while playing with ds4windows, my controller (or, most likely, driver) lock ups pressing one button. This can only be solved by restarting ds4windows and/or scpserver.
I installed InputMapper and it does not have this issue, tested for like 2-3 hrs, while with ds4w it happens after 10-20 mins. I also noticed that file creation date of ScpServer.exe is newer in InputMapper. Maybe you just use outdated drivers?
Looking forward to see this fixed, i loved your app more than IM.
I have a smaller SSD as my primary PC drive. Because of this, my Steam Library is located on a secondary drive, so when I choose "Add Steam Games" in the Auto Profiles tab I don't get any results. I could add all of the programs one at a time, but I would appreciate the option to add the entire directory. This would also help with adding the games I have in GOG and Desura.
Sorry to bother but I can't figure what's wrong with my DS4Windows - the touchpad swipes aren't working
I set a Shift+Tab macro to Swipe Up for Steam Overlay
a Ctrl+Num2 to switch scenes in my OBS for my stream
but both arent being recognised.
I even changed to a non-macro key but they don't work either
tried redoing my profiles - no go either.
Shift+Tab used to work though
For dolphin is recommended to use the toshiba bluetooth stack.
https://de.dolphin-emu.org/docs/guides/wii-remote-plus-rvl-cnt-01-tr-connection-guide/
Toshiba Stack Page:
http://support.toshiba.com/support/viewContentDetail?contentId=4007183
However as soon as the bluetooth stack is installed the DS4Windows application does not work anymore. The controller isn't detected anymore.
I've been using this program with no problems for about 3 months now. Just today the program refuses to start up at all, either at Windows startup or when I manually start the DS4Windows.exe.
The updater says it is up to date but I have no idea what has changed to make it no longer work. I haven't installed any new programs on my computer in the past 24 hours, and the program worked fine yesterday.
yeah, I know it's currently not supported by I think the software is great but I never found a solution that gives me control over the touchpad and/or lightbar (especially the latter one needs customization, the white is not good) WITHOUT giving me a virtual xbox controller.
unlike the xbox controller I want to be able to differentiate between L2/R2, and use my DS4 as it has the buttons (especially since I already have quite a list of JoyToKey profiles which would need to be reworked), or adding extra functions on top of the standard dinput buttons (a bit like in JoyToKey where I can say Button13(PS Button)=F12 for steam screenshot)
I tested the dinput mode with cable and it works nice but I'd rather have it with BT as well.
On Windows 10 build 10074, it seems like DS4Windows is no longer able to hide the DS4 controller. I've tried every combination of reinstalling the drivers, reinstalling DS4Windows, and restarting my computer possible, but it just doesn't seem to function.
This is using the DS4 controller plugged in to the PC, not through Bluetooth. Curiously, the controller shows up as "Wireless Controller" in the Device Manager, but that may be normal. Attempting to disable the Wireless Controller device also disables the 360 Controller device, so I'm not sure there's a way on my end to fix this.
Every time a profile is opened for editing, the setting reverts to False.
Manually setting the .xml setting to True works, but it will instantly be set to False once DS4W attempts to edit it.
Alright thanks!
Windows 7 x64
Windows 8.1 x64
I'm trying to toggle right-click with L3, but releasing the button also sends rClick up. Doesn't work with any other normal button like Square either.
So i just bought a DS4 today.. well anyway I was going to install DS4Windows but clicking the installer just prompts me to a window saying the program has stopped working. Anyone else experiencing this? I need help please
I've been playing mostly KB+M games for a while so I've not needed to connect a controller. I did tonight only to find that both controllers constantly fluctuated between the standard 1.5ms all the way up to 30ms, up and down sticking at each point for a random amount of time before switching. Wired (which I can't really use because the only cable I have is like 2ft long) was solid at 4ms with no fluctiation. I recently installed some Windows updates (Win7) so I thought that might be the cause. I reinstalled my bluetooth drivers and re-paired both controllers, and nothing changed at all. I deleted the installation and the AppData folder, and quickly installed an old version I had lying around, 1.4.222 apparently from the beginning of the year. Worked fine, solid 1.1-1.6ms with not even a touch outside that range.
Something that was changed in the presumably large changes required to get it functioning on W10 properly, is definitely causing this. TBH while I'd love this to be fixed for obvious reasons and future updates and feature additions, but I'd be fine with using an older one indefinitely if this ends up being a very specific conflict with my system or it never gets fixed.
EDIT: Tried Version 1.4.269 and it's fine. Highest I can get it to go is 2.xx ms and that's only for a split second.
I boot my machine into Steam Big Picture and so when I connect my DS4, it always gives the "could not open exclusively" error. This often screws up other applications that want to use the useless DualShock controller instead of DS4Windows' Xinput controller.
I found a way to fix this: Disable "Wireless Controller".
Now you never get errors about Exclusive Mode.
It looks like you can disable devices programmatically. I'm not sure if there's a way to uniquely identify the DS4 and since it appears to be a generic driver, silently disabling it sounds like a bad idea, but might be a good option to add.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.