Commit graph

105 commits

Author SHA1 Message Date
David Khachaturov
54a75d722a Clean-up 2019-04-16 15:58:26 +01:00
David Khachaturov
be17cd1090
Update README.md 2019-04-16 15:44:09 +01:00
David Khachaturov
533a3c89bb
Merge pull request #136 from StarryTony/master
Adjust controller parameters from the UI directly (by StarryTony)
2019-04-16 15:38:43 +01:00
Tony
0c20cd0d38 update screenshots 2019-04-15 14:19:02 +01:00
Tony
2f87a6f64a Config panel can optionally hide by clicking right arrow 2019-04-15 14:03:18 +01:00
Tony
b04374e57d upload example picture 2019-04-14 21:09:58 +01:00
Tony
06c2f2c30b adjust UI 2019-04-14 21:05:47 +01:00
Tony
4eca64e835 update README 2019-04-14 17:25:03 +01:00
Tony
181aeba71b update README 2019-04-14 17:23:03 +01:00
Tony
d8c8f26a93 update changelog 2019-04-14 16:52:41 +01:00
Tony
de76efe1c0 BetterJoyForCemu v6.1 (based on v6 Nightly)
Automatically enumerate options and enble to control them directly from the UI. Any further options can be supported. -- by StarryTony
2019-04-14 16:49:42 +01:00
David Khachaturov
3d865ba273
Update README.md 2019-04-12 19:51:23 +01:00
David Khachaturov
f0a711fac4
Update README.md 2019-04-12 19:47:21 +01:00
David Khachaturov
8200204438 Hides BetterJoy from Alt+Tab when minimised. 2019-04-12 19:42:16 +01:00
David Khachaturov
25d3fdbe20 Separate swap buttons out into swapAB and swapXY.
For https://github.com/huphuphup
2019-04-12 13:52:45 +01:00
David Khachaturov
1fe6c41df4
Merge pull request #122 from idan-weizman/master
Fix stick casting overflow.
2019-03-13 12:26:57 +00:00
Idan Weizman
c0db76d738 Fix stick casting overflow. 2019-03-13 09:30:24 +02:00
David Khachaturov
62e862aa24
Update README.md 2019-02-03 16:20:47 +00:00
David Khachaturov
95f1b2bbde Began implementation of 3rd party controller support 2019-02-03 16:16:00 +00:00
David Khachaturov
3eddf935c2
Merge pull request #108 from quark-zju/rumble
Fix Rumble feature for bluetooth devices
2019-02-03 12:04:16 +00:00
Jun Wu
390313b3da Fix Rumble feature for bluetooth devices
When rumble_obj.t >= 0, SendRumble should be frequently called to make
Rumbling actually work.
2019-02-02 21:47:21 -08:00
David Khachaturov
9e542510a9 Merge branch 'master' of https://github.com/Davidobot/BetterJoyForCemu 2019-02-02 15:52:45 +00:00
David Khachaturov
c8e98cc86e Adjusted wait timing to allow for rumble (seems to not have re-introduced lag; more testing needed)
More joycon joining bug-fixing (more like fixing my bad coding)
2019-02-02 15:52:23 +00:00
David Khachaturov
bf69877a07
Update README.md 2019-02-02 15:33:03 +00:00
David Khachaturov
235aca5f75 Allow for more than 1 pair of joycons to join up (could be buggy)
Change some colours
2019-02-02 15:19:03 +00:00
David Khachaturov
c8e0f93d54 Adjusted previous commit to prevent USB timeout 2019-02-02 14:01:14 +00:00
David Khachaturov
118f8b6d6b
Merge pull request #106 from quark-zju/lag
SendRumble less frequently to reduce input lag, Read Joycon inputs in a non-blocking way (thanks quark-zju)
2019-02-02 13:34:53 +00:00
Jun Wu
5dd969da05 Read Joycon inputs in a non-blocking way
This makes sure ReceiveRaw() won't block forever, so Poll() has chance
to SendRumble().

Practically, it seems the Joycons frequently send inputs so it's not
necessary, at least for the bluetooth version I got.
2019-02-02 01:36:28 -08:00
Jun Wu
85f77cb91c SendRumble less frequently to reduce input lag
I was using two Joycons as a single controller. One (often right, sometimes
both, sometimes left) of the Joycons seems to have random lags.
This patch reliably removes the lag for me.

Potentially fixes #32.

More context:

I first excluded the possibility that the Bluetooth connection is lagging,
because when I click the "locate" button, both Joycons can rumble
immediately without lag.

Reading the existing issues seems to suggest something was wrong with
threading. When I tried moving both Joycons' "Poll" to a single thread,
by calling both ReceiveRaw() and other.ReceiveRaw() in a single Joycon
Poll thread, and removing "lock { ...}"s), lag still exists.

I then suspected the I/O loop is too busy so the code does not have time
to consume events in time. By adding some debug prints, I was able to
confirm that at the time the code receives an event (after hid_read),
it was already too late. However, it is strange that a) hid_read almost
always returns immediately, b) a single "poll" still takes a few
milliseconds. Finally, I found "SendRumble" is the culprit causing
the majority of the few milliseconds delay. Therefore the patch.

The 5 seconds is not a scientific choice. It works for me. I don't have
a USB controller to test it right now.
2019-02-02 01:31:17 -08:00
David Khachaturov
edd72be31a
Update README.md 2019-01-31 10:56:18 +00:00
David Khachaturov
3f2e82e9ba
Update README.md 2019-01-27 13:42:26 +00:00
David Khachaturov
665a76bb94 Merge branch 'master' of https://github.com/Davidobot/BetterJoyForCemu 2019-01-24 18:29:22 +00:00
David Khachaturov
a451fa94fc Added battery indicator in the form of a background colour (Green->Orange->Red->Dark Red->Black) and in UdpServer info.
Improved stick calculations. Thanks eWaster.
2019-01-24 18:28:49 +00:00
David Khachaturov
c4e4794020
Update README.md 2019-01-19 15:36:34 +00:00
David Khachaturov
920a2a049d Added PurgeAffectedDevices option. 2019-01-19 14:47:08 +00:00
David Khachaturov
4fbc316371
Merge pull request #95 from marco-calautti/master
Add option to start the application minimized to tray; add a proper nuget dependency for ViGEmClient
2019-01-13 13:35:15 +00:00
Marco Calautti
fa194be3cc Fixed bracket style. 2019-01-12 12:02:39 +00:00
Marco Calautti
72fccace33 Add option from starting the application minimized to tray. Alsso added proper nuget dependency for ViGEmClient. 2019-01-12 12:00:15 +00:00
David Khachaturov
7fcfa1f383
Merge pull request #90 from brakhane/gyro-drift
prevent gyro drift on some controllers
2019-01-06 16:50:27 +01:00
unknown
95a35e39bd prevent gyro drift on some controllers
On some original Nintendo controllers gyro drift occurs (moves
constantly to the right, for example).

Not dividing the neutral point by 2 seems to fix the problem, and
it doesn't seem to effect other controllers negatively (tested
with 8bitDo N30 pro and SF30 Pro).
2019-01-05 22:52:09 +01:00
David Khachaturov
9a678b6fac
Update README.md
More problem solutions.
2018-09-06 16:32:22 +02:00
David Khachaturov
01d5a91ba9
Update README.md 2018-09-05 11:35:45 +02:00
David Khachaturov
2c19d9c837
Update README.md
Added solution to common problem of controllers not being recognised after using program.
2018-09-05 11:35:22 +02:00
David Khachaturov
2fc34799ce
Update README.md
Changed forgotten defaults.
2018-09-04 11:17:23 +02:00
David Khachaturov
af21ac1cfe
Update README.md 2018-08-23 16:57:48 +03:00
David Khachaturov
68b6928d86 Fixed gyro in single joycon mode.
Added tooltip on button.
2018-08-23 16:36:55 +03:00
David Khachaturov
37aba95e81 Added ability to toggle for single/double joycon mode.
Reworked UI further.
Final commit for v5.
2018-08-23 15:48:19 +03:00
David Khachaturov
be3c73bc96 Reworked UI.
Improved USB support.
Improved rumble.

(all in all, the program is becoming actually nice to use)
2018-08-22 12:52:41 +03:00
David Khachaturov
64946ed444 Implemented Progressive Scan. (can leave program running and (dis)connect controllers whenever)
Fixed controllers timing out randomly.
2018-08-18 20:52:34 +03:00
David Khachaturov
82fbf36796 Added new configuration manager.
More misc changes.
2018-08-18 14:21:20 +03:00