In addition to the low frequency (left) and high frequency (right) controller vibration motors, the Xbox One gamepad is equipped with two impulse triggers for sending game feedback to the user’s left and right trigger fingers.
The Xbox One gamepad contains four vibration motors that provide:
You can use the low- and high-frequency vibration of the entire controller provide an experience similar to what could be provided with Xbox 360 controllers. With the new trigger vibration feature of Xbox One gamepads, you can provide feedback independently to the left and right triggers. Among other examples, you could use this new feature to give users tactile feedback for:
Note The left trigger motor and right trigger motor are identical to each other. Though the left and right motors can vibrate independently at simultaneously different intensities, they vibrate at the same frequency and they have the same range of intensities.
All gamepad vibration is turned on and off with the SetVibration method. The SetVibration method takes a GamepadVibration structure that describes the intensity with which to vibrate each of the four gamepad vibration motors. The gamepad will then vibrate at the levels that you specified for its four motors for 2,550 ms (with a granularity of 10 ms), or until you call SetVibration again with new values.
Note The shortest time for which you can vibrate the controller at a specific intensity is 10 ms.
You can create complex patterns of controller vibration by setting the various fields of the GamepadVibration structure that you then pass to the SetVibration method. To send complex vibration data over time, simply change the values of the GamepadVibration structure over time and make successive calls to SetVibration with the new values. To immediately–within 10 ms—stop vibration of a specific motor, call SetVibration with a GamepadVibration structure that specifies a value of 0 for the motor level that corresponds to the motor you want to stop.
Getting Started with the Gamepad API