Esempio n. 1
0
void CurieIMUClass::setGyroOffset(int axis, int offset)
{
    if (axis == X_AXIS) {
        setXGyroOffset(axis);
    } else if (axis == Y_AXIS) {
        setYGyroOffset(axis);
    } else if (axis == Z_AXIS) {
        setZGyroOffset(axis);
    }

    setGyroOffsetEnabled(true);
}
Esempio n. 2
0
void CurieIMUClass::setGyroOffset(int axis, float offset)
{
    int bmiOffset = offset / 0.061;

    if (bmiOffset < -512) {
        bmiOffset = -512;
    } else if (bmiOffset > 511) {
        bmiOffset = 511;
    }

    if (axis == X_AXIS) {
        setXGyroOffset(bmiOffset);
    } else if (axis == Y_AXIS) {
        setYGyroOffset(bmiOffset);
    } else if (axis == Z_AXIS) {
        setZGyroOffset(bmiOffset);
    }

    setGyroOffsetEnabled(true);
}
Esempio n. 3
0
void CurieIMUClass::noGyroOffset()
{
    setGyroOffsetEnabled(false);
}
Esempio n. 4
0
void CurieIMUClass::autoCalibrateGyroOffset()
{
    BMI160Class::autoCalibrateGyroOffset();

    setGyroOffsetEnabled(true);
}
Esempio n. 5
0
void CurieIMUClass::enableGyroOffset(bool state)
{
    setGyroOffsetEnabled(state);
}