Because of the freedoms offered by the PC as a platform, when it comes to choosing input methods, you have more to choose from than any other gaming platform in history. I see that freedom of choice as PC Gaming’s strongest trait, though at the same time, it raises a barrier to entry and costs the user a portion of their free time. In this and in the future, I’ll attempt to make these choices as clear cut as possible by providing all the information in one place.
- Potential Problems
- Game Compatibility
- Setup and Advanced Configuration Guide
- Alternative Controller Options
- Analog Stick Extensions
- Looking to the Future
Why? What can it do?
To jump right to the meat of it, below is a list of functions and features that are easily achievable with the DS4, using the DS4Windows driver:
- Any button and/or reasonable combination can be mapped to:
- any xinput command, retaining full analog data (meaning analog sticks, triggers, and tilting are interchangeable)
- almost any keyboard or mouse input (including volume and media keys)
- a special action including but not limited to launching programs, macros consisting of mouse/keyboard/xinput buttons with customs timings and repeating options (can also trigger LED colors/flashing and rumble), macro recording, disconnect, etc
- Any button can bet set to:
- toggle mode, staying active until you press it again
- instantly change the LED color while pressed/held
- trigger a vibration, with variable strength for both the light and heavy motors
- Special inputs including:
- fully analog sixaxis titling
- touchpad emulation of mouse movement and all 3 click types, including multitouch scrolling
- in place of mouse emulation, 4 directions of 1 finger touchpad swipes act as inputs to be mapped to anything
- 2 finger swipes can be used to swap profiles on the fly, which can change the led color and behavior so you always know which you’re using
- any input that can be held (so everything but swipes) can act as a “shift modifier”, altering every other input to a whole second set (defaults to fall back to the original map, and a new LED color can trigger while in shift mode)
- Adjustments can be made including:
- deadzones for triggers, sticks, and sixaxis tilting (plus a sensitivity curve for sticks)
- mouse touchpad settings to enable/disable any of the mouse related features, as well as adjust the sensitivity, scrolling sensitivity, whether it is active when you start the controller (toggled on-the-fly with PS+touchpad touch)
- whether it outputs dinput instead of xinput (wired only)
- whether or not it hides the original dinput signal from the PC (extremely necessary as some games detect dinput and it can conflict)
- how long the controller takes to disconnect on idle
- whether or not it uses wired data only to conserve power while charging through the PC
- which xinput ports are used, allowing play alongside ANY other xinput controller including DS3s (which use a conversion app of their own)
- The LED bar can be set with behaviors for charging, normal, under a specified battery percentage. That includes RGB rainbow at a custom cycle speed, and a gradient between two colors based on the battery percentage. And that’s all before changes based on button inputs. You can have a rainbow gradient that loops every 10 seconds, that flashes when your battery is low, pulses like a heart when it’s charging, splashes specific colors at specific levels of brightness when any button is tapped or held, and color changes/flashes while macros execute.
- You can automatically switch to set profiles based on the active program, as well as launch programs when switching to certain profiles.
- The drivers automatically update and bring new features and improvements all the time, but you can easily disable updates for a consistent experience. All builds are freely available on github. No ads in the program or even on the developer’s site, and it requires no connection after the very first setup.
- With the drivers simply off (even using the stop button, you don’t need to close the application), the controller is also supported in a number of modern games. While the speaker and microphone have not been implemented thus far, developers can and have utilized the light bar and touchpad, exactly how it is implemented on the PS4. DS4Windows makes few solid changes, and thus if the app is simply not running, the DS4 functions as it would had you never installed any drivers at all, making it very flexible when it could otherwise be a nightmare to access DS4 specific features in games that code for it. With the app on and “Hide DS4” selected, the PC and all games see it as an xinput controller, which means there are zero compatibility problems, just as it would be with any other native xinput controller.
How can only the DS4 do all that?
Good question… Outside of the DS3 (using BetterDS3), no other common controller option on the PC offers ANY settings or configuration at all. You can use programs like Xpadder to bind functions to controller buttons, but often doesn’t work as intended when trying to both rearrange the xinput inputs and map m+kb inputs at the same time. Xpadder or similar apps are a nice tools to have even for the DS4, for certain things involving mouse emulation and multi-tiered mapping profiles, but it isn’t capable of everything DS4Windows is. Most games fail to include controller remapping, so if they aren’t manually configurable in config files, your only option with a standard xinput controller is to use something like x360ce, which involves dragging files into the game’s folder and has numerous compatibility problems. DS4Windows does all mapping before the xinput signal is even created, so there is no case where remapping isn’t possible. That alone makes it a strong recommendation for those with certain disabilities that might not be able to consistently reach certain buttons. A racing game played with thumbsticks only (original Gran Turismo style), is totally possible even if none of the games offer any mapping at all.
There are advantages outside of the software as well:
- all DS4 models are wired AND wireless. They are fully capable of either at any point, unlike the 360 controller which comes in two separate SKUs that can only operate in one way
- all DS4 models come with a rechargeable battery, and while it’s not instantly accessible, you can replace or upgrade it (it’s a standard type) via basic disassembly
- the DS4 uses two common standards, micro-b USB and Bluetooth, and thus any standard cable will work (they come with most smartphones), and most internal (common in laptops/tablets and high end motherboards) and external Bluetooth adapters are compatible for wireless functionality
Microsoft’s controllers don’t include batteries (only in bundles with a premium price) and demand AAs by default, and both use proprietary wireless adapters (the XBO model hasn’t even released yet). The XBO controller is more in line with the DS4 in terms of standard cables and wireless+wired in one SKU, while the 360 controller lacks both. If you buy a wireless 360 pad, you can NEVER use it without the sizeable and very proprietary wireless adapter, even if you have the play and charge kit cable. Meanwhile the wired option is hardwired with a huge, permanently attached, non-replaceable cable.
Finally, there is one other driver alternative to DS4Windows.com’s offering. InputMapper.com’s solution, a branch of the original application, offers some additional options for macros, analog axis tuning, and a slightly more visual mapping screen that some might prefer. However, both the site and application include advertisements, boldly ask for donations to remove them, and the application itself is clunky and lacks a number of key features and functions of DS4Windows. Most notably, it lacks the ability to map between analog inputs, even going as far as to outright crash the program when I attempted it relatively recently. While I fully recommend DS4Windows.com’s application over others, both are designed in a way that you can swap between them with relative ease, if you find uses for both.
- Battery Life – People often cite the DS4s short battery life, and while I do agree to some extent, it can be helped by setting the LED bar to a low brightness (even a few % is vibrant enough, while the default 100% is obscene and actually annoyed console users until Sony added a setting in the PS4’s menu to adjust it). Wired or charging while playing is still an option, and you can even choose from various lengths/colors/shapes/materials for the cable to suit your needs/preference, as it’s a standard.
- Updates – Certain updates of DS4Windows caused it to not work properly until it was hot-fixed, and others have broken older mapping profiles. This happens even with the largest companies in the business, so it’s relatively expected. It can be prevented entirely by simply unchecking the “Check for Updates at Startup” option, and again, you can go back to any previous build as all are available on github.
- Windows 7 Pairing Bug – A bug specifically with some Windows 7 machines can make pairing not work as intended. This has nothing to do with DS4 Windows or even the DS4, but rather Windows. You’ll know this has occurred if after pairing the controller disconnects on its own within about 10 seconds. Once paired properly it causes zero issues, but pairing to another device and back can of course trigger it again. The solution was a challenge to discover, but it basically just involves right clicking the controller in the Windows Add Bluetooth Device menu, checking the drivers checkbox and hitting apply, doing the same on the controller that pops up in the Devices and Printers menu, and then clicking the few setup messages that pop up near the task bar. It seems uncommon, but if it does occur on your Windows 7 setup, pairing takes just a touch longer than it would otherwise.
- Windows 10 Issues – Microsoft changed the way Windows handles controllers, and thus it makes it hard for DS4Windows to take exclusive control of the controller to hide the dinput controller from games and apps. This broke the application for a short while, but the eventual solution in an update basically made it so that on Windows 10, if “Hide DS4” is checked, it quickly restarts the windows explorer and grabs control. This is a notable issue that’s all Microsoft’s fault, and while the solution works fine for the most part, it can potentially cause some issues trying to connect a controller mid-game. Dark Souls is notorious for having numerous controller problems, but with DS4Windows, connecting/re-connecting DS4s mid-gameplay isn’t a problem on Windows 7/8, and it works as it would on a console, but on Windows 10 your mileage could vary greatly for the time being.
But game compatibility! Isn’t the 360 pad the standard?
This is an incredibly common misconception… The Xbox 360 controller itself is not a “standard”, the xinput API is. The 360 controller uses xinput “natively” via drivers automatically attained by Windows 8 and 10. The DS4 automatically attains dinput drivers and can be seen by games as specifically a DS4, allowing games that would like to, access to the LED light and touchpad, and they can toggle to Sony button prompts. dinput has no support for rumble, and is supported far less often than xinput. Because of this, you need an application to convert dinput into xinput. As explained above, the best currently available is from DS4Windows.com. If the controller supports xinput, regardless of whether or not anyone considers it to be “native”, the games will see it the same as any other. I repeat, there is zero difference in support by games between the DS4 and any other xinput option, as long as the “Hide DS4” option is selected and functioning.
This mentality also ties into on-screen button prompts. The xinput standard was designed by Microsoft, and thus a vast majority of the devs that use it also use ABXY and the corresponding colors. I’ve spent FAR more time on Sony and Nintendo platforms that Microsoft’s, but I’d say without a doubt that Microsoft has absolutely nailed the color/letter associations and positions of the face buttons. Nintendo used the same letters and colors first, but on an ancient platform before they had any idea what gaming would become. Microsoft had enough of an understanding to implement it logically, using the arrangement the Dreamcast chose while adding better color associations. If you want to use a controller on PC, you need to learn Microsoft’s layout, regardless of which controller you buy. The positioning by default of all the buttons is identical across all of the major controller options. The only issue comes up if you hand the controller to a child or an elder, people that would need to look down to match the icon on screen with the color on the controller. You can paint or replace the buttons of the DS4 if it’s enough of a problem.
Read our setup and configuration guide! I explain the short setup process, go into more depth with practical applications for the various settings, and even include a custom mapping file for navigating almost any game launcher or menu using only the DS4 (something no other controller is easily capable of).
Alternative Controller Options
I’ve tested 360 wired and wireless, XBO wired, PS2 w/ adapter, PS3, PS4, Razer Sabertooth/Onza, a few Logitech pads, and various 3rd party 360 controllers like the Rock Candy and Afterglow models. There are a few cases where I’d recommend something else:
- If you already own another capable xinput controller and aren’t looking to spend, or there is a large premium on DS4s in your area
- If you have a console mindset, meaning that you have zero urge to differ from exactly what was intended by each developer and want no additional functionality
- If you want an option that will work 100% of the time on nearly any system with little to no setup time (Windows 7 and earlier can sometimes still require the download and install of Microsoft xinput drivers for the 360/XBO pads)
If price is a huge concern, make sure you’ve looked around at sales, and do consider whether or not the controllers include batteries and/or charging cables. I’ve purchased multiple DS4s at $30-40 each, which is extremely close in price to the featureless alternatives. That said, it’s going to be impossible to beat the value of some used wired 360 pad on craigslist or a garage sale going for $5-10. The DS4 is a comparatively premium product, but don’t just assume the $59.99 MSRP is rock-solid and be turned away either.
The Xbox One controller has a relatively large proprietary wireless adapter coming on October 20th 2015 for $25 (2x what Bluetooth adapters go for) along with an app of some sort that includes some basic remapping. Very little solid information out there at the moment, but they are going to have an insanely hard time beating the incredible functionality of DS4Windows. That “app” is claimed to be Windows 10 exclusive, and it might even be only for their coming “Elite” controller, more info further down. The one unique feature of the standard XBO controller, is the haptic feedback triggers. The current xinput API doesn’t support them, and thus they’ve yet to be implemented even now that Windows 10 has launched. While the additional rumble motors don’t provide additional functionality as the DS4’s touchpad can, they are very satisfying if implemented properly. As it stands, developers simply can’t implement them even if they wanted to, and if Microsoft do update the API, it’s still something devs have to go out of their way to implement in each title. Devs do so for the DS4’s touchpad on console and occasionally on the PC, but DS4Windows makes it useful regardless. Like the DS4, the (revised) Xbox One controller has a 4 pole 3.5mm headphone/mic jack on the bottom of the controller. The DS4’s does not function for PC use yet, but Microsoft’s option does work for both stereo audio and mic-in on Windows 10, and it’s said to be supported through the wireless adapter as well.
If you want a controller that doesn’t ask you for anything, but isn’t capable of anything special in return, your options expand, and the choice comes down to just visual/comfort preferences. You have only two wireless options for the time being (360 and Logitech F710), but all of the generic Xbox/xinput controllers interact identically with games. I’ve found Logitech’s controllers to have extremely lacking and unpleasing d-pads and triggers. Razer’s offerings are good enough, but prone to breaking and needlessly expensive. The official 360 pad is the go-to standard because of its insane presence on the consoles, along with the fact that it’s cheaper by the day and built well. Third party 360/XBO controllers can work with PC, and while they can be extremely cheap and unique looking, they aren’t built to last, and can occasionally require manual edits when installing the windows controller driver so it finds the correct device ID.
You’ll notice I’ve said almost nothing about shape or comfort preferences. I, personally, think the DS4 is the best controller I’ve ever held. It’s a mix of the symmetrical design of Sony’s past, and that hand forming palm-grip ergonomics of Microsoft’s. It’s not mechanically perfect, there’s room for improvement, but overall I feel it’s the closest I’ve found. I won’t tell you what to think, as this is the one thing the majority can go out and test right this minute. Any Best Buy, Target, Walmart, Gamestop, Toys R Us, etc, should have the XBO and PS4 controllers out for you to try. Though do take the next section into account when considering their analog sticks.
Aesthetically, I feel Microsoft have knocked it out of the park with the Xbox One controller, especially it’s limited edition variants. Their recent branding, packaging, and visual design have been really appealing. Do note however that the front facing LED on the controller is permanently on (usually white) unless you disassemble the controller and use a soldering iron to remove it. The DS4 uses a replaceable ribbon cable to connect the main board to a smaller board holding the RGB LEDs, which you could more easily unplug, or simply turn it off with the options in DS4Windows.
An Extra Recommendation: Analog Stick Extensions
Regardless of which option you go with, on any platform, I highly recommend looking into analog stick extensions of some sort. You have a few options. With some pads, you can disassemble and replace the stick entirely with longer ones, or ones with threading to screw multiple sizes into. The easiest and most common option is from KontrolFreek. Their product is just fine, but I do feel they overcharge a bit, so look for sales if you can.
They offer multiple shapes, sizes, and fits. The Xbox One option fits XBO and Wii U controllers. The PS4 and 360/PS3 options seem nearly identical, and fit 360, PS3, and PS4. The newest PS4 controllers altered the rubber on the thumbsticks and made them a hair smaller, so assuming there is a difference, if you buy the 360/PS3 size and they wiggle/rotate a touch on a DS4, you can cut a small square of a business card to place between, and they fit perfectly.
If you play racing games, shooters, or anything that rewards precision input from the sticks, these offer a tremendous advantage. You may wish to take them off to play games like Skate, OlliOlli 1/2, Super Meat Boy, and others which want fast/large sloppy movements. These will feel weird when you first try them, but if you stick with them for applicable games, I promise you that you won’t want to go back.
Basic covers and extremely short extensions are also available, if your priority is changing the feeling/shape of the stick, but don’t really want the extra length. I personally highly recommend designs with domed tops (like the PS3 and Wii U have) and a surface that’s as smooth as possible, as it makes the most sense scientifically, more and more so the longer the stick. Numerous textures and shapes are available, so take your pick, but be warned that fancy raised designs might be uncomfortable and offer less grip. Many users noted that with the early PS4 controllers, the rubber was weak and wore away easily. These extensions and covers have the added bonus of preventing that entirely. I own a launch DS4 and two newer models, and none show any stick wear because they’ve all had a set of KontrolFreeks on from the start.
Looking to the Future
Valve’s “Steam Controller” is launching on November 10th 2015 for an MSRP of $49.99, even including tradable copies of Rocket League and Portal 2 if you buy before that date.
While I’ve obviously not gotten my hands on the controller, I can provide some input on the topic. The first public iteration lacked a traditional analog stick and analog triggers, along with a completely non-standard button arrangement and a general lack of practical inputs. It would have proved useful in certain scenarios, but was ultimately doomed to fail outside of that. Many months later we see a more familiar design that’s more a mix of old and new. Its design adds a tactile click to the end of analog triggers, two haptic touchpads (replacing a d-pad and right analog stick), and two single input paddles on the rear. Its success relies heavily on its driver implementation, and the practicality and feedback they can manage with touchpads. Even though it has two touchpads, those replace original functions of an xinput controller, unlike the DS4 which adds a touchpad in addition to every other element. Will the controller function properly outside of games or in supported browser games (unity web-player supports xinput controllers excellently)? Is even possible to have mouse cursor and click control with the full xinput maps at the same time, like the DS4 can? Does the mapping allow for multiple layers or shift buttons?
There are tons of questions and concerns that can only be resolved with hands-on time, and I can’t wait till I get the chance to test it. Hardware wise I feel like the inclusion of that much glossy plastic was misguided. I also question why there aren’t more than just 2 rear buttons as well as more on the front, as a fully customizable controller would surely benefit from that kind of flexibility, and yet there’s tons of unused space on both the front and back of the final design… If my assumptions are correct, for the most discerning users, I feel this is likely to be an addition to your stable of input options, rather than a replacement for your current controllers. It should function properly alongside other options for local multiplayer, and it will likely be most useful as a keyboard and mouse alternative specifically for couch+TV play.
Microsoft’s Xbox One “Elite Controller” is launching on October 27th 2015 for the whopping MSRP of $149.99. It includes the USB cable (which all other non-bundle models of the DS4 and XBO controllers do not), but even at that ludicrous price, it doesn’t include a rechargeable battery. And that’s before the $24.99 each for a battery and the wireless adapter that launches October 20th 2015. The wireless adapter is said to support up to 8 controllers wirelessly at the same time, and 2 stereo headsets or 4 mono chat headsets via the 3.5 mm jacks on the bottom of each controller. To be honest I’m not sure how you’d even manage that many lines in and out, especially in games, but maybe it all functions as a single mic in and stereo out, which should work great for split/same-screen games with online multiplayer, or for recording audio for a multiplayer let’s play without a more expensive audio setup.
It features a built-in system for analog stick replacements and extensions, with the same for the d-pad, which one would assume third parties would release alternatives to Microsoft’s official offerings. There are removable/arrangeable paddles on the back, reminiscent of the custom controllers sold by SCUF. Finally, they added adjustable trigger stops, something that’s often used by console FPS players, though simply using the bumpers to shoot instead is often the better (drastically cheaper) solution.
An official “app”, said to be releasing for the console and Windows 10, claims to allow you to assign any xinput command to any button (excluding the analog sticks it seems…), make as many profiles as you want, and store 2 in the controller to be toggled between with a physical switch. While that adds some functionality, unless there’s a lot more to it, it still seems extremely limiting. I’m hoping for those with 360 and the standard XBO pads, that the app itself comes to more than just Windows 10, and functions as DS4Windows does, rearranging the inputs in real time, rather than relying on memory in the controller itself. Assuming it’s simply reprogramming the controller, that would mean the rear paddles could only be mapped to controller functions, rather than mouse/keyboard inputs, special commands, shift buttons, etc.
It’s an expensive controller, but with the presumed flexibility of the replaceable parts and 4 additional buttons, it could have been new alternative for the PC with well implemented drivers. If my assumptions are correct based on the statements on the official site, they might not be providing better drivers at all, and the way they implemented the paddles would mean even a custom fan-made driver couldn’t see them as separate inputs. Microsoft has the power to do much more, but it doesn’t seem like they even tried.
To put it simply, the Sony’s Dualshock 4 is not only the best feeling controller I’ve ever held, but by sheer happenstance, it’s become the most powerful and most versatile controller available for the PC, because of the hard work of a few unofficial developers. It’s not for everyone as the primary app hasn’t been ported to Mac or Linux (though there are other alternatives for both, even including mapping/led/touchpad/profiles/etc in some), it’s obviously more expensive than a used 360/PS3 pad that you probably already own, and some just don’t care for any control or flexibility. Otherwise, it’s a fantastic option that can achieve amazing things with very little effort, allowing you as a user to get around the restrictions of ignorant developers, all while playing nicely in co-op with every other controller on the market. Think of it as adding you your stable of controllers, rather than moving to a whole new ecosystem. It may have its first real competition when the Steam Controller launches next month, but even then the discerning user will likely want to own both because of the unique capabilities and ergonomics each provide.
If you have any questions, concerns, or additional points you’d like me to cover, please leave them in the comments down below. For full disclosure, I have no active communication with or financial interest in any of the developers or companies mentioned. I made a suggestion ages ago that eventually made it into DS4Windows (Xinput slot selection), but that’s the extent of it.