You are on page 1of 36

Download newest version

If you know another language and want to help translate DS4Windows, please translate
the text in your language here. If the language you want to translate in, add your
language to the rightmost part of the sheet posted above

Version 1.5.18
● Removed component use for ScpVBus related classes
● Loosened enhanced precision curves
● Made slightly better window size saving routine
● Now use local thread data for InputMethods method calls rather than a shared struct
array
● Changed UDP port opening routine
● Updated ToolsVersion project attribute
● Fixed UDP start routine to actually use wait time rather than busy loop

Version 1.5.17
● Changed UDP server buffer usage
● Changed UDP server toggle in GUI to make sure UDP server is initialized outside of the
main GUI thread
● Added usage HID Device Capability flag check during device detection. Related to Issue
#498​ regarding Hori PS4 Mini controller

Version 1.5.16
● Disabled AllowDrop setting for DS4Form
● Removed formatting from profiles listbox
● Increased timeout for tracking second instance exclusive mode workaround
● Fixed Run At Startup option. Window security issues caused problems with the last
release
● Reverted to using asInvoker in manifest file
● Fixed start minimized option
● Removed unnecessary SetVisibleCore override
● Changed options form check after clicking window close button. Ensures app does not
crash if profile editor is still open while on Controllers tab
● Changed ErrorReport option for project build settings. It does seem to matter even
outside the IDE
● Fixed issue with app not being restored from launching a second session

Version 1.5.15
● Now force launch as administrator in the application
● Removed HidGuardian usage and purged extra routines
● Added simple gyro calibration check to ensure calibration is not performed if proper data
is not found
● Added ReaderWriterLockSlim use to UDP server for locking pool array index
● Corrected an UnregisterNotify call used when quitting app
● Corrected KB+M action resetting when a device is disconnected

Version 1.5.14
● Moved output data copying to dedicated thread for USB and Sony Wireless Adapter
connections. Lead to a good speed boost
● Added flag to allow skipping a lock when applicable. Skip thread event queue check if no
events are in the queue.
● Corrected unregister notify call
● Changed index increment placement for UDP server routines. Hopefully it resolves issue
#454​ for other people. It does on my machine.
● Fixed extra utilities control display in flow control of Settings tab

Version 1.5.13
● Tweaked main form class
● Raised mouse stick offset
● Added SuppressUnmanagedCodeSecurity to Color Dialog for some unmanaged calls

Version 1.5.12
● Added SuppressUnmanagedCodeSecurity to main DS4Form class. Useful for auto
profile routine calls
● Changed WndProc call to register for more specific device change events
● Loosened enhanced precision curves further

Version 1.5.11
● Fixed device event queueing

Version 1.5.10
● Removed old Any CPU build targets
● Replace stack with simple array in UdpServer
● Enforce static usage for SystemEvents.PowerModeChanged
● Loosened enhanced precision curves

Version 1.5.9
● Fixed issue with useDInputOnly variable not being in correct state
● Added change to reset active KB+M controls after unplugging controller
● Added different gyro trigger conditional. Trigger condition can now be treated as an OR
condition rather than just an AND condition
● Resolved name collision with Log class and Diagnostics namespace
● Fixed out of range error while checking the selected macro index. Change provided by
@justalemon
● Increased timeout for exclusive attempt process. Fixes another issue with exclusive
mode permanently disabling devices.
● Use stack of objects with UdpServer

Version 1.5.8
● Fixed problem with unplugging controllers causing cross thread issues

Version 1.5.7
● Changed timer usage in main form
● Fixed issue with SONYWA connections having invalid calibration data
● Removed UI thread usage from unplug routine
● Fixed variable scope for swap profile routine

Version 1.5.6
● Various tweaks to speed up main form
● Removed some older unnecessary variables

Version 1.5.5
● Only refresh last message text once after closing Options form
● Fixed UDP server memory leak

Version 1.5.4
● Delay UDP port change for when UDP checkbox gets unchecked
● Changed behavior of auto profile and hotkeys timers
● Fixed minimize to taskbar behavior

Version 1.5.3
● Integrated UDP server that can be used with Cemuhook. UDP server is disabled by
default and can be enabled in the Settings tab.

Version 1.5.2
● Reduced overhead of message tips for Settings check boxes
● Added unchecked blocks to help speed up state conversion

Version 1.5.1
● Removed Form_Resize from Options form
● Loosened Enhanced Precision Curves
● Enable server garbage collection mode. Application will use more memory in exchange
for better performance
● Small tweaks to program entry

Version 1.5.0
● Added SuppressUnmanagedCodeSecurity attribute to ScpDevice class. Lead to a good
speed boost
● Use unsafe array pointers when accessing gyro and accel byte arrays
● Fixed minimize to tray option

Version 1.4.123
● Removed some unused classes and tweaked some build settings
● Trimmed hotplug routine
● Program now scans for possible stale HidGuardian whitelist entries on startup
● Loosened enhanced precision curves
● Updated target framework version to .NET Framework 4.6.1
● Skip gyro calibration routine for Nacon Revolution Pro Controller 2
● Updated ViGEm build to use newer ViGEmClient library
● Minor tweaks to ViGEm build
● Fixed problem with null reference errors occurring with the UdpServer builds due to
sleep mode

Version 1.4.122
● Flawed build. Check version 1.4.123

Version 1.4.121
● Removed drag drop importing of profiles from main window. Good app speed boost.
● Do not remove auto profiles entries for currently uninstalled apps
● Removed unused AlreadyRunning form
● Make comboboxes not accept keyboard input for profile switching
● Make sure controller reading can be started again when switching auto profiles
● Changed enhanced precision curves
● Added device info for a generic DS4 gamepad
● Changed logic for implicit stick mouse dead zone
● Corrected stick angles and stick dir unit values. Used for KB+M actions

Version 1.4.120
● Fixed issue with profiles listview being partially hidden after closing Options form
● Removed Application.SetCompatibleTextRenderingDefault call. Text rendering is slightly
different but application performance is greatly improved
● Added minimize to taskbar as a setting
● Raised max for sensitivity options
● Changed lookup device name for DS4 v2 audio device
● Fixed issue with USB sending constant output reports. Only copy relevant output bytes
for BT.
● Removed custom theme for debug list view
● Added disconnect options to tray menu

Version 1.4.119
● Loosened touchpad jitter compensation parameters
● Fixed failed to unplug message from appearing when switching profiles using SONYWA
● Take stick rotation into account for axis to button mapping routine
● Hori PS4 Mini controller support added by jdfeng
● Fixed timeout disconnect issue caused by changes in previous version
● Removed sending output report when charging status changes for SONYWA
● Changed headphone support to only grab audio volume when output report changes.
Let native device handle volume changes otherwise

Version 1.4.118
● Use synchronous write operations for USB and SONYWA connections again
● Send output report to SONYWA controller when charging status changes

Version 1.4.117
● Fixed hover button color in Options form
● Removed controller array scan from each report process
● Updated TaskScheduler to version 2.8.0
● Hold max and min lightbar color for pulse charging animation so both extremes are
exposed for a longer period of time
● Changes to hopefully work around hotplug issues with Bluetooth controller connections
on Windows 7
● Corrected order of key releases when using Win + Print Screen
● Do not restart service when changing dinput option in profile

Version 1.4.116
● Ensure that touchpad packet data is copied only when an updated packet is detected
● Changed to have extras string removed from profile when reverted back to defaults
● Changed to make sure to use profile lightbar color when syncing controller to Sony
adapter
● Loosened Enhanced Precision curves for sticks

Version 1.4.115
● Updated version number of DS4Updater

Version 1.4.114
● Bundled version 1.2.8 of DS4Updater.exe
● Changed USB and SONYWA connections to use a dedicated output thread
● Use unsafe memory pointer usage for output report methods and gyro data copying
● Removed use of rectangular array for CRC32 calculations. Now use one dimensional
array

Version 1.4.113
● Changed some array copying to use unsafe memory pointers
● Use declared unsafe blocks in project
● Added CRC32 data validation for Bluetooth connections
● Added delay for device enable routine
● Now force disconnect for wireless controllers when suspending

Version 1.4.112
● Changed stop routine to call StopUpdate for normal device removal and close HID
device earlier
● Make sure to populate oldprofilepath when refreshing profiles
● Corrected appdata path display for SaveWhere dialog
● Changed timer usage for RecordBox
● Changed DS4Updater to automatically launch DS4Windows after update is complete
● Updated DS4Updater to version 1.2.7
● Changed how language list is loaded for LanguagePackComboBox

Version 1.4.111
● Use tasks for some WebClient events. Reduces input lag
● Fixed config loading so Welcome Dialog window uses the language setting

Version 1.4.110
● Updated DS4Updater.exe to version 1.2.6.0
● Changed timer usage in Welcome Dialog to run routine in a different thread
● Changed locale initialization to allow set language to be used in Welcome Dialog
● Changed Auto Profiles form to use environment info for finding start menu programs
path
● Changed to reset rumble state when switching profiles
● Removed Management assembly dependency from project
● Changed how ScpVBus device is checked. No longer using WMI which had resulted in
caching issues
● Added Open Program Folder link in taskbar
● Removed IWshRuntimeLibrary assembly dependency from project
● Updated layout of some Chinese versions of forms
● Added some minor HidGuardian utilities (template AffectedDevices, clean old whitelist
entries, regedit shortcut). DS4Windows has to be run as admin in order to have access
to those utilities
● Added language switcher which was implemented by czukowski

Version 1.4.109
● Fixed problem with localization files not being found. An extra config file is now included
which is needed for language packs to be found
● Changed audio device search routine to no longer use a portion of an audio device
name that is susceptible to localization
● Changed headphone volume curve to more closely resemble control outside of program
● Fixed output curve options for sixaxis controls
● Changed sixaxis dead zone defaults to reflect recent changes
● Corrected color used for swipe control labels
● Fixed swipe controls and 2 finger swiping to change profiles. First touchpad touch data is
populated properly again.
● Changed exclusive mode routine to no longer quit when disabling a device fails. This
change has been shown to keep a DS4 from getting permanently disabled after
disconnecting the device. The change was needed by Broforce on my system when
using the old exclusive mode trick.
● Fixed problem with rapid mouse action clicks when using touchpad controls

Version 1.4.108
● Fixed device plugin changes while switching profiles
● Added trackball mode for touchpad
● Fixed index bug in hotplug routine
● Updated Task Scheduler to version 2.7.2
● Changed six axis dead zone calculation to be a proper dead zone

Version 1.4.107
● Trimmed code run for touchpad untouched path
● Removed extra gyro controls dead zone. Necessary to use DS4 as a steering wheel

Version 1.4.106
● Update DS4Updater version number in DS4Windows to latest version

Version 1.4.105
● Updated DS4Updater.exe. The updater now uses the user's Downloads folder to
download the latest DS4Windows archive. The file will not be deleted by the updater.
● Use delegate method for iterating over the DS4HapticState array. Grabs struct instances
by reference rather than making new copies
● Added main lock again for USB and SONYWA when creating output reports

Version 1.4.104
● Use only one output array for USB and SONYWA
● Changes to how output reports are sent
● Use event callback to get audio endpoint volume

Version 1.4.103
● Minor tweaks
● Only load Options form when needed. Option forms now takes a couple of seconds to
load

Version 1.4.102
● Using Visual Studio 2017 as main build environment
● Updated DS4Updater.exe
● Removed new DS4State object creation per poll. Decreases input lag
● Changed some background and colors to better accommodate High Contrast mode
● Loosened Enhanced Precision curve for stick mouse
● Fixed macro binding for multiple touchpad swipe controls

Version 1.4.101
● Changed stick mouse speed. Removed old initial speed offset
● Changed to skip macro array check if a macro is not in use
● Fixed custom color preview when color dialog is opened from Controllers tab
● Tweaked layout of some Russian forms
● Fixed issue with saving window location when form state is not normal
● Added routine to manage HidGuardian whitelist key. DS4Windows will write the whitelist
key when started and delete it upon quitting. Currently only works if DS4Windows is run
as admin (will fail silently as a normal user)
● Changed portions of output report routine
● Various tweaks to decrease input lag

Version 1.4.100
● Updated DS4Updater to version 1.2.3
● Added delay before executing program linked to a profile
● Added initial support for the Nacon Revolution Pro thanks to Yuki-nyan
● Fixed issue with service changing when changing the XInput port range
● Added option to export log text to a text file
● Added version information to log tab messages
● Fixed problem with some scan codes used for multimedia key events
● Added saving of form position upon exit and restoring form position on startup
● Corrected some form control alignment issues

Version 1.4.99
● Updated DS4Updater.exe
● Added minor tweaks
● Added Razer Raiju VID and PID information. Other reports seem to suggest that support
for the Razer Raiju should work fine in DS4Windows with the new information but I have
no way to test that

Version 1.4.98
● Send extra output reports as needed to prevent the lightbar color from getting stuck on
the wrong color
● Changed to have extras parsed before actions are executed
● Lowered times used for taps and holds in macros
● Added x86 as a platform target
● Added linked profiles support. Profiles can be linked to a specific controller ID rather than
by controller slot number
● Only load profiles as needed rather than at program startup

Version 1.4.97
● Reduced gyro mouse deadzone
● Updated Hide DS4 Controller checkbox routine so it waits for service changes to finish
● Corrected messages used for touchpad toggle
● Changed device detection to make sure a charging controller paired via Bluetooth is not
seen twice by DS4Windows
● Added experimental gyro calibration support
● Tweaked updating of output report

Version 1.4.96
● Fixed mouse wheel delta value used for events
● Fixed issue with multiple unpaired Sony dongles not being detected
● Updated Spanish translation provided by jose350
● Worked on translation file support
● Fixed multiple controller scans occurring while changing Dinput only mode in Options
form
● Added headphone volume support for DS4 v2 controllers connected via USB

Version 1.4.95
● Reset gyro trigger and touchpad disable invert menu items when loading profile settings
● Fixed smoothing buffer routine for Gyro Mouse
● Made touchpad jitter compensation a default option again
● Changed values used for touchpad jitter compensation mode
● Trimmed SixAxis data interpretation
● Split pulse flash duration and pulse charging duration into segments to reduce CPU
usage
● Various minor tweaks to improve performance

Version 1.4.94
● Moved ControlService instance to a separate thread. Further reduction in input lag

Version 1.4.93
● Replaced BackgroundWorker instance with a regular Thread. Reduced CPU load and
reduced input lag

Version 1.4.92
● Changed thread affinity of BackgroundWorker responsible for bringing DS4Windows to
the foreground while attempting to open a second instance. Improves performance of
entire application. Reduces input lag
● Changed the priority of some threads

Version 1.4.91
● Added sleep time before hotplug routine is launched. Needed sometimes for lightbar to
work properly when using BT
● Changed thread affinity of DS4Device objects. Drastically reduces input delay
● Changed various parts of DS4Form to improve GUI performance
● Changed some usages of timers to use System.Timers.Timer
● Reduced size of latency calculation buffer
● Raised timeout thread interval to ensure controller is seen as inactive by Windows
before disconnecting

Version 1.4.89
● Changed idle disconnect lightbar color routine to use an EaseOutQuad curve rather than
a Linear curve
● Corrected bounds used for touchpad disable invert setting. PS button is now selectable
● Changed touchpad jitter compensation routine

Version 1.4.88
● Updated .NET target framework version to version 4.5.2
● Updated TaskScheduler to version 2.5.28
● Added option to disable touchpad mouse inversion while holding a selected button or
combination
● Added offset for touchpad mouse
● Changed mouse offset used for stick mouse
● Lowered speed factor used for stick mouse routine
● Minor changes to exclusive mode routine

Version 1.4.87
● Corrected calculation of touchpad X coordinate
● Removed many unnecessary state object copy calls. Good bump in XInput performance
due to this change.
● Grab and use timestamp data from DS4 for use with gyro mouse
● Adjust internal gyro mouse values
● Add Finger on Touchpad back as a shift modifier

Version 1.4.86
● Corrected bounds issue with rotated coordinates for LS and RS
● Added various settings for sixaxis controls (anti-dead zone, max zone, curve)
● Fixed sixaxis dead zone calculations
● Enforce new default BT poll rate in Options form
● Take poll rate into account for gyro mouse
Version 1.4.85
● Added option to use gyro roll to control horizontal gyro mouse movement
● Added axis inverting functionality for touchpad mouse
● Change to attempt to exit the application cleanly in more situations. Should fix odd
crashes at shutdown
● Make default Bluetooth poll rate 4 ms

Version 1.4.84
● Changed shutdown routine to only pop up confirmation dialog if the user explicitly closes
the program. The previous version would not allow Windows to shut down while
DS4Windows was running because it was waiting for a response from the dialog window
● Changes to program startup and output report bytes to help improve performance and
further decrease input lag
● Allow Disconnect BT special action to work with Sony dongle connection

Version 1.4.83
● Fixed device battery status display for tray icon
● Added prompt when closing the application if any controllers are connected. Change
provided by Aziz Rafsanjani
● Added rotation angle adjustment settings for LS and RS
● Change for Sony dongle connection to only have a virtual XInput controller available if a
controller is synced to the dongle
● Fixed version comparison in DS4Windows.exe updater routine

Version 1.4.82
● Fixed issue with latency messages being displayed multiple times unnecessarily in log
● Added smoothing routine for gyro mouse
● Tweaked mouse offsets used for gyro mouse and base gyro sensitivity multiplier
● Fixed some invalid URLs regarding the updater in DS4Windows.exe

Version 1.4.81
● Added a vertical scale setting for gyro mouse
● Fixed idle disconnect lightbar dimming when using a USB connection
● Fixed interpretation of number of fingers on the touchpad. This is primarily useful when
using a touchpad touch as a gyro trigger
● Allow gyro trigger to also be able to disable gyro rather than enable gyro. This enables
proper ratcheting support
● Changed gyro mouse routine significantly
● Fixed data reading from gyro
● Fixed a problem with actions not working after recording a macro
● Changed analog stick mouse routine to take fractions of a millisecond into account

Version 1.4.80
● Changed thread affinity of x360Bus object. Decreases input lag and improves
responsiveness of the entire application

Version 1.4.79
● Fixed microphone device volume detection when using official Sony dongle
● Changed one clause regarding Quick Charge check. JIT apparently favors one form over
another

Version 1.4.78
● Fixed mouse distance offset for negative stick axes

Version 1.4.77
● Fixed updater program to strip out final newline from version file in all circumstances
● Fixed event handler related bug with the advanced color dialog
● Removed delay from hotplug routine due to Quick Charge change. Simplified routine
● Changed mouse distance offset for analog sticks to take stick direction into account for
each axis
● Changed location of Quick Charge routine

Version 1.4.76
● Fixed Quick Charge regression

Version 1.4.75
● Added output curve options. The old curve option affects input coordinates which alters
other functionality like the dead zone. The output curve options will mainly help for KB+M
emulation.
● Now USB device is grabbed by the application when using BT and charging. This should
ensure that no second controller will be seen by other applications while charging a
controller.
● Changed to allow multi-action button functionality to work with touchpad regions
● Changed to ensure that tray icon text is updated more often. Only update underlying
strings as necessary
● Changed to use Queue while calculating latency instead of List. Much more efficient and
reduces input lag considerably
● Changed when Sleep is performed for device removal routine
● Changed exclusive mode routine to use SpinWait instead of Sleep

Version 1.4.74
● Fixed problem with Launch Program with Profile option launching a process twice when
a new Auto Profile is activated
● Fixed problem with some control identifiers that are used for controller readout in
Options form
● Added a timeout routine for BT connections to overcome disconnecting a controller by
holding the PS button
● Changed mouse event output to trim mouse distance remainders
● Added an initial mouse offset for LS and RS mouse actions. Smooths out the low end
● Changed mouse actions for LS and RS. The output mouse speed now takes poll time
into account. The set mouse speed will be consistent across all supported controller
connections
● Moved lightbar updating routine after firing emulation events
● Edited lightbar dimming on idle disconnect

Version 1.4.73
● Change so the serial number associated with the Sony dongle changes when a
controller is synced or disconnected
● Fixed multi-action button so multiple multi-action button bindings work

Version 1.4.72
● Fixed index out of bounds error when resetting profile values

Version 1.4.71
● Fixed issue with improper XInput index values being used when a controller hotplug
event is performed
● Make sure to reset old profile values before attempting to parse a profile. Needed to
ensure that old values are not being used
● Changed "Launch Program with Profile" functionality
● Added Bluetooth poll rate changing
● Changed to use synchronous versions of FileStream methods instead of async Task
versions. Reduced CPU load
● Lots of minor optimizations that have reduced input lag

Version 1.4.70
● Fixed issue with XInput binding getting executed for an inactive control when bound to a
keyboard key action
● Added more debug messages around XInput device plugin and removal
● Changed to not launch program with profile when DS4Windows first starts

Version 1.4.69
● Fixed Share and Options button mappings
● Changed timer usage in main form. GUI is more responsive as a result
● Changed device removal code to add safeguards around device list
● Changed how "Launch Program with Profile" works. First checks whether the program is
already running before launching process. Process now launches with the executable
directory as the working directory. Uses task to launch a process async during profile
loading
● Fixed multi-action button
● Changed output report generation so microphone volume does not get muted.
Microphone support now works when DS4 is connected to DS4 Wireless Adaptor

Version 1.4.68
● Added max zone settings for LS, RS, L2 and R2. This can be a useful option for people
with worn out controllers
● Minor optimizations to speed up hover text and button image display on Options form
● Change to not interface with Scp Virtual Bus after reading input reports when DInput
Only mode is enabled for a profile
● Fixed issue with USB unplugging on some configurations
● Only read one touchpad packet when reading the current coordinates. Other touchpad
packets aren't needed and seem to contain irrelevant data
● Changed Run At Startup panel to better reflect required permissions needed to enable
Task mode
● Fixed exclusive mode routine getting executed multiple times simultaneously. Should
clear up problem with controllers becoming unresponsive sometimes
● Output more log messages when starting program
● Fixed Updater program

Version 1.4.67
● Changed Quick Charge routine to hopefully work in more situations
● Changed how hotplugging is performed
● Fixed problem with rumble activating when opening the Options window
● Fixed problem with 'specified argument out of range' error occurring when scanning for
controllers
● Changed event usage to update less GUI controls
● Fixed problem parsing old profiles containing duplicate profile actions

Version 1.4.66
● Fixed gyro mappings

Version 1.4.65
● Patch updater application to work with new packaging structure
● Revert back to old behavior for disconnecting Bluetooth controllers
● Allow option for touchpad toggling to be disabled
● Fixed axis to axis mapping issues
● Perform fewer controller searches
● Defer logging events to GUI thread

Version 1.4.64
● Run some log methods async to allow input thread to continue to perform work rather
than wait
● Disable task option for Run at Startup when DS4Windows is running as a non-admin
● Tweaked a couple of mapping methods to speed up executing axis mappings
● Fixed issue with action extras, such as lightbar color change, not getting activated
● Fixed some issues with button mapping such as touchpad to Xbox 360 button mapping
● Fixed a couple of issues with null reference errors

Version 1.4.63
● Fixed startup shortcut generation when using the Task startup option
● Fixed issue when stop thread methods are called for a DS4Device object when the
thread objects are still null
● Fixed Quick Charge mode so that it works as intended
● Alter interpretation of battery status
● Make pulse at lightbar mode and pulse charging lightbar mode use set time intervals. No
longer rely on a set gamepad poll count which would result in different intervals
depending on the connection used

Version 1.4.62
● Improve speed of DS4 control lookup used for special actions and KB+M emulation
● Allow application to launch at startup using a task. This method allows DS4Windows to
launch at startup as the administrator with no user intervention.
● Use stick bearing when a stick is mapped to keyboard keys to determine which keys
should be pressed. A 45 degree range is used to make an 8 direction stick
● Have sticks mapped to keyboard keys or mouse actions honor dead zone settings
assigned in a profile

Version 1.4.61
● Many small optimizations to speed up action execution and button mapping translation
● Have keyboard events use both virtual keys and scan codes by default. For now, the
scan code option is still available to only send out keyboard key events using a scan
code
● Fix mouse mapping routine to include distance remainders. Removes artificial high dead
zone for sticks bound to mouse actions
● Change button mapping window to not assign an explicit action when assigning a DS4
button to the default X360 control except when flags are specified. This has the same
effect as clicking the default button

Version 1.4.60
● Tweaks to speed up mapping translation

Version 1.4.59
● Fixed idle disconnect functionality for Sony dongle
● Tweaks to speed up mapping translation

Version 1.4.58
● Added initial support for Sony DS4 Wireless Adaptor
● Allow disconnect from Controllers tab to work with DS4 Wireless Adaptor. Change was
made thanks to aspalmer
● Fixed issue with multiple special actions causing program crashes
● Fixed various special action types
● Small changes to improve performance for mapping translation

Version 1.4.57
● Fix issue with actions not being executed
● Minor action detection speed up

Version 1.4.56
● Fixed deadzone interpretation after leaving the assigned deadzone
● Added anti-deadzone settings for LS, RS, L2, and R2
● Various changes to reduce lag
● Added fix for disappearing audio problems when using DS4 wireless dongle. Changed
added by Ondrej
● Fixed an issue where the wrong action was being parsed. Change added by Yoni
● Fixed issue with application hanging after unplugging a Bluetooth dongle
● Updated image resources. Change provided by Carlos
● Various changes to speed up action detection

Version 1.4.55
● Fixed issue with disconnecting a USB controller causing the application to crash

Version 1.4.54
● Change routines in order to further reduce input lag
● Change controller reader and output routines to use async overlapped IO operations in
most cases
● Build using explicit platform targets instead of AnyCPU. For now, only an x64 build is
being provided. That should cover a majority of users but releasing an x86 build can be
done if requested.
● Main GUI window has become more responsive

Version 1.4.53
● Fix exclusive mode after Windows 10 update from around 2017-03-15
● Introduce various changes to reduce input lag
● Correct XInput axis scaling to output full stick range

Version 1.4.52

● Added support for New DS4 Controller (thanks andersfischernielsen)


● Fixed sensitivity for sticks, causing crashes when trying to edit a profile
● Typo fixes (thanks josevill)
● Updates to German, Polish, Nederlands and more translations

Version 1.4.5
● Added support for the New DS4 USB Adapater (Thanks to boganhobo and Chamilsaan)
● Implemented teokp's amazing fix for hide ds4 not working on the anniversary update of
Windows 10: when a controller fails to enter exclusive mode, DS4Windows will ask for
admin privilages to fix the issue.
● Now (near)unlimited Special Actions can be made from the previous limit of 50
● Special Action Xbox Game DVR is now no longer limited to Windows 10, renamed multi
action button: Assign a macro to single tap, double tap, and holding down a button
● Added option for White DS4Windows Icon in the notification tray (While not merged
from, thanks to tehmantra)
● Added option to temporarily turn off DS4Windows when using a certain program
(togglable in the Auto Profiles Tab) (Same case as above but thanks to dedChar to bring
to light)
● Fixed Options crashes in certain locales where decimal points are repesented with
commas, such as German (Thanks to kiliansch)
● Added/Updated translations for many languauges, now including Japanese, Slovenian,
Hungarian, Greek, Finnish, Czech, Indonesian, and Ukrainian

Version 1.4.401
● Fixes for inverting the sticks
● Updated French, German, Russian, and Vietnamese translations, and added more
credits

DS4Updater 1.1.401
● Added backup method of updating should anything happen with github

Version 1.4.4
● Revised shift modifier: each button/control has their own independent shift trigger
instead of one universal one
● Select an action window: this window now highlights what said control is currently set to.
● Removed unused images, making the exe a meg smaller
● Completely revised how the code for custom mapping works
● Updated all translations, added partial Dutch/Nederlands Support

Version 1.4.321
● Changed the Rainbow button to an actual button
● For using the sixaxis as a mouse, changed none to Always on, also better movement for
the gyro when the sensitivity is lowered
● Updated Hebrew, Chinese (Traditional), Itilian, Chinese (Simplified)
Version 1.4.32
● Added Sensitivity settings for both sticks, triggers, and the gyro
● Fixed the select an action window popping up after closing the profile settings or in
another tab
● Fixed the lightbar button on the main tab being so long, along with some other random ui
fixes
● Fixed many issues with making a new profile
● When using a custom color the light now fades out based on the current profile settings
(ie. when the battery is low)
● Added Hebrew and Vietnamese translations
● Updated Chinese (T), Russian, German, Polish

DS4Updater 1.1.32
● Fixes for when users want to skip downloading their native langauge

Version 1.4.31
● Revised the Profile settings UI to fit all the settings on the screen.
● Fixed not being able to have a negative scroll value for the touchpad
● Less lag when opening/reopening profile settings
● Added Arabic Translation (Thanks K.F), updated French, Polish, and Portuguese
translations

Version 1.4.3
● Complete rehaul of the profile settings, bigger workspace to edit controls, and all the
settings are on the side now
● Added option to change the lightbar color, regardless of the profile's lightbar setting
(useful for using one profile on the same controller). to change click the colored button
beside edit in the main tab
● Can now set the Gyro as an 1:1 absolute mouse, in this mode the mouse now moves as
the controller is moved
● Removed the experimental exclusive connection button if on the newest Windows 10
build (1511/TH2)
● Finally updated all the translations and added some new ones (such as Chinese and
Polish, the translations sheets have been merged to one so it's easier for me to update

DS4Updater 1.1.3
● Fixes

Version 1.4.27
● (Windows 10) Thanks to another workaround found, it has been added to DS4Windows,
there is a button on the main tab, to connect your controller exclusively, this will
temporarily kill explorer (The taskbar) and bring it back once a controller is connected
● Macros: When recording with a delay, you can now add rumble and changing the
lightbar color during the macro, you can use the touchpad zones to add rumble or
lightbar options. To change how much rumble happens or the lightbar color, just double
click the item in the list
DS4Updater 1.1.27
● Updates are now downloaded from Github
● UI fixes, with clearer errors and "Open DS4" changed to say "Open DS4W"
● If you choose to open DS4W after an update, DS4Windows will update the updater, so
you won't see the command prompt window if you choose this route.

Version 1.4.269
● Fixed trying to edit actions with Xbox Game DVR
● Fixed Hide DS4 crashing DS4Windows on 64-bit machines

Version 1.4.267
● Fixes for adding programs to auto profiles

Version 1.4.266
● Flash Lightbar when at high latency now has the option to choose what you decide is
high latency
● Show Notifications now has the option to only show warnings, such as when a controller
cannot be grabbed exclusively
● Speaking of bad news for Windows 10 users: Hide DS4 has now been disabled, until i
can figure out why this is, it will be disabled, this means some games that rely on this
may not work properly or at all, sorry about that
● As for good news for Windows 10, did you know you can press Windows + G to open a
game bar which can record games. For Windows 10 users, there's a new special action:
Xbox Game DVR. Pick a trigger (only one button) and tapping/holding/or double tapping
does various things, such as start/stop recording, save an ongoing recording, take a
screenshot (via the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
● Much of the code has been updated with c# 6.0
● Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files

Version 1.4.261
● Fixed mouse movement by touchpad not working

Version 1.4.26
● Updated German translation
● Added Turkish translation (Thanks Lütfi)
● When the battery is low and the controller is disconnected, The notification tell you to
charge the controller, this notification also now shows the controller number instead of
the mac address
● While Double tapping to drag or left clicking the touchpad, you can use a second finger
to drag the mouse cursor (ala Mac touchpads)
● In Auto Profiles, you can now add a directory/folder of programs

Version 1.4.25
● Added inverted deadzones to Left and Right Sticks, set the values to negative and
pushing the stick past the red in the controller readout will make sure the output doesn't
pass the set limit
● Fixed bug when trying to invert left and right stick with Shift modifier
● Fixed "Fall back to" text in shift modifier
● Added Romanian Translation (Thanks Vlad Giurgiu and Anonim)
● Updated German (added thanks to Jan-Stefan Janetzky & An Op Turk[DedSec]),
Russian, and French translations

Version 1.4.245
● Fix settings tab text being blank after clicking controller/driver setup
● Check if .Net 4.5 or higher is installed at the start.
● Fix crash with certain macro
● Option to disable flashing light when controller latency is over 10ms
● Special Action Program: Added Arguments/Command Line and hold trigger for x
seconds to launch program
● Bug fixes

Version 1.4.242
● Fix Download language pack's checkbox being inverted
● Fix lightbar being stuck on a color if the profile is switched while checking battery life
● Fix a crash with when a new profiles not having the flash and charging set and then
re-editing it.

Version 1.4.241
● Fixed being unable to switch profiles when using certain language packs
● Removed not yet implemented controls in options

Version 1.4.24
● New Special Action: Check Battery life, choose to see the battery via a notification or via
the lightbar with a gradient of your choice
● Sixaxis tilting added to special action triggers
● Added Special macros to be used by pressing the Load Presets button, selecting Cycle
Programs allows you to hold the button to cycle through open programs, and edit the
wait time to choose how long you hold the button down to go to the next program
● Can now add additional recordings between macros, click in the list where you want to
add
● Can now delete actions in the macro by pressing delete
● Fixed color by battery being inverted
● Fixed bluetooth light being completely off when stopping/exiting DS4Windows
● Updated translation sheets (new items highlighted in 3rd column in green for easier
finding)

Version 1.4.231
● Fixed charging light not saving (thanks tehmantra)
● Truly finished Italian Translation

Version 1.4.23
● Extended range needed for touchpad swipes actions to register
● UI adjustments in profile settings, such as a color box for flashing color, alignment
adjustments, and the Sixaxis reading dot staying in bounds of the box
● Recording a macro for special actions now open up in a new window, allowing for
ctrl+tab to be used
● When controller's latency passes 10ms, the log will show and the controller will flash red
until the latency is under 10ms
● Hovering over the mac address shows the latency of said controller, if it's connected via
bluetooth
● Option to choose when at low battery for the light to flash or pulse
● Much cleaner/neater hotkeys/about window
● Option to download language packs if your PC is not set to an english language
● Finished Italian Translations (Thanks again Giulio)
● Finished German Translations (Thanks Ammonjak)
● Updated Italian & Russian Translations
● Reorganized the the code so all cs files are under the same project
DS4Updater 1.1.23
● Support to skip downloading a language pack

Version 1.4.222
● Added Press/Toggle Key to Special Actions, you can hold a trigger to hold a key or
toggle a key with one set of buttons, and untoggle it by pressing or releasing another set
of buttons
● Added Disconnect BT to Special Actions, PS+Options to d/c is now added to Special
actions and can be enabled for each profile. You can now set Disconnect BT to any
control(s) and how long you need to hold the control(s) to take affect
● Added Partial German Translation (Thanks Michél)
● Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
● Added Partial Italian Translation (Thanks Giulio)
● Updates to the translations sheets, they should now have every bit of text in
DS4Windows, minus the controls of the controller
● English Spelling fixes
● Main/Starting tab only shows info for connected controllers, and context menu only
shows options for connected controllers.
● Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now scrolls smoothly
● Slightly reworked analog mouse movement + mouse acceleration (not as janky
anymore)
● When starting DS4Windows, if no controllers are connected, DS4Windows defaults to
the profile tab
● Certain log warnings (Like unable to get controller exclusively) shows up in red
● Easter egg: try pressing a few buttons in sequence while in the log tab
● Fixed Start Profile with TP off being unchecked next time a profile is opened
● Other minor Bug Fixes, such as clearing the log then moving to a new tab crashing
DS4W
DS4Updater 1.1.22
● Use of .ds4w files to tell what changes need to happen in DS4Windows, when updating
the updater will delete old files

Version 1.4.212
● Added Version Portuguese (Brazil) Translation
● Fixed crash when creating a new profile
● Minor UI fixes

Version 1.4.21
● Added Presets for Dpad, Left and Right Sticks, Face Buttons, Sixaxis, and Touchpad
Swipes; right click on those controls to select a preset)
● Fully fixed Scan code, now will work fine in old DirectX games
● Macros for Special Actions can now have scan code enabled (if you didn't know you can
enable scan code on macros for single controls as well, even after you've configured the
macro)
● Control list now shows if scan code is enabled

Version 1.4.201
● Fixed Scan code

Version 1.4.2
● Special Actions: press a control or a set of controls to perform a macro, launch a
program/file, or load a different profile. Create new actions in profile options, and check
which ones you want the selected profile to use.
● Set an analog curve for the left and right stick, see the changes live in the controller
readout
● Option to set the close button to minimize DS4Windows, and truly close it by the
notification icon
● Added Spanish Translations (added credits to the translations sheets so users can be
properly thanked if wanted to be)
● Sticks Deadzone reworked from being a square to radial as the controller readout
actually shows
● Fix pressing keyboard not setting an action for controls
● Fix Tilts and Swipes controls not showing text in the control list
● Fix program crashing when uses x360 macros with shift controls
● Fix for trying to edit a profile from the context menu after never restoring DS4Windows
form start.
● Fix for settings low flash color
● Now running with startup will always start minimized, even if start minimized is
unchecked
DS4Updater 1.1.2
● If a language pack is available for your language but not your country's variation of it, the
default language pack is downloaded instead

Version 1.4.161
● By default Xinput ports 1-4 are used, this can be changed back in settings to 11-14 and
anything in between
● Better handling of moving appdata folder to %Appdata%/DS4Windows

Version 1.4.16
● Extra actions for controls, set rumble, change lightbar and flash, and mouse sensitivity
while holding a controls
● Regardless of where DS4Windows is first placed, the driver will always install in
DS4Windows' directory
● Appdata location is now named "DS4Windows". If your profiles are saved in appdata
"%Appdata%/DS4Tool" they will be moved automatically to "%Appdata%/DS4Windows",
assuming access to the files are available.
DS4Updater 1.1.16
● Icon Update

Version 1.4.158
● Fixed random mouse dancing in some games
● When adding trigger actions to the left or right stick, fixed L2/R2 not working 100% of the
time
● Fixed profile for controllers not being changeable if usb was plugged in at start

Version 1.4.157
● Experimental option in settings: Quick Charge controller by turning off BT when plugged
via USB
● Settings a deadzone of .10+ to the sticks or higher now affects the mouse movement as
well
● Use DS4 for Mapping checkbox now remembers how it was last set
● Fix for starting minimized showing up in task manager and alt+tab, this also more
reliably starts minimized

Version 1.4.155/156
● Significant CPU usage decrease by reworking how single instances work, on a mobile i7
for example with a single controller connected usage went from 4-6% to .5-1.5%. With
no controllers connected the usage went from 2.5-4.5% to 0%!
● As mentioned before, single instances has been reworked, so trying to relaunch DS4W
more reliably opens the previous instance
● Fixed Shift modifier not working if main controls were not modified
● Fixed Tilt Left for Shift modifier
● Fixed default text of shift controls
● Remove touchpad movement notification when swipe for controls is enabled
● Can test the rumble motors separately via Heavy and Light
● Truly implemented Flush HID (I think)
● Slight change in profiles, when loading profiles in for the first time in this new version,
there may be a slight delay
● Updated French Translations
● Removed mouse moving as an option for touch swipes controls, as they weren't
implemented nor have a purpose to be
DS4Updater 1.1.155
● Don't let the jump fool you, this update just keeps the numbers closer together. This
update only contains general fixes

Version 1.4.15
● Use Touchpad swipes for controls and disable it for mouse: swipe in 4 directions to use
buttons, marcos, and even use the touchpad as an analog stick (Relive the great
moments of playing an FPS on a touchscreen)
● Mapping Stick directions to triggers now work properly

Version 1.4.1 [Mac(a)roni]


● Record 360 controls using your DualShock 4 (PS: any old macros using hold control
while running macro may be set to a new control when loaded, please re save your
macro)
● Macro recording now happens in the select an action window instead of a separate one
● Save and Load Macro presets to use any time
● When recording with delays (recommend for X360 macros) you can double click on
delays to edit the time
● When recording a new macro, previously saved Macros for that control are shown
● Many minor Macro fixes
● Giving major updates useless names that will never be seen outside of this changelog
● Icon Update
● Fixed shift modifier lightbar settings blocked off
● High DPI support (144+)
● Fixed various bugs at 120 DPI and higher
● When installing the ds4 driver, Actually checks if the driver got installed instead of
always saying install complete

Version 1.4.0.872
● Really fixed the touchpad clicking this time
● Small bug fix for first time users

Version 1.4.0.87
● Fixed Touchpad still mouse clicking when set to a key
● For first time users: The ds4 driver (virtual bus) will silently and automatically install after
clicking step one in the setup window
DS4Updater 1.4.0.87
● For multilingual users: if your language has translations for DS4W (currently only
French) DS4Updater will also download the language pack as well.

Version 1.4.0.85
● Many fixes for shift modifier

Version 1.4.0.81
● Fix crash when disconnecting by PS+Options

Version 1.4.0.8
● Rework x360 mapping similarly to v1.4.0.75, however this time testing has been done
and truly works :). With this update you can map sticks to multiple things and swap the
actions of two buttons/sticks/triggers
● Remapping touchpad clicks improvements

Version 1.4.0.761
● Revert back to old control style, will test the new control mapping later

Version 1.4.0.76
● When using default controls, fix no controls working
● When using custom controls, fix sticks not working
● Hopefully removed DS4W from alt+tab menu when minimized

Version 1.4.0.75
● Reworked x360 mapping again, better support for mapping multiple buttons to the same
thing + swapping buttons
● Made the exclusive warning last message when connecting a controller that can't get
exclusive control to make it more noticeable
● Hovering over the log message at the bottom shows the full message
● Default colors provided when a new profile is made for certain controls

Version 1.4.0.71
● Rumble motors swapped to be correct
● Bug fixes, including crashes and a small windows when minimized on Win7

Version 1.4.0.7
● Improved mapping support: can better handle the switching of controls: ie triangle and
circle/dpad and left stick/L1+R1 and L2+R2. If you have a profile with swap buttons, they
may not work until you open the profile in settings and resave.
● Servers moved to ds4winsdows.com
● Remove DS4Windows from Alt+tab menu if minimized to tray (thanks youturnjason)
● Basic support for command line arguments (right now just "-stop" is supported: starts
program up without starting the ds4)

DS4Updater 1.1.0.7:
● Servers moved to ds4windows.com
● Bug fix for failing to fully close when cancelling an install

Version 1.4.0.61
● Bug fix for dinput mode making multiple 360 controllers

Version 1.4.0.6
● Profile option to turn off touchpad at start
● Better disabling and re-enabling of the virtual x360 for dinput only mode
● Bottom text of DS4Windows now hosts the description of items in profile options instead
of a floating tooltip
● If first startup of DS4Windows/no profiles are found, a default profile is made
● Extra tip in driver window
● Update to french translations (however the translations require another update now)

Version 1.4.0.56
● Lightbar turns off when pressing Stop while wired

Version 1.4.0.55
● Added start/stop to notification icon
● Right click on the status icon in the main window to disconnect the controller (BT only)
● Rumble testing actually varies as the boost value changes (you won't notice a change
with testing past 100%)
● Better lightbar flashing, color has a better chance of changing back after not flashing etc.
● Moved source code to ​Github​, the link is on the about page of DS4Windows and my sig
on pcsx2.net
● Special feature (beta) for those who have a profile for Distance and use the controller in
X360 mode.

Version 1.4.0.5
● Option to only use Dinput, turn off X360 input and only use the DS4's native input: useful
for games that can use the ds4 as is without 360 input needed, but still want to use the
lightbar and touchpad.
● Added custom color when flashing, just click on the "Flash at" text
● lightbar turns off fully when going into sleep mode
● PS+touchpad also disables scrolling now
● Update to french translations
● Fixes to text

Version 1.4.0.32
● Separated Translation on Save where dialog box
● Fix updating when settings are in appdata
● shortened notification icon's popup text to avoid crashes

Version 1.4.0.3
● Even better localization support
● 95% finished French Translation (I forgot to update the translations page so a few lines
are missing, the French page has been updated, but the rest still need to be updated)
Thanks to DirtyShady and Neur0Nerd for the Translations

Version 1.4.0.22
● Fix for DS4 failing to connect for some people

Version 1.4.0.2
● Option to start a program when loading a (auto-)profile/connecting a controller
● Reworked mouse movement with analog sticks, still needs more fine tuning
● Option to add a different color for when in shift modifier mode
● Added default to regular controller mapping, which goes back to it's original 360 mapped
action if any
● Big fixes: such as controller being disconnected when hiding the DS4 with D/C when
stopping is on
● Spelling fixes
● DS4Updater 1.1.0.2: spelling fixes

Version 1.4.0.11
● Fix for select an action window popping up when connecting a controller in some
circumstances
● DS4Updater: quicker startup, will only replace updater if the version is actually newer,
smaller size

Version 1.4.0.1
● Added Unbound to shift modifier
● Reworked Settings tab layout so it looks less cluttered
● Check Drivers at start is back, this way actually checks if the VBus driver is installed and
needs to be if not. It was disabled because certain user accounts (like guests) couldn't
start the tool up, that has been fixed as well

Version 14/1.4
● Versions will now be based on the file version, this way DS4Windows can be numbered
using 4 parts (ie 1.4.11.2), this also allows the version number not to go so high so
quickly
● In Profile Settings::
○ Shift modifier: Hold an action to use another set of controls, if nothing is set to the
shifted control, in falls back to the default action
○ IView input of controls, see exactly when a deadzone is passed and check the
input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
○ Click the Empty text on in the lightbar box to copy the lightbar color from full to
empty.
○ While opened, option to keep the window size after closing the profile's settings
○ Old profiles are automatically upgraded if it's missing new settings, such as how
colors are now saved, sixaxis deadzones, and shift controls
○ Other UI changes, such as flipped touchpad and other settings boxes
● Fix for when clicking the semicolon in the select an action screen
● Fix assigning Sixaxis action to a key
● minor UI changes and bug fixes, such as auto resize of the log listview
● DS4Updater: Also now works for the new numbering system, can read the version
number right from the exe instead of in profiles.xml, UI additions to better notify users of
errors, Bug fixes for non-portable users

Version 10.651
● Fix for loading older profiles before 10.65
● DS4Updater: update.zip remains if couldn't unzip the files for whatever reason

Version 10.65
● Sixaxis Deadzones can be reconfigured: 0.25+ recommended to lay down the controller
without movement
● Mouse Acceleration option
● Rumble settings now more simple
● Better detection of where profiles and settings are stored, if you use jheb's tool and this
as a portable one, it better detects which settings are which.
● Smaller filesize for profiles.
● Reorder of tabs
○ DS4Updater: Support for other localizations where decimals use "," instead of "."
○ Bug fixes: for when DS4Windows is still running while updating, when there is no
internet connection/update doesn't exist, when profiles.xml doesn't exist.

Version 10.6
● Sixaxis tilts can now mapped, map them to the analog sticks, buttons, keyboards, and
even macros
● Better Support of multiple action being mapped to analog sticks
● Fixed crash with an empty macro
● UI Fixes

Version 10.55
● Dimming by idle timeout synced with color/dim by Battery % setting
● Swipe to cycle through profiles can now be disabled.

Version 10.52
● Input by DS4 in profile settings now turns off when off that tab
● Able to use edit button to open that profile settings, even when profile settings are
already open open.

Version 10.51
● Fix for BT disconnecting while DS4Windows is running, and Disconnect BT when
stopping is checked.

Version 10.5
● Support for Left/Right Shift, Control, Alt in macros
● Better support of Tab and media keys (note: media keys can not be held between
actions)
● Option to disconnect controller from BT if stopping/closing DS4Windows
● Spelling fixes
● Start of support for other languages, starting with very barebones support for Spanish, If
anyone can help with translations of your language, please ​PM me here​ or e ​ mail me
here ​with translations for as much text as you can. ​Here is a link to all the text that
appears in DS4Windows in English

Version 10.45
● UI redesign for 360 controls in mapping window
● Added manual mouse click buttons for 4th and 5th mouse button
● Can also hold an X360 action while a macro is running
● Changelog link in help window, also fixes in tips
● Macro list scrolls down as you record strokes
● DS4Updater: If settings are in appdata, the update zip actually unzips

Version 10.4
● Truer Macro support​: Record keystrokes and mouse clicks by the press and release,
repeat a macro while button is held down or play once, option to record the delay
between actions. NOTE: Recommended that you re-record macros, however old macros
should work, however it hasn't been tested)
● Mouse movement works a bit better
● Fix for startup shortcut disappearing/unchecking
● When programs that are used in auto-profiles are uninstalled, they are removed from the
auto profile list
● Support for Scan code keys in macros

Version 10.361
● Truly faster startup
● Updater has been fixed

Version 10.36
● Faster startup
● Fix for crashes

Version 10.35
● Fix at Windows startup showing Welcome window
● Startup now uses a shortcut in the start menu startup folder instead of registry. Registry
key now removed
● Fix duplicates of programs showing up when batch adding programs
● Clicking the X button in the main windows will close profile settings instead of the whole
program if profile settings are open. Otherwise the program shuts down regularly
● UI Fixes

Version 10.3
● First time runs of DS4Windows ask where you want to save settings, Will automatically
pick the settings location based one the two location profiles.xml is in (App folder or
Appdata). If settings are in both, it will ask you to pick where you want to save, and
attempt to delete the other settings. If settings are in the app folder and needs UAC to
write, There is an option to copy over the files to appdata.
● Disable touchpad mouse movement again by holding PS and touching the touchpad
(instead of clicking)
Version 10.26
● FIx for crash when DS4Windows and DS4Updater is in Program files on a drive that is
not C

Version 10.25
● Fix for Buttons inputting
● DS4Updater: Fix for reading version

Version 10.2
● Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run
DS4Windows, this won't affect you), thanks to this update, you can now...
● Add delay to macros from one millisecond to 60 seconds, macros with delays only run
once until pressed again. Without delays, the macro can be repeated while held down.
● Profiles and settings are now back inside the application folder to help portability. It will
remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to
add a setting for location saving.
● Import profile option will automatically go to the appdata profile folder, auto profiles and
settings will automatically copy over.
● Option to delete the appdata folder if not in use in the settings tab, this way it helps with
cleanup.
● Another fix for auto profiles startup bug
● Better reading of autoprofile program path names
● Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows
that is not this version is started, this DS4Windows comes back into focus.
● UI fixes

Version 10
● DS4Windows no longer crashes if no source games are installed (ie shinra's crash)
● Auto profile has more ways to add programs, add origin games if installed, and start
menu programs
● You can also add by shortcuts (.lnk)
● Auto Profiles now work by the foreground program
● DS4Windows no longer checks for driver at start, will help speed up DS4's connection
when starting up with windows.
● Welcome to DS4Windows Window is now an option in the Settings Tab, will
automatically show up if mine or DSDCS was never started before.
● Touchpad scrolling reworked via electrobrains newest build
● Idle Timeout has a checkbox, also small UI fixes

Version 9.9
● Auto Profiles are live(beta)​ - Automatically load profiles when starting up certain
programs or games.
● DS4Tool.exe merged with it's dll's, now named DS4Windows.exe
● Settings tab - Hide DS4, Run at start up, Change update rate or disable it all together,
turn off notifications and more there
● there
● When battery is low and starts flashing, it will not continue to flash when charging
● Possible fix for memory leak
● Small UI changes such as not being able to edit the text in combo boxes
● Spelling fixes
● Updater: Now doesn't need admin rights to run, DS4Windows will try to start the updater
with admin permissions if DS4Windows is located in an admin folder like program files,
also renamed DS4Updater.exe. The old updater will automatically be deleted

Version 9.33
● Better support for higher DPI users

Version 9.321
● Fix for those using text at 125%

Version 9.32
● Small fix for swapping profiles with touchpad

Version 9.31
● Fix for profile name when making a new profile

Version 9.3
● Option to change what happens to the lightbar when charging: options are normal, fade
in and out, rainbow, and it's own color
● Settings for saving,renaming, and cancelling the save of a profile while in profile settings
moved into the toolbar
● Switch profiles now by a 2 finger swipe left or right on touchpad
● When shutting down, the controller light turns fully off

Version 9.2
● Context menu for profile list, assign profiles from there and more with a right click
● Can now import by dragging profiles(.xml's) directly into DS4Windows
● Added back default light color when stopping/closing
● Escape or Enter can now close the help window
● small optimizations
Version 9.12
● Bug fixes, such as default touchpad mouse clicking works again

Version 9.111
● Bug fix when changing profiles with touchpad

Version 9.11
● Bug fix for checking updates in Help

Version 9.1
● Setting to adjust when battery flash begins
● Import profiles moved to profiles toolbar
● You can now export Profiles
● Tool can get even smaller now, as checkboxes and start/stop button are on same line
● Log clear button moved to log tab
● UI fixes in About
● Use Enter or escape to save or cancel profiles respectively in options or when
duplicating profile
● Use Enter, Delete or Ctrl+C in the profile list to edit, delete, or duplicate a profile
respectively

Version 9
● Revamped UI​ - ​Options are now in the same window as the main tool​, ​Can edit profiles
without it being selected​, Organized Info of controllers, minimum size changes by
number of controllers connected
● You can now duplicate profiles
● Cycle through profiles by holding L1+R1 and swiping left and right on the touchpad
● Check for updates options in Hotkeys/About
● Single click notification icon to open tool, middle mouse it to close DS4Windows
● Small mouse movements with analog fixes
● Mouse movement with triggers fixed
● Alpha of Auto Profiles implemented, not yet able to use
● Minor fixes

Version 8.2
● Mouse movement reworked, pushing on the sticks works by a curve like xpadder
● PS+Options no longer turns off the controller off if it’s charging

Version 8.1
● Touchpad macros now work without also clicking
● Mouse Buttons are now toggleable
Version 8
● More mapping options!
○ Toggle option: Press a button once and the key will be held down until the button
is pressed again
○ Macro option: Assign multiple keys or mouse buttons to a single button! Just
check Macro and select the buttons in the order you want them to be pressed
(maximum 5)
● Light bar even closer to default bluetooth when stopping
● When disconnecting Controller via PS button and Options, if PS is assigned to a key or
keys, the key is let go.
● If Idle timeout is on, the light bar idles fades when fully charged (but doesn't disconnect)
● DS4 Icon always shows, notifications only at startup, and when the main window is
unfocused.
● In options the tap, scroll, and slide are unchecked at start if any of them were turned off
before
● For always rainbow mode, the cycle goes in reverse when charging, remains dim if
checked.

Version 7.8
● Mouse Sensitivity now works with analog sticks as well as buttons and triggers
● Option for using the controller input to change it's mapping in options
● Fix for lightbar not remembering the color
● Disable edit/delete buttons until controllers finish connecting

Version 7.7
● "Connecting..." issue fixed again, I think...
● Pushing the Right stick down also works correctly now.
● In options,when changing values on the light bar sliders, a tooltip shows up to the side
showing the number.
● The lightbar now only fades out when idle when half the idle time has passed.

Version 7.6
● Options Redesign​ (Yes again), giving each control option a little more breathing room

Version 7.42
● Hopefully fixed “Connecting…” issue (Thanks jheb)
● Small ui/gui improvements:
○ Start with windows always visible
○ Tooltip on the rainbow icon
○ Light Bar shows the default light blue when stopping/closing ds4windows. Light
Bar also doesn't go weird when charging and idle timeout is on.

Version 7.412
● Small optimizations to lightbar rainbow and Keyboard strokes

Version 7.41
● Lightbar Idle fade now works for all regions, not just Eastern Time

Version 7.4
● When using Idle timeout, The lightbar now will fade as the controller sits idle.
● Added a decimal place to idle timeout so you can use half/etc. minutes now.
● Proper Display of percentages of dead-zones when reentering options

Version 7.315
● Delete button actually deletes profiles

Version 7.31
● Small bug fixes for analog sticks mapping

Version 7.3
● Added analog stick deadzone, truly added trigger dead zones

Version 7.1
● Added Start with windows option
● DS4Windows now only checks for updates hourly (but only when running), updater will
still check immediately when started.
● Small UI changes

Version 7.01
If Virtual Bus is installed via DS4Windows, there is an uninstall link in about.

Version 7
● This build adds a few more devs to the about page,
● If you don't have the Virtual Bus Driver installed, DS4Windows will walk you through
installing the driver. This makes it easier to distribute a single zip and not have multiple
exe’s in it.
● If updater.exe is deleted/doesn’t exist it will be re downloaded.

Version 6.95
● You can now press a button/axis/touchpad in options to change that control when in
options.
● The icon in the notification area also shows not only when minimized, but when the main
window unfocused.
● Fixed bug where when the tool is shrunken down, the last message of log didn’t show.

Version 6.9
● DS4Tool: Version number saved to Profiles.xml so Updater can access it
● Updater: Can now check for latest version by comparing current via Profiles.xml and
new. Updater can also update itself.

Version 6.8
● Profiles and settings are now saved in appdata, you can import your profiles from the old
folder or any place

Version 6.6:
● Update checker now moved to AppData, this allows the program to be in Program files
or other folders with elevated need privileges.
● P.S. there is a new Updater.exe (Updater NEW.exe) please rename it to
“Updater.exe” and replace with old one

Version 6.5:
● Auto update is now live

Version 6:
● Revamped Options

You might also like