com.qualcomm.robotcore.hardware

## Interface ServoControllerEx

- All Superinterfaces:
    HardwareDevice, ServoController

      public interface ServoControllerEx
      extends ServoController

  ServoControllerEx is an optional servo controller interface supported by some hardware that provides enhanced servo functionality.
  See Also:
    `PwmControl`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.qualcomm.robotcore.hardware.ServoController

      `ServoController.PwmStatus`

    - ### Nested classes/interfaces inherited from interface com.qualcomm.robotcore.hardware.HardwareDevice

      `HardwareDevice.Manufacturer`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `PwmControl.PwmRange` | `getServoPwmRange(int servo)` Returns the PWM range of the indicated servo on this controller.
    `boolean` | `isServoPwmEnabled(int servo)` Returns whether the PWM is energized for this particular servo
    `void` | `setServoPwmDisable(int servo)` Individually de-energizes the PWM for a particular servo
    `void` | `setServoPwmEnable(int servo)` Individually energizes the PWM for a particular servo
    `void` | `setServoPwmRange(int servo, PwmControl.PwmRange range)` Sets the PWM range of the indicated servo.
    `void` | `setServoType(int servo, ServoConfigurationType servoType)` Sets the servo type for a particular servo

    - ### Methods inherited from interface com.qualcomm.robotcore.hardware.ServoController

      `getPwmStatus, getServoPosition, pwmDisable, pwmEnable, setServoPosition`

    - ### Methods inherited from interface com.qualcomm.robotcore.hardware.HardwareDevice

      `close, getConnectionInfo, getDeviceName, getManufacturer, getVersion, resetDeviceConfigurationForOpMode`

- - ### Method Detail

    - #### setServoPwmRange

          void setServoPwmRange(int servo,
                                PwmControl.PwmRange range)

      Sets the PWM range of the indicated servo.
      Parameters:
        `servo` - the servo port number on the controller
        `range` - the new range for the servo
      See Also:
        `getServoPwmRange(int)`, `PwmControl.setPwmRange(PwmControl.PwmRange)`

    - #### getServoPwmRange

          PwmControl.PwmRange getServoPwmRange(int servo)

      Returns the PWM range of the indicated servo on this controller.
      Parameters:
        `servo` - the servo port number on the controller
      Returns:
        the PWM range of the indicated servo on this controller.
      See Also:
        `setServoPwmRange(int, PwmControl.PwmRange)`, `PwmControl.getPwmRange()`

    - #### setServoPwmEnable

          void setServoPwmEnable(int servo)

      Individually energizes the PWM for a particular servo
      Parameters:
        `servo` - the servo port number on the controller
      See Also:
        `PwmControl.setPwmEnable()`

    - #### setServoPwmDisable

          void setServoPwmDisable(int servo)

      Individually de-energizes the PWM for a particular servo
      Parameters:
        `servo` - the servo port number on the controller
      See Also:
        `PwmControl.setPwmDisable()`

    - #### isServoPwmEnabled

          boolean isServoPwmEnabled(int servo)

      Returns whether the PWM is energized for this particular servo
      Parameters:
        `servo` - the servo port number on the controller
      See Also:
        `PwmControl.isPwmEnabled()`

    - #### setServoType

          void setServoType(int servo,
                            ServoConfigurationType servoType)

      Sets the servo type for a particular servo
      Parameters:
        `servo` - the servo port number on the controller
        `servoType` - the ServoConfigurationType instance to set