Good to be sending you a patch for a change. #27

wants to merge 3 commits into


None yet
2 participants

This fixes the button-press issues reported on the VRPN Redmine. I tested the fixes for the classic controller plug-in but I don't have a nunchuck or a guitar hero to test with. From looking at the code, I'm pretty sure those will work as well.

If there are other plug-in controllers with buttons, I'll bet they also need this fix.

russell-taylor added some commits Nov 21, 2012

Avoids decrypting bytes which are actually button bytes. Only decrypt…
…s bytes which need to be. This fixed a bug reported to the VPRN list. Verified that this fixed the problem.
Applied a fix similar to the one for the classic.c button problem to …
…two other controllers that seem to have buttons. The original problem in VRPN was reported on the nunchuck, but I don't have a nunchuck to test the fix on. It was pretty clear that these fixes should work from looking at the code, but they have not yet been tested.

rpavlik commented Dec 7, 2012

Does any decryption actually need to be done? It's my understanding that with the latest initialization code, no decryption is needed, and the decryption code was just left over. Try the latest master and see what it does for you.

I actually pulled the fork off of the latest
master. I think I may have mis-spoken. The code
comments said "decrypting" but I'm pretty sure
that this is just button/analog decoding that is
going on. The portion of code I modified was bit
moving, not hash calculations.


At 12:51 PM 12/7/2012, you wrote:

Does any decryption actually need to be done?
It's my understanding that with the latest
initialization code, no decryption is needed,
and the decryption code was just left over. Try
the latest master and see what it does for you.

Reply to this email directly or
#27 (comment)
it on GitHub.

Russell M. Taylor II, Ph.D.
CB #3175, Sitterson Hall
University of North Carolina, Voice: (919) 962-1701
Chapel Hill, NC 27599-3175 FAX: (919) 962-1799


rpavlik commented Dec 13, 2012

Ah, yes, but pretty much anything involving 0x17 is "decryption" - if you send it a blank key, that's how to decrypt the data before parsing it out. This patch changes the bounds on those loops - and (if I recall correctly) the current master doesn't have those loops at all. I've tested with everything except a classic controller, essentially.

rpavlik added a commit that referenced this pull request Apr 25, 2016

Squashed 'cmake/' changes from cac13f1..2c5bec7
2c5bec7 Update WinHID drastically to use FindWindowsSDK, so it can easily build against much newer SDKs/DDKs/WDKs.
2273ac4 Add two new functions to FindWindowsSDK
eded907 Fix quietness of finding windows SDK and add comment
3f5f7df Add a module to help find things on MinGW (specifically MSYS2).
c90ca93 Backported bugfixed version of WriteCompilerDetectionHeader.
6a941e5 ColibriApi: Module written for VRPN.
1dd3d89 Another flag in ExtraCompilerWarnings, to get GCC to stop whining about boost::optional.
90d1a89 Formatting fix in finddirectshow
8b37b27 Updated the InterSense finder to look in default install locations.
bd6a7ca Improvements to the WindowsSDK finder for newer win10 sdks and better handling of them.
58ed198 Add a minor tweak to the VRPN module
83a2091 Add a FindJsonCpp module I wrote for various OSVR projects.
faf198f Major improvements to FindSDL2 for Mac support. Thanks to David, aka @d235j for lots of help.
fe2273c Add GenerateCompatibilityVersionFile, for keeping your msvc from compiling against your android builds.
01d0c41 Major improvements to FindWindowsSDK and FindDirectShow
16a3a8c Add an upstream "FindGit" from CMake 3.2.0
6bc6a53 Fix up create dashboard scripts to use a shared Git location.
1cc81cc Improve SDL2 finder
53d7c1b Improve quiet finding.
dbd7ca2 Trailing newline
834581c Add a handful of new modules.
403a97d Fix copyright line.
3e2ae75 Merge pull request #40 from Meinersbur/patch-2
a3da0c4 Use CMAKE_CURRENT_SOURCE_DIR consistently
5b85e5c Merge pull request #23 from StudioEtrange/master
e5a5957 Merge pull request #26 from tomgey/master
23aa3af Merge pull request #31 from janisz/Get_CPU_count
be74670 Merge pull request #34 from redstar/packed_ref
b9ae011 Use .git/packed-refs if ref is not found.
c999fd3 Rename opencv finder to indicate it only looks for old OpenCV.
4fec79f Add CopyImportedTarget.
403d8a9 Update readme.
eb5d23a Add udev and Xrandr finder, by @godbyk
5d6c1fe Add Oculus SDK finder - initial version by @godbyk, tweaks by me.
d2d8ee7 VRPN: Optionally include LibUSB1
fe91913 Add some more ghost fake ehaders.
1cf5047 Update comment.
55d43d6 VRPN/quatlib: Look in where the VRPN CMake installs by default.
66ef6a7 Minor HIDAPI finding changes.
21d2a60 CMake >= 3.1 doesn't like the construction "$ENV{ProgramFiles(x86)}", so we work around it.
2ea7475 Improve directx support.
af2331f Find and use MSCGEN in Doxygen.
2ff8db9 Merge pull request #32 from vladzzag/master
fef6dfd Added FindWayland.cmake
f9bdb65 Set CPU_Count in GetCPUDetails
0f545c3 Update launcher templates to match attributes.
5be4bc0 Add a module to extract a preprocessor definition.
da8b557 Find libfreespace
c230fc3 Get better at finding libusb1 without pkg-config
87b6fa2 Fix tabs
6870fac Update directshow, windowssdk, directx, and winhid (related)
9728850 Remove outdated/replaced module
ceb6031 Don't use the -Weffc++ warning flag
7b5680a Improvements to doxygentargets
4bc009e Add gitattributes file, primarily to handle launcher templates.
1abc46a Fixes to DoxygenTargets.cmake
039b677 Merge pull request #27 from inolen/master
2ee9364 Update README.markdown
2784e2f added FORCE parameter to enable checking all preprocessor configurations use target's INCLUDE_DIRECTORIES property to pass include directories to cppcheck
370d602 BoostTestTargets: fix setting FAIL_REGULAR_EXPRESSION without TESTS list
ee59dc8 BoostTestTargets: compatibility with CMake 2.6
08e6657 allow to use semi colon in var like ENVIRONMENT. We need this on windows for setting PATH variable.
ce48ca6 agive a chance to choose PLATFORM and fxes when RUNTIME_LIBRARIES_ENVIRONMENT is empty
298ec78 Use CMAKE_CURRENT_SOURCE_DIR in GetGitRevisionDescription.
8def499 Windows SDK updates from working on VRPN
9244b84 Impending CMake 3.0 implies that 2.9.0 is no longer ~= infinity.
368d53e Update backported module and add backported ParseArguments.
5fa68c1 Merge pull request #19 from PiQuer/master
ef7faf4 use CMAKE_CURRENT_LISTDIR instead of CMAKE_SOURCE_DIR as GIT_PARENT This guarantees that the search begins in the subdirectory (submodule) where the function is called. Otherwise we will most likely pick up the super-repository.
e557594 Merge pull request #17 from gunnarbeutner/patch-1
dc238c7 Merge pull request #18 from PiQuer/master
41097f2 make GetGitRevisionDescription.cmake aware of submodules
67c8277 Fix syntax error in BoostTestTargets.cmake
f77873d Update help files.
7eef0a6 Add FindInterSense.cmake
3f1a82f Fix up OpenHaptics nested targets.
4f298e1 Improve windows SDK finding.
11b88e5 Find DirectX XInput library
29bb4a7 Merge pull request #15 from freitass/patch-1
df6aaf4 Merge pull request #16 from lpberg/winhid-wdk8
a287055 added support for wdk8 in WinHID
d3a5109 Make launchers on *nix executable
95ae78e Fix VR Juggler base path determination.
c9b7f60 Fix CreateLaunchers to support forward-compatible VC versions
ec42f07 Skip calibration.table - not used
739f05a Fix FindVRJuggler for newer cmake versions
7eb150d Update help.
3c6058b Update find vrjuggler 3.0 to work more reliably
f72cefb Fixed cppcheck unusedFunction option
f9fd40c Try handling new versions of cppdom that have their own config file.
b13f248 Update WindowsSDK for VS2012
f763d94 Explicitly specify a binary dir for openhaptics nested targets.
0dd813a Update copyright date
1ad505f Update note about git-subtree
3af26c6 Improve finder for winhid

git-subtree-dir: cmake
git-subtree-split: 2c5bec74c1d9180e7d259431aa1fc926506583a3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment