
A C# application (along with source code) that implements these PID algorithms is available from pathbender GmbH, which allows for parameter adjustments and also gives visual feedback of measured positions and generated response values. Instead pathbender GmbH has determined a combination of two PID (proportional-integral-derivative) controller algorithms with dynamically adjusted target values to be well suited for calculating the platform response. striderVR itself does not mandate any particular algorithm to calculate the platform response to a users displacement. The user’s detected linear and rotational movements are then used to calculate a platform rotation and linear transport response to compensate his body rotation and move the user back to the center of the platform. Due to the particular boundaries of the Kinect system the user must not turn away his body from the tracking camera. This is done using a Microsoft Kinect 2 (“Kinect”) sensor and averaging over the position of various body parts. To supply adequate motor input, the user’s physical position on the platform, namely linear front/back displacement and rotation around the platform center, must be reliably determined in near real time.

This library can easily be ported to other platforms that allow serial communication over USB ports. NET library (along with C# source code) is available from pathbender GmbH that simplifies setting the motor speeds between -100% (full reverse) and +100% (full forward) of the maximum motor speed (determined by the maximum voltage supplied to the hardware). This allows to individually set the speeds of the motors through serial commands sent over an USB connection. Both motors are controlled by a Cytron SmartDriveDuo-60 motor driver circuit. The physical rotation and linear displacement are both caused by two sensorless brushed DC motors embedded in striderVR. The mentioned platform rotation and linear displacement are both “real” (rather than “virtual”). In the following, we will be talking about the “physical” user movement when we refer to the actual movement of the user in the physical world, and the “virtual” user movement when we speak about the users perceived movement in the virtual world.

This gives the user a near perfect illusion of walking in a virtual world, while in the physical world he neither leaves the striderVR platform nor turns his body away. As the user walks on the striderVR platform, it will response with rotation and linear displacement so that the user never leaves the platform and his body orientation is always kept the same. The user steps onto a platform, that is able to apply a rotation and a linear displacement to him at the same time.


StriderVR is a hardware platform that allows for natural movement in virtual reality environments.
