Travis Nickles
2f6498a37b
Remove unused lock statement
2017-11-11 22:52:17 -06:00
Yuki-nyan
a9eefa9079
Resolved merge conflict by implementing Ryochan7's changes
2017-11-05 15:20:10 +00:00
Travis Nickles
bf11a6d297
Change device enumeration routine
2017-10-28 20:34:04 -05:00
Travis Nickles
c75cb3ba7b
Added Razer Raiju VID and PID combination. Moved arrays.
...
Related to issue #136 .
2017-10-28 20:03:55 -05:00
Travis Nickles
076b1d0839
Use array to specify compatible vids
2017-10-28 19:58:23 -05:00
Travis Nickles
677191e8b4
Change to keep lightbar from sticking in some situations
...
Hopefully resolves issue #126 .
2017-10-27 02:09:42 -05:00
Travis Nickles
e07f902751
Only load profiles as needed rather than at program startup
2017-10-19 03:21:33 -05:00
Travis Nickles
036cfcb34d
Use refresh calibration method when creating DS4Device instance
2017-10-11 18:57:11 -05:00
Travis Nickles
0df84e1fba
Refresh calibration data when pairing to or disconnecting a device from the Sony dongle
2017-10-11 18:55:15 -05:00
Travis Nickles
3a09132805
Fix reading calibration report values. Take connection type into account
2017-10-11 18:48:52 -05:00
Travis Nickles
d1e0be33de
Fix calibration report id for BT
2017-10-11 18:24:14 -05:00
Travis Nickles
320c3ee6f6
Make sure to add device serial to HashSet when DS4Device instance is created
...
Make sure USB charging does not create second DS4Device instance
2017-10-11 18:07:34 -05:00
Travis Nickles
73450834bc
Remove unused field
2017-10-10 21:42:49 -05:00
Travis Nickles
b1cd3a76e9
First acceptable version of gyro calibration support
...
Related to issue #103 .
2017-10-10 17:45:42 -05:00
Travis Nickles
957ad3b1d5
Tweak updating of pending output report
2017-10-07 00:55:14 -05:00
Travis Nickles
16f6f5be32
Change main device list to be dependent on device path rather than mac address
...
Should resolve issue #71 .
2017-10-05 00:24:53 -05:00
Travis Nickles
22912dff50
Add headphone volume support for DS4 v2 controllers
2017-10-02 03:16:57 -05:00
Travis Nickles
39d0579f09
Change SixAxis routines
...
Hopefully I won't regret this later
2017-09-20 11:34:53 -05:00
Travis Nickles
ec3ebb73b5
Minor tweaks
2017-09-05 03:34:49 -05:00
Travis Nickles
699436565c
Reduce latency queue capacity
2017-08-22 05:20:23 -05:00
Travis Nickles
5df34b8378
Trim event handler method. Add name for timeout threads.
...
Decent performance boost with this change
2017-08-21 05:25:18 -05:00
Travis Nickles
dce5c811f2
Raise timeout interval
2017-08-20 22:02:49 -05:00
Travis Nickles
684c8a73b2
Minor tweak
2017-08-15 21:27:11 -05:00
Travis Nickles
8f78d5850e
Adding new gyro values
...
Not sure if I will ever use them
2017-08-10 02:45:11 -05:00
Travis Nickles
bd379e5c7e
Add new accel fields
2017-08-09 03:24:24 -05:00
Travis Nickles
2ffc51c8e3
Changed variable name to better show current intent
2017-08-08 22:07:52 -05:00
Travis Nickles
8dca930400
Create separate output accel values
2017-08-08 20:19:17 -05:00
Travis Nickles
315797fe53
Minor changes to exclusive mode routine
2017-08-04 06:10:48 -05:00
Travis Nickles
f042120ede
Add wait period after device is enabled.
...
Seems to be needed for exclusive mode to behave better
with recent Windows 10 update
2017-08-01 02:42:16 -05:00
Travis Nickles
473958ba1a
Correct touchpad X coordinate. Change DS4State.
2017-07-27 05:41:44 -05:00
Travis Nickles
60a21a9fe3
Minor changes
2017-07-26 21:38:34 -05:00
Travis Nickles
436d0ed1ef
No longer make unnecessary state object copies
2017-07-26 06:13:18 -05:00
Travis Nickles
8250f9be5c
Attempt to use timestamp from ds4. Preserve changes.
2017-07-26 04:30:50 -05:00
Yuki-nyan
86d311b72a
Merge pull request #5 from Ryochan7/jay
...
Update to Version 1.4.86
2017-07-21 19:35:49 +01:00
Travis Nickles
3dcd4d94b9
Added clamping for rotation. Fixed bug with identical dict keys
2017-07-20 04:25:15 -05:00
Travis Nickles
1b0ddfd910
Minor changes
2017-07-20 00:57:14 -05:00
Travis Nickles
8eb9d6391f
Some optimizations
2017-07-18 15:37:01 -05:00
Travis Nickles
a335decc90
Move accel dead zone calculations
2017-07-18 14:21:03 -05:00
Travis Nickles
9972e85e13
More minor gyro changes
2017-07-16 19:42:43 -05:00
Travis Nickles
dba2b1bbb3
Tweaks to how imu data is used
2017-07-16 07:11:58 -05:00
Travis Nickles
887a4fbdbd
Make imu data part of the DS4State
2017-07-16 03:30:49 -05:00
Travis Nickles
817505a989
Take poll time into account for gyro mouse
2017-07-16 02:22:21 -05:00
Travis Nickles
10621b8c69
Change trackbar value for gyro
2017-07-14 22:41:00 -05:00
Travis Nickles
56fff28f65
Try to correct some problems with imu data usage
2017-07-13 08:17:00 -05:00
Travis Nickles
c5dd97ebe5
Preserve minor optimizations before next test
2017-07-13 07:27:25 -05:00
Travis Nickles
6f069482a2
Minor optimizations
2017-07-12 08:04:37 -05:00
Yuki-nyan
48545207b4
Merge pull request #4 from Ryochan7/jay
...
Update to Version 1.4.84
2017-07-10 00:15:46 +01:00
Travis Nickles
089383b64e
Simple comment update
2017-07-02 16:59:35 -07:00
Travis Nickles
eab3cdeaad
Change output report for USB and Sony
2017-07-02 16:58:30 -07:00
Travis Nickles
0cf1956566
Change output report for BT
2017-07-02 10:14:15 -07:00
Travis Nickles
4ae72cfdb2
Removed more property usage
2017-07-02 08:29:55 -07:00
Travis Nickles
ee6a7fafd4
Improve response time for BT connections
2017-07-02 02:11:16 -07:00
Travis Nickles
ea69d69a6f
Improve response time when using USB and Sony dongle
2017-07-02 01:52:55 -07:00
Travis Nickles
d74820dbf5
Add rotation routine for LS and RS
2017-06-30 01:42:19 -07:00
Travis Nickles
6c21572249
Minor changes
2017-06-29 06:16:02 -07:00
Travis Nickles
484337f42f
Add gyro mouse smoothing routine
2017-06-28 21:42:16 -07:00
Travis Nickles
5f907de036
Expose full accel values for future experiments
2017-06-27 03:16:10 -07:00
Travis Nickles
4dfb2cf0db
Minor performance tweaks for input thread
2017-06-24 19:10:09 -07:00
Travis Nickles
a4b540d62c
Change variable name
2017-06-22 22:30:22 -07:00
Travis Nickles
19afe15937
Make lastActive field matter for USB connections again. Related to issue #45 .
2017-06-22 22:14:58 -07:00
Travis Nickles
44aef8b90d
Fixed distinction between one finger touchpad touch and two finger touch
...
Touch 2 being active does not necessarily mean two fingers
are currently on the touchpad
2017-06-22 03:24:51 -07:00
Travis Nickles
2d58034415
Allow gyro button triggers to disable gyro
2017-06-22 00:43:44 -07:00
Travis Nickles
bf774ba6f7
Correct some variables
2017-06-21 18:11:14 -07:00
Travis Nickles
f4302a752d
Initial attempt at fixing gyro support. Related to issue #48 .
...
It will be a mess for the forseeable future
2017-06-21 18:07:21 -07:00
Travis Nickles
328b2dc14c
Attempt to smooth out mouse cursor for analog sticks
2017-06-19 08:50:28 -07:00
Travis Nickles
fc929d963e
Fix mic device and volume detection
2017-06-17 09:06:33 -07:00
Travis Nickles
39930cf2e8
Small change
...
Hating the JIT compiler right now
2017-06-17 07:13:39 -07:00
Travis Nickles
712f470b9e
Change scope of some variables
2017-06-14 07:42:29 -07:00
Travis Nickles
2cf33e1bba
Test hotplug changes. Change mouse remainder cutoff
2017-06-11 08:15:45 -07:00
Travis Nickles
1fc77c5537
Take current stick direction into account for mouse offset
2017-06-10 17:48:34 -07:00
Travis Nickles
ab9c3abe05
Move Quick Charge check to input thread
2017-06-09 23:45:19 -07:00
Travis Nickles
63dddf4373
Changes to fix Quick Charge option
2017-06-08 13:52:47 -07:00
Travis Nickles
cda84e6499
Keep reference to hidden USB device while using BT and charging
...
Ensures that DS4 USB HID device is not seen by other applications
2017-06-07 17:52:09 -07:00
Travis Nickles
ce0ac4f04a
Make sure multi-action button can work with touchpad area button
2017-06-05 01:31:29 -07:00
Travis Nickles
e207114339
Test using Queue instead of List for Latency stats
...
The Queue version is faster
2017-06-04 19:14:44 -07:00
Travis Nickles
6d4527a4c6
Use SpinWait instead of Sleep for Exclusive mode routine
2017-06-03 15:16:59 -07:00
Travis Nickles
f61cd593c5
Add timeout test to allow fallback disconnect method to work
2017-05-31 20:37:53 -07:00
Travis Nickles
05fd7316cf
Keep small snippet for future reference
2017-05-26 20:14:48 -07:00
Travis Nickles
de8f1ae354
Change order of syncchange invoking
2017-05-26 19:03:35 -07:00
Travis Nickles
312d3b433e
Change variable name and revert
2017-05-25 03:01:07 -07:00
Travis Nickles
c7a840194c
Fix check for sync byte
2017-05-25 02:56:36 -07:00
Travis Nickles
5a0fb09291
Update serial for Sony dongle connection upon sync event
...
Related to issue #44 .
2017-05-25 02:51:28 -07:00
Travis Nickles
1e2c57a08a
Minor optimizations
2017-05-18 17:51:01 -07:00
Travis Nickles
2b741533bb
Minor optimizations
2017-05-17 01:59:09 -07:00
Travis Nickles
ac23921978
Allow BT poll rate to be specified. Use thread action queue now. Some bug fixes
2017-05-16 23:02:12 -07:00
Travis Nickles
9b78668935
Test new action invocation on input threads.
...
Only used to transfer idle disconnect time but
it might be more useful in the future.
2017-05-13 19:31:39 -07:00
Travis Nickles
bca7850a36
Stop using Async methods for FileStream instance. Reduce CPU usage. Initial thread action queue.
...
No longer uses an application set timeout but it looks like
a timeout will be handled by the system
2017-05-13 15:01:43 -07:00
Yuki-nyan
2c2a7c1f2c
Merge pull request #3 from Ryochan7/jay
...
Update to Version 1.4.70
2017-05-12 23:21:44 +01:00
Travis Nickles
edeaa30b59
Code clean up. Reset xinput mapping for more bound actions.
2017-05-12 07:48:58 -07:00
Yuki-nyan
e3f1d9dc1d
Nacon Revolution Pro support
2017-05-12 00:57:02 +01:00
Travis Nickles
f3c9e08398
Minor changes
2017-05-11 08:13:51 -07:00
Travis Nickles
9e512deaeb
Change timer usage for main form
2017-05-09 07:24:46 -07:00
Travis Nickles
6074445c03
Attempt at better clean up when removing devices
...
Use SynchronizationContext to run some tasks in main thread
as opposed to input thread
2017-05-09 03:11:50 -07:00
Travis Nickles
c3fcfbfddf
Use getter instead of property to grab volume levels
2017-05-08 03:07:58 -07:00
Travis Nickles
907fed2f1d
Fix output report so microphone does not get muted.
...
Related to issue #20 .
2017-05-08 03:06:06 -07:00
Travis Nickles
3f190bb4bb
Some file stream changes
2017-05-04 02:02:38 -07:00
Travis Nickles
272eba4432
Only read one touch packet
2017-05-02 06:29:46 -07:00
Travis Nickles
400ba4f293
Fix process starting issue when activating exclusive mode
...
Only one hotplug request should be processed at a time now.
Hopefully this fixes issues with devices staying disabled
2017-05-01 11:28:07 -07:00
Travis Nickles
4ce52da612
Test minor change of usb device removal
2017-05-01 03:40:37 -07:00
Travis Nickles
d35ba4db98
Add lock for DisconnectDongle
2017-05-01 02:50:02 -07:00
Travis Nickles
d37e0709c0
More log messages. Tweak DisconnectBT. Other minor changes.
2017-05-01 02:29:19 -07:00
Travis Nickles
3f68c9bcb8
Removed usage of some unused namespaces
...
The only real import one is remove System.Windows.Forms
for non GUI items
2017-04-30 06:42:09 -07:00
Travis Nickles
6716291a95
Found issue with IEnumerable in this case. Use temp list instead.
2017-04-29 21:37:28 -07:00
Travis Nickles
83c7bb7740
Minor optimization for device refreshing and profile switching
2017-04-29 01:19:45 -07:00
Travis Nickles
ca2074d76f
Version 1.4.65
2017-04-28 11:57:33 -07:00
Travis Nickles
44501c24de
Revert back to old disconnect bluetooth behavior
2017-04-26 18:39:33 -07:00
Travis Nickles
508c2b2067
Rename new hotkey option. Some optimizations for Options form.
2017-04-26 14:51:15 -07:00
Travis Nickles
2a20350b6b
Some minor changes
2017-04-25 20:07:02 -07:00
Travis Nickles
ea3b1401f0
Only update battery status for one controller instead of entire controller list
...
Event is also executed async now.
2017-04-25 02:24:14 -07:00
Travis Nickles
00b6c5e1ea
Add new byte mapping and xy axis mapping methods
2017-04-24 07:16:42 -07:00
Travis Nickles
e34e8115ad
Fix some button mapping issues. Style changes. Change runStartupPanel
2017-04-24 02:43:56 -07:00
Travis Nickles
ade55d3b9f
Change methods to check for null thread objects
...
It looks like there are cases when the stop update
methods could be called before the thread objecs are
created
2017-04-22 19:46:50 -07:00
Travis Nickles
3e4a5c0562
Fixes for Quick Charge mode
...
Resolves issue #19 .
2017-04-22 07:49:01 -07:00
Travis Nickles
ecb271cfb1
Fixed readout of battery status
...
ds4drv showed that the method used before was not
correct
2017-04-22 07:00:12 -07:00
Travis Nickles
23ee6f9d8a
Minor style changes and excess removed
2017-04-22 00:26:44 -07:00
Travis Nickles
52c5fde941
Some minor changes
2017-04-21 21:22:36 -07:00
Travis Nickles
9173ab72fe
Cache control to state field information to speed up some methods
2017-04-21 02:48:13 -07:00
Travis Nickles
32cbd77708
Minor edits to improve readability
2017-04-20 20:09:08 -07:00
Travis Nickles
6c83ca2470
Calculate stick angles for each state change
2017-04-16 02:54:34 -07:00
Travis Nickles
92b4e2da24
Trim more property usage
2017-04-15 23:22:04 -07:00
Travis Nickles
beadb313ff
Only access length property once in for loop
2017-04-11 19:26:08 -07:00
Travis Nickles
0f705e667e
Remove unneeded warn field usage
2017-04-09 01:17:52 -07:00
Travis Nickles
da3efd2589
Fix idle disconnect for Sony Dongle connections
...
Related to issue #13
2017-04-08 16:13:56 -07:00
Travis Nickles
f050df5f81
Change input delay warning status depending on connection type.
...
No longer use a fixed interval
2017-04-07 08:59:15 -07:00
Travis Nickles
7ae8e0deb8
Allow idle disconnect for sony dongle
2017-04-06 20:24:16 -07:00
Travis Nickles
6ae80efad4
Make sure idle disconnect can work
2017-04-06 13:05:16 -07:00
Travis Nickles
a239f50192
Remove unnecessary timer and add some minor tweaks
2017-04-06 11:58:47 -07:00
Travis Nickles
a65dfa0624
Only attempt device removal on exit when using Sony dongle
2017-04-06 08:30:41 -07:00
Travis Nickles
51cbe22a90
Tweak disconnect routine
2017-04-06 01:19:12 -07:00
Travis Nickles
5c74a00d90
Allow disconnect routines to work with Sony Dongle.
...
The main routine was made by aspalmer.
2017-04-05 18:37:38 -07:00
Travis Nickles
bfbcc15df5
Detect the Sony Wireless Adaptor as its own connection type
2017-04-05 16:51:20 -07:00
Travis Nickles
a0cff7ba30
Fixed issue with an unreleased lock blocking device removal. Fixed chance for duplicate log entries for device removal.
...
Resolves issue #7 .
2017-03-29 17:44:10 -07:00
Travis Nickles
a2fb603d72
Minor enhancements. Update changelog link. Add sleep period to reEnableDevice method.
2017-03-29 07:26:07 -07:00
Travis Nickles
a167132c0a
Merge https://github.com/ondr3j/DS4Windows into ondr3j_audio
2017-03-29 02:12:37 -07:00
Travis Nickles
7d6e33ba2f
Remove some property usage and minor improvements
2017-03-28 01:48:02 -07:00
Travis Nickles
d363257205
Use plain for loop instead of foreach.
...
There is a noticeable speed difference.
2017-03-27 08:19:10 -07:00
Travis Nickles
82c3d4beff
Try getting around wait yet again
2017-03-25 01:29:25 -07:00
Travis Nickles
156b7103e6
Make ds4 threads background threads. Still trying to make output thread exit gracefully.
...
The switch to using background threads reduced input lag.
2017-03-24 08:06:01 -07:00
Travis Nickles
9d190fcaf7
Correct issue when two threads try to abort ds4Output thread simultaneously
2017-03-24 01:08:31 -07:00
Travis Nickles
4e33578686
Remove some property usage and use explicit getter methods instead.
...
This shouldn't have been necessary but testing with optimized
release builds has shown that the overhead of using properties
frequently introduces undesired input lag.
2017-03-23 19:32:33 -07:00
Travis Nickles
3e0e5bebfc
Change interval used for warnings depending on protocol
2017-03-23 01:12:50 -07:00
Travis Nickles
bd73978204
More testing of threading changes.
2017-03-22 23:39:31 -07:00
Travis Nickles
d295c1af2a
Change thread priority back to AboveNormal. Change how threads are killed.
2017-03-22 19:35:18 -07:00
Travis Nickles
7f1a7485a7
Rename static property
2017-03-22 02:41:04 -07:00
Travis Nickles
5dbc193351
Reduced input lag by implementing overlapped IO and changing threading
2017-03-22 00:52:54 -07:00
Travis Nickles
0dd442f813
Use Highest thread priority
...
It does improve input lag slightly with
no real impact on CPU usage
2017-03-20 15:17:43 -07:00
Travis Nickles
2b00244c62
Raise thread priority.
...
Using AboveNormal priority for now. Test Highest priority
at some point.
2017-03-19 07:09:57 -07:00
Travis Nickles
1f42e17996
Merge tracking branch 'lag_reduce' into jay
2017-03-19 00:45:28 -07:00
Travis Nickles
36cc2c5012
Add flags to reduce input lag
2017-03-09 16:07:17 -08:00
Travis Nickles
57da16278e
Simplify interpreting dpad state
2017-02-18 02:58:44 -06:00
Ondrej Patrovic
2a0cc058e7
Fix disappearing audio with DS4 wireless dongle
2016-11-21 20:06:38 -05:00
Anders Fischer-Nielsen
02c0c6564b
Added PID for new DS4 controller.
2016-10-05 18:18:59 +02:00
Jays2Kings
1bfc69ee37
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
2016-09-21 21:38:38 -04:00
Jays2Kings
fa639ba31c
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)
2015-12-13 16:30:54 -05:00
Jays2Kings
8d9f69db44
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
2015-11-28 00:47:26 -05:00
jays2kings
86079b029e
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
2015-07-30 23:34:22 -04:00