arrow-left

All pages
gitbookPowered by GitBook
1 of 7

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Servo Hub Wiring

hashtag
Wiring Diagrams

hashtag
Wiring the Servo Hub to a Control Hub

Please note that each servo motor's ground pin will face the outer edge of the Servo Hub and the signal pin will be closest to the center. Servos plugged into ports 0, 1, and 2 will be mirrored by servos plugged into ports 3, 4, and 5.

hashtag
Wiring the Servo Hub for control over CAN

Please note that each servo motor's ground pin will face the outer edge of the Servo Hub and the signal pin will be closest to the center. Servos plugged into ports 0, 1, and 2 will be mirrored by servos plugged into ports 3, 4, and 5.

Servo Hub

hashtag
Servo Hub Overview

The REV Servo Hub is compatible with both the REV ION and REV DUO systems. Over a single communication interface it can provide advanced control of up to six (6) servos. This means that the Servo Hub needs no additional PWM cabling between it and your robot controller, greatly simplifying wiring.

Future firmware updates will unlock additional features like current measurements for each output channel, CAN communication, control individual channel power to enable powered-off servo states, and even adjustable output voltage to provide adaptability to a wide range of servo classes.

The Servo Hub is easy to update and configure over the USB-C connection utilizing the REV Hardware Client. With a total current output of 15A shared across all channels, the Servo Hub will give you the power you need to succeed on the field!

hashtag
Features

  • Connectivity

    • USB

    • RS485

    • CAN

  • Advanced Servo Channels

    • Status LED indicates PWM signal status and faults

    • Individual channel current measurement†

  • Configurable output voltage†

  • Over-current protection

  • Reverse polarity protection

  • ESD protection

† - Features available after future software updates.

hashtag
Main Electrical Specifications

Parameter
Min
Typ
Max
Units

Operating Voltage Range

7

-

15

V

Output Voltage

0.5

-

7.4

V

†

Please see the notes for more information.

hashtag
About the Maximum Current Specifications

Each of the Servo Hub's individual port pins are rated for approximately 3 A. This rating, of the port itself, highly depends on the quality of the connection between the Servo Hub and the connector of the servo it is driving.

The Servo Hub has been designed with powerful servos in mind. Many of REV's customers' favorite servos have a stall current of 4 Amps or more. While we don't believe the 4 A stall current will produce enough heat to cause problems with a properly seated and quality connection, a poor connection can cause overheating and thermal runaway that can lead to damage.

The best way to ensure you are making the most of your Servo Power Module's output, is to check that all input and output connections are fully seated with no gaps.

hashtag
Output Current Calculations

It is important to ensure that you do not exceed the maximum total output current of your Servo Power Module. To do this, add together the stall current of each servo being powered by the Servo Power Module. If the total stall current is higher than 15A, you risk triggering the overcurrent protection. Consider reducing the number of servos connected to prevent triggering the overcurrent protections.

hashtag
Mechanical Specifications

Parameter
Min
Typ
Max
Unit

Number of Servo Channels

-

6

-

-

Length

-

85.7 (3.374)

-

mm(in)

Individually switchable channel output power†

Max Total Output

-

-

15

A

Channel Max Output Current †

-

-

3

A

Latching WAGO Connectors

Supported Wire Gauge (Bare Solid/Stranded)

26

14

AWG

Bare Wire Strip Length

0.31

0.33

0.355

in

Supported Wire Gauge (Stranded, with ferrule)

24

18

AWG

Servo Connectors

Input

-

PWM cable (standard 3-wire 0.1” pitch)

-

-

Output

-

PWM cable (standard 3-wire 0.1” pitch)

-

-

Width

-

47.6 (1.874)

-

mm(in)

Height

-

18.3 (0.72)

-

mm(in)

Mounting Hole Diameter

-

#10 Clearance

-

-

Mounting Hole Pattern

-

3 by 1.5

-

in

About the Max. Current Specifications

Channel Pulse

hashtag
Servo Pulse Width Control

Servo Motors are controlled using a technique called Pulse Width Modulation (PWM), where the width of a pulse determines the servo's behavior. The pulse is typically sent to the servo every 20 milliseconds, and the duration of the pulse (measured in microseconds) communicates the desired position or speed.

hashtag
Angular Servos

For angular servo motors, the pulse width directly corresponds to the target position of the servo arm. The Servo Hub allows users to customize the pulse width range to suit their specific servo with a configurable minimum, maximum, and center position. Users can adjust these values to match the servo's capabilities or desired behavior.

  • A shorter pulse width, typically either 1,000 µs (1 ms), or 500 µs (0.5ms), moves the servo to its minimum position (e.g., fully counterclockwise).

  • A longer pulse width, typically either 2,000 µs (2 ms), or 2500 µs (2.5ms), moves the servo to its maximum position (e.g., fully clockwise).

  • A pulse width near the midpoint, typically 1,500 µs (1.5 ms), positions the servo arm at the center.

hashtag
Example Range:

Pulse Width (µs)
Position

hashtag
Continuous Rotation Servos

For continuous rotation servos, the pulse width determines the direction and speed of rotation rather than position. The Servo Hub's configurable minimum, maximum, and center settings can also help calibrate continuous rotation servos. Fine adjustments can be made to the center pulse width to ensure the servo stops accurately at the neutral point.

  • A pulse width of 1,500 µs (1.5 ms) typically stops the servo (no movement).

  • Shorter pulse widths (e.g., 1,000 µs) cause the servo to rotate in one direction, with speed increasing as the pulse width decreases.

  • Longer pulse widths (e.g., 2,000 µs) cause the servo to rotate in the opposite direction, with speed increasing as the pulse width increases.

hashtag
Example Range (Typical):

Pulse Width (µs)
Action

hashtag
Tips and Tricks

Understanding how pulse width controls your servo and leveraging the REV Servo Hub's features can help optimize your servo’s performance for your robot. Test each servo to confirm its behavior and supported pulse width range before integrating it into your system. We suggest the following as a good place to start understanding your servo motors:

  • Servo Variations: Always check the documentation for your specific servo, as pulse width ranges and behavior may vary.

  • Signal Integrity: Ensure the PWM signal is clean and consistent to avoid jittering or erratic behavior.


Channel Power

hashtag
Channel Power

The REV Servo Hub allows each servo channel to be powered individually. This lets users power only the channels they need at any given time. A channel can have power without a signal, or vice versa, depending on the configuration.

hashtag
FTC SDK with Control Hub

The FTC SDK does not currently support runtime control of channel power.

  • Channels are always powered when enabled.

  • When disabled, channels follow the configured Disable Behavior.


hashtag
REVLib for FRC and other Controllers

REVLib provides complete runtime control over channel power.

  • Enabled channels can be turned on or off at any time via the robot program.

  • Disabled channels always adhere to their Disable Behavior configuration, regardless of runtime settings.

hashtag
Disable Behavior

A program can dynamically control whether a channel is powered. However, some users may want a channel to supply power even when it’s disabled. To address this, the Disable Behavior configuration is provided. Each channel has its own Disable Behavior configuration, allowing fine-grained control.

circle-exclamation

Important: Ensure you understand your servo's behavior when it has power but no signal, as this may vary between models.

  • kSupplyPower: Power is provided to the servo while disabled, but no signal is sent.

    • Note: The kSupplyPower setting is most similar to the behavior of the REV Servo Power Module, while the kDoNotSupplyPower setting is closer to the behavior of the Control Hub's servo ports. However, neither of these configurations is an exact match to these devices.

hashtag
When to Use Each Disable Behavior

Selecting the appropriate Disable Behavior depends on your team's specific needs and the use case for each servo channel. Below are some scenarios where each behavior may be advantageous in FIRST Tech Challenge (FTC) or FIRST Robotics Competition (FRC).

By carefully choosing the appropriate Disable Behavior for each servo channel, teams can optimize their robot’s performance and ensure reliable operation under various conditions. Testing your configuration during practice is highly recommended to avoid surprises during competition.

hashtag
kSupplyPower

When maintaining servo position is critical: Use this behavior if your servo must hold its position even when disabled. For example:

  • Keeping a gripper closed around a game element while the robot is temporarily disabled.

  • Ensuring a mechanism like an arm or elevator stays in place when the robot is disabled during testing or a match pause.

When transitioning from disabled to enabled needs to be seamless: If the servo should maintain a consistent state (e.g., avoid sudden movements) when re-enabled, supplying power ensures the servo remains stable.

When you know the servo behavior with no signal: Servos behave differently when powered without a signal. Some may hold their position, while others may drift or "go limp", and others may return to the center position. Ensure you test your servos and understand their behavior in this mode.


hashtag
kDoNotSupplyPower

When the servo model exhibits undesirable behavior with power but no signal: Some servo models behave unpredictably when powered but not receiving a signal. For example, certain servos may jitter or drift uncontrollably in this state, and others return to center position. In such cases, using kDoNotSupplyPower ensures that the servo does not power on until a valid signal is present.

When servo movement while disabled is acceptable: If the mechanism attached to the servo does not require precise positioning or locking, removing power can reduce wear on the servo.

  • Example: Allowing an intake arm to fall into a "neutral" position when not powered.

When protecting servos from overuse: In some cases, continually powering a servo when disabled may contribute to overheating or wear. Use this mode to prolong servo lifespan.


kDoNotSupplyPower: Power is not provided to the servo while disabled.

500 µs

Fully Counterclockwise

1,500 µs

Center

2,500 µs

Fully Clockwise

500 µs

Full Speed (Clockwise)

1,500 µs

Stop

2,500 µs

Full Speed (Counterclockwise)

Troubleshooting

hashtag
Troubleshooting Guide

This troubleshooting guide helps diagnose and resolve issues with the REV Servo Hub.

hashtag
Power Issues

If the Servo Hub is unresponsive (no lights):

  1. Check Power Supply:

    • Verify the power supply provides sufficient voltage (6–12V recommended).

    • If using a REV PDH, check the breaker for the channel powering the Servo Hub.

hashtag
Overcurrent Faults

The Servo Hub protects itself and the connected servos from overcurrent conditions. There are two types of overcurrent faults:

hashtag
Channel Overcurrent Fault

Condition: A channel exceeds 6A for a prolonged period or experiences short spikes above 7A.

Indicators: Channel LED blinks amber at a high frequency and/or power to the affected channel is removed.

Resolution:

  1. Remove the load from the servo.

  2. Allow the current to drop to clear the fault.

hashtag
Total Device Overcurrent Fault

Condition: The total current across all six channels exceeds 15A.

Indicators: All channel LEDs blink amber at a high frequency and/or power to all channels is removed.

Resolution:

  1. Disconnect servos and inspect for faults or excessive current draw.

  2. Ensure no channel is shorted.

  3. The fault will clear 1 second after the total current drops below 15A.

Common Causes:

  • Overcurrent faults may indicate excessive load or a servo malfunction. Disconnect and test the servos individually.

  • Stalled high-power servos (e.g., Axon Max with a stall current of ~4A).

  • Shorts in servo wiring.43

hashtag
Low Battery Warnings

The Servo Hub will alternate between blue and orange on the main status LED when the input voltage is low:

  • Low Voltage Threshold: Below 5.5V.

  • Clearing Voltage: Above 6.5V.

Resolution:

  • Check the voltage of the battery powering the Servo Hub and recharge if needed.

  • Ensure connections to the battery are secure.

  • Low voltage can cause unexpected behavior.

hashtag
CAN Bus Faults

A CAN fault occurs when the Servo Hub detects unreliable communication on the CAN bus. The main status LED will alternate between yellow and orange.

hashtag
Troubleshooting Steps:

  1. Inspect Wiring:

    • Perform a tug test to ensure connections are secure.

    • Verify there’s enough bare wire in the Wago connectors.

hashtag
No Connection Detected

When the Servo Hub cannot detect a connection to a controller or the REV Hardware Client, the main status LED will flash magenta.

hashtag
Troubleshooting Steps:

  1. Check the Hardware Client:

    • Open the REV Hardware Client and ensure it recognizes the Servo Hub.

  2. Check CAN Connection:

hashtag
Servo and Channel Issues

hashtag
Servo Not Responding

  • Ensure the channel is enabled (LED is not blinking amber).

  • Check the servo wiring for loose connections or damage.

  • Verify the servo is compatible with the configured pulse width range.

hashtag
Erratic or Unstable Servo Movement

  • Inspect the Disable Behavior configuration:

  • Some servos may jitter or misbehave when powered but not receiving a signal. Consider using kDoNotSupplyPower.

  • Test with another servo to rule out hardware issues.

hashtag
Channel LED Does Not Light Up

  • If the channel LED is off, verify the channel is properly configured in the program.

  • Check wiring and servo functionality.

  • Test with another servo to confirm channel operation.

hashtag
Software Issues

hashtag
Unable to Configure Multiple Servo Hubs to use with a Control Hub

  • Double check that each Servo Hub has a by connecting it via USB to the REV Hardware Client

  • Servo Hubs must have a different ID than an Expansion Hub. Expansion Hubs default to ID 1 or 2

hashtag
Servo Hub is not Appearing in the Configuration Menu

circle-info

You must be running Robot Controller App AND Driver Station App version 10.0 to use a Servo Hub.

  • Check first that the Servo Hub is receiving proper power and that the RS485 cable is secure

  • Double check that each Servo Hub has a by connecting it via USB to the REV Hardware Client

  • Servo Hubs must have a different ID than an Expansion Hub. Expansion Hubs default to ID 1 or 2

hashtag
Unable to set the CAN ID/CAN ID not Saving on the Servo Hub

When a Servo Hub is connected to a Control Hub, directly or through another Hub, it will be set to a "read-only" mode when interacting with the REV Hardware Client. This means the Client cannot update the ID or firmware, and features, such as the ability to run servos, will not be available.

  • Power down the robot or disconnect the RS845 cable leading to the Servo Hub

  • Power cycle the Servo Hub

  • You should now be able to connect the Servo Hub via USB-C to the REV Hardware Client to set the ID or use the Client features

hashtag
Driver Hub Showing "Servo Hub not currently responding to commands" Error

This error appears if the Control Hub has lost communication with a Servo Hub that was previously established in the configuration file

  • Double check the Servo Hub is receiving proper and securely wired

  • If the Servo Hub ID has been changed or a different Servo Hub with a different ID has been connected as a substitute:

    • Change the to match the one in the configuration OR

If you are removing the Servo Hub completely, create a new configuration file.

hashtag
Driver Hub showing "Addresses higher than 10 are reserved for system use" warning

Change the to between 1-10 to avoid potential conflicts. Expansion Hubs default to having ID 1 or 2.

hashtag
Servo Hub Appearing as an Expansion Hub in the REV Hardware Client

When connecting over USB-C to a Control Hub with a Servo Hub connected it will appear as an Expansion Hub within the Client as seen below:

This is expected behavior as of RHC Version 1.7.0. To update the Servo Hub, disconnect it from the Control Hub and power cycle it before connecting only the Servo Hub via USB-C.

hashtag
Firmware Recovery Mode

If the Servo Hub is unresponsive, use recovery mode to restore functionality.

Steps to Enter Recovery Mode:

  1. Power off the Servo Hub.

  2. Press and hold the mode button on the Servo Hub.

  3. While holding the button, power on the Servo Hub.

  4. Release the button once the channel 4 red LED and channel 5 green LED are on.

The Servo Hub will now be ready to recover via the REV Hardware Client.


By following this guide, users can diagnose and resolve most common issues with the REV Servo Hub. If problems persist, contact REV Robotics support for further assistance.

Servo Hub Status LED Patterns

hashtag
LED Indicators

The REV Servo Hub uses LEDs to provide visual feedback about the device's status and individual channel states. Understanding these indicators helps diagnose issues and monitor system performance.

circle-info

Important

Inspect Wiring:
  • Ensure all wires are securely connected.

  • Perform a tug test on the power connections.

  • Enter Recovery Mode:

    • If the Servo Hub has power but no LEDs light up, follow the recovery mode instructions below.

  • Check Termination Resistors:
    • Ensure proper termination at both ends of the CAN bus.

  • Test for Shorts:

    • Inspect for shorts in the CAN wiring.

  • Verify the CAN bus wiring.

  • Use the Hardware Client to check if other devices on the CAN bus are visible.

  • Inspect roboRIO:

    • Ensure the roboRIO has power.

    • Verify the roboRIO configuration and connections.

  • Create a new configuration file with the updated ID

    Channel Overcurrent Fault
    Total Device Overcurrent Fault
    unique CAN ID
    unique CAN ID
    Servo Hub ID
    Servo Hub's ID
    : These led patterns only apply to firmware version 24.0.0 and later

    hashtag
    General Status LED

    The main Status LED on the Servo Hub communicates the overall state of the device. Below is a table explaining the various patterns and their meanings:

    LED Status
    LED Description
    When
    Hub Status

    Magenta Blinking

    Anytime

    The Servo Hub is powered on but not connected to a controller or the REV Hardware Client.

    Blue Solid

    Anytime

    The Servo Hub is connected to the Communication established the REV Hardware Client.

    †

    Faults are not reported to logs when the Servo Hub is connected via RS485.


    hashtag
    Channel Status LEDs

    Each servo channel on the REV Servo Hub has its own dedicated LED, which provides feedback about the channel’s state and current PWM signal. Below is the meaning of each LED pattern:

    hashtag
    Notes:

    • Channel LEDs reflect the current state of the PWM signal, helping users verify servo behavior in real-time.

    • Disabled channels still show feedback via a blinking amber LED, making it easy to differentiate inactive channels.

    hashtag
    Angular Servos

    LED Status
    LED Description
    When
    Hub Status

    Amber Solid

    Anytime

    The channel is at the center position (typically 1,500 µs pulse width).

    Green Blinking

    Anytime

    The pulse width is between center and maximum (e.g., 1,500–2,000 µs).

    hashtag
    Continuous Rotation Servos

    LED Status
    LED Description
    When
    Hub Status

    Amber Solid

    Anytime

    The servo is stopped (typically 1,500 µs pulse width).

    Green Blinking

    Anytime

    The servo is running forward (e.g., 1,500–2,000 µs).

    Solid Cyan

    Anytime

    The Servo Hub is connected to a roboRIO or other CAN controller. †

    Green Solid

    Anytime

    The Servo Hub is connected to a Control Hub or other RS-485 controller. The number of blue blinks is the same as the Servo Hub's address. The factory default address is 3.

    Orange/Cyan Blinking

    Anytime

    Battery Voltage is lower than 5.5V. Please check the Servo Hub's Power Supply. This fault will clear when the input voltage is raised above 6.5V.

    Orange/Yellow Blinking

    Anytime

    A CAN fault has been detected. Verify CAN bus wiring and connections.

    Orange/Magenta Blinking

    Anytime

    An overcurrent fault has occurred. Check the connected servos and reduce the load if necessary.

    Green Solid

    Anytime

    The channel is at the maximum position (e.g., 2,000 µs).

    Red Blinking

    Anytime

    The pulse width is between center and minimum (e.g., 1,500–1,000 µs).

    Red Solid

    Anytime

    The channel is at the minimum position (e.g., 1,000 µs).

    Amber Blinking

    Anytime

    The channel is disabled. The signal pin is pulled low, and no PWM signal is being sent.

    Quick Amber Blinking

    Anytime

    The channel is faulted. This can mean that either the device does not have sufficient power, neither the RoboRIO nor the Control Hub heartbeat is present, or the channel is experiencing an overcurrent event.

    Green Solid

    Anytime

    The servo is running forward at maximum speed (e.g., 2,000 µs).

    Red Blinking

    Anytime

    The servo is running in reverse (e.g., 1,500–1,000 µs).

    Red Solid

    Anytime

    The servo is running in reverse at full speed (e.g., 1,000 µs).

    Amber Blinking

    Anytime

    The channel is disabled. The signal pin is pulled low, and no PWM signal is being sent.

    Quick Amber Blinking

    Anytime

    The channel is faulted. This can mean that either the device does not have sufficient power, neither the RoboRIO nor the Control Hub heartbeat is present, or the channel is experiencing an overcurrent event.

    Configuring the Servo Hub with a Control Hub

    circle-check

    You must be running Robot Controller App and Driver Station App version 10.0 to use a Servo Hub.

    hashtag
    Setting Servo Hub IDs

    circle-info

    Servo Hub IDs should be set while the Servo Hub is disconnected from a Control Hub OR before powering the robot on. Servo Hubs previously connected to a robot may need to be power cycled before changing IDs.

    By default, the Servo Hub's ID should be set to 3. This can be changed by connecting the Servo Hub directly to the REV Hardware Client using a USB-C cable. The Servo Hub will appear in the Hardware List as shown below:

    The "CAN ID" is the individual ID for the Servo Hub.

    circle-exclamation

    Each Servo Hub and Expansion Hub must have a unique ID before being able to complete the configuration process.

    The CAN ID can be set between 1-10 for FTC. After choosing the ID, click "Set CAN ID".

    circle-info

    Expansion Hubs default to ID 1 or 2.

    The new Servo Hub ID is not set!

    hashtag
    Accessing the Configuration Utility

    1. Select the menu in the stop right corner of the Driver Station app. Then select Configure Robot.

    1. In the Available configurations page, select New.

    1. In the USB Devices in configuration page select the Control Hub Portal. Note: If you have an Expansion Hub connected via USB it will appear as an Expansion Hub Portal.

    triangle-exclamation

    Pressing "Scan" on an existing configuration may result in the already named devices being erased. A new configuration file is needed when adding a camera or Expansion Hub over USB.

    1. All connected Servo or Expansion Hubs using RS485 will appear within the menu of the portal. If you are using multiple Servo Hubs, they can be identified by their ID number.

    Menu while using a single Servo Hub:

    Menu while using multiple Servo Hubs:

    circle-info

    This menu will appear the same if the Servo Hub is connected to another Servo Hub or an Expansion Hub connected using RS485.

    hashtag
    Configuring Servos

    1. Select the Servo Hub where you are adding servos

    1. Select the "Servos" option

    1. This will open a configuration menu similar to what is used for motors and sensors!

    1. Select your desired option from the dropdown menu

    1. Assign the device an appropriate name

    1. Click "Done" once all names are entered to return to the main Servo Hub menu

    1. Click "Done" again on to return to the list of all connected Hubs