#include <cafe/vpad.h>

void VPADSetGyroZeroDriftMode( s32 chan, VPADGyroZeroDriftMode mode );


chan Controller number. 0 for DRC1 and 1 for DRC2.
mode Any one of VPAD_GYRO_ZERODRIFT_*.

Return Values



Sets the zero-point drift correction mode of the specified channel's DRC. These settings are applied to all axes.

If VPAD_GYRO_ZERODRIFT_LOOSE is set, correction may be applied even during constant velocity motion, because the DRC value is treated as stable and an attempt is made to apply correction even if the value varies slightly. In such cases, this can be improved by setting a mode that uses stricter conditions. The default is VPAD_GYRO_ZERODRIFT_STANDARD.

If VPAD_GYRO_ZERODRIFT_NONE is set, the runtime zero-point drift correction is not applied.
This mode is suitable to use the slower and less movement of the DRC in the game.
In this case, we strongly recommend that you implement the calibration process in the game as follows.

It is desirable that the above process is executable by the user in the game. This is because the zero-point drift may occur in the middle of the game.

Do Not Call From

Background Do not call this function from the background.
Multiple threads This function is not thread-safe.
Multiple Cores Do not call this function from more than one Core.

See Also


Revision History

2013/05/08 Automated cleanup pass.
2012/08/17 Added the description of a new zero drift mode ( VPAD_GYRO_ZERODRIFT_NONE ).
2011/03/30 Initial version.