I once figured out that I could use an application that would allow me to generate any force feedback effect supported by a device so that I could sniff the USB communication and see what raw data the device actually gets. There doesn't seem to be anything like this around so I kinda hacked myself up such tool.
What I present here is a bit of a testing version of ForceFeedback Inspector. If you'd like to give it a try and report back any issues, I'd appreciate it.
If nothing else it could serve as an example how to use force feedback with SlimDX as some working sample code was pretty hard to come by.
Have fun!
=====
v2.2.1.0
+ Use OBJECTIDS instead of OBJECTOFFSETS to indentify Force Feedback actuators. This might resolve the E_INVALIDARG exception upon effect creation.
+ Unacquire device before changing axes range.
v2.2.0.0
+ Doesn't hang on attempt to update device's status when the application looses focus
+ Slightly more organized error reporting
+ Add description for "Directions" effect parameter
(+) More strings moved to resources, a little bit of code reorganizing for better readability
v2.1.0.0
+ Bumped the required .NET runtime version to 4.0
+ Built against January 2012 version of SlimDX
+ Added tooltips to force feedback parameters
+ Removed ClickOnce installer. You may now uninstall the previous versions from "Programs and Features" (Vista+) or "Add/Remove programs"(XP)
To run this application, you will need SlimDX x86 runtime to be installed. (You probably don't have it even if you were using this tool before)
v2.0.0.0
+ Supports up to 8 force feedback effects being played back at once
+ Supports multiple force feedback devices connected at once (untested)
+ Shows hardware information about connected devices
+ Numerous code cleanups and improvements
- In order to follow Microsoft specs, the application releases acquired devices when it looses focus
v1.0.0.0
Known issue: Attempt to create a Ramp Force effect throws E_INVALIDARG exception, although it could as well be a bug in SlimDX or Logitech drivers.
ToDo:
- Create Directions controls in an extra panel, don't add them to GroupBox
- Add better code commentary to some sections
- Describe what each FFB effect parameter is for (MSDN database kinda sucks).
What I present here is a bit of a testing version of ForceFeedback Inspector. If you'd like to give it a try and report back any issues, I'd appreciate it.
If nothing else it could serve as an example how to use force feedback with SlimDX as some working sample code was pretty hard to come by.
Have fun!
=====
v2.2.1.0
+ Use OBJECTIDS instead of OBJECTOFFSETS to indentify Force Feedback actuators. This might resolve the E_INVALIDARG exception upon effect creation.
+ Unacquire device before changing axes range.
v2.2.0.0
+ Doesn't hang on attempt to update device's status when the application looses focus
+ Slightly more organized error reporting
+ Add description for "Directions" effect parameter
(+) More strings moved to resources, a little bit of code reorganizing for better readability
v2.1.0.0
+ Bumped the required .NET runtime version to 4.0
+ Built against January 2012 version of SlimDX
+ Added tooltips to force feedback parameters
+ Removed ClickOnce installer. You may now uninstall the previous versions from "Programs and Features" (Vista+) or "Add/Remove programs"(XP)
To run this application, you will need SlimDX x86 runtime to be installed. (You probably don't have it even if you were using this tool before)
v2.0.0.0
+ Supports up to 8 force feedback effects being played back at once
+ Supports multiple force feedback devices connected at once (untested)
+ Shows hardware information about connected devices
+ Numerous code cleanups and improvements
- In order to follow Microsoft specs, the application releases acquired devices when it looses focus
v1.0.0.0
Known issue: Attempt to create a Ramp Force effect throws E_INVALIDARG exception, although it could as well be a bug in SlimDX or Logitech drivers.
ToDo:
- Create Directions controls in an extra panel, don't add them to GroupBox
- Add better code commentary to some sections
- Describe what each FFB effect parameter is for (MSDN database kinda sucks).