The Control Hub (REV-31-1595) and Expansion Hub (REV-31-1153) can each drive up to four DC brushed motors. As mechanisms are added to the robot the number of motor ports may not be sufficient. There are two ways to add more motors to the Control System, either the SPARKmini Motor Controller (REV-31-1230) or adding an Expansion Hub. The Following two rules give a general idea of when to choose one method over another:
If one or two motors are needed, consider using the SPARKmini Motor Controller.
If three to four additional motors are needed, consider adding an Expansion Hub.
For additional information on how to use a SPARKmini or how to add an Expansion Hub, visit the linked pages!
If you want to use more than 4 motors or 6 servos, you can add an Expansion Hub to your robot. An Expansion Hub (REV-31-1153) can be added to a Control Hub (REV-31-1595) or another Expansion Hub. The Expansion Hub has all of the same ports as the Control Hub but without the wireless capability.
FIRST Tech Challenge
FIRST Global
FIRST Tech Challenge teams may use one (1) Control Hub and may add one (1) Expansion Hub starting in the 2020-2021 season. Read the official FTC Game Manuals for complete game rules.
FIRST Global teams must use one (1) Control Hub and may add one (1) Expansion Hub to their robot. Read the official FIRST Global manual for complete game rules.
If you are using a configuration file from a 5.5 or earlier version of the Robot Controller Application, you will need to create a new configuration file.
Step
Image
Use the XT Extension Cable to connect power between the Control Hub and the Expansion Hub.
Use a 3-pin JST PH cable to connect the RS485 port on the Control Hub to the Expansion Hub.
From the Driver Station choose “Configure Robot”
Select “New” in the top left hand corner.
Select “Control Hub Portal”
Note: This will show an Expansion Hub Portal if using an Android Device as a Robot Controller
Now you have two Hubs to choose from. Either the Control Hub or the Expansion Hub.
“Expansion Hub 2” is the connected Expansion Hub that is communicating over RS485.
Configure and program as necessary. Please see the section of for an overview of configuration.
Note: If using an Android Device as a Robot Controller there will be two Expansion Hubs located here. The Expansion Hub Address may need to change so they do not conflict.
The SPARKmini Motor Controller (REV-31-1230) is an inexpensive in-line brushed DC motor controller designed to give FIRST® Tech Challenge teams more bang for their buck. It offers the same performance characteristics as the REV Control Hub (REV-31-1595) or Expansion Hub (REV-31-1153) motor ports in a small 60mm x 22mm footprint. Now FTC teams can add a SPARKmini Motor Controller to utilize more than four DC motors from a single Hub in a space-efficient package.
The SPARKmini has three integrated wires with connectors dedicated to power, control, and the motor; one XT30 connector for power, one 3-wire servo-PWM connector for control, and one JST-VH connector for the motor. The figure below shows each of these connections.
Connect the power wire to a free XT30 port on the REV Control Hub , REV Expansion Hub (REV-31-1153), or through an XT30 Power Distribution Block (REV-31-1293) that is connected to a free Control/Expansion Hub XT30 port. Connect the control wire to an open servo port on the hub and the motor wire to a JST-VH port on a motor, like the REV HD Hex Motor (REV-41-1301) or the REV Core Hex Motor (REV-41-1300).
DO NOT reverse polarity on the power input connections. The SPARKmini does not contain reverse polarity protection. This can permanently damage the SPARKmini and will void the warranty.
DO NOT swap the motor and power connections. This can result in uncontrolled motor operation and can permanently damage the SPARKmini, voiding the warranty.
A motor’s speed is controlled by varying the voltage that is applied to it. The SPARKmini’s output voltage can be controlled by sending it an extended-range servo-PWM pulse. The extended 500µs to 2500µs servo-pulse corresponds to full-reverse and full-forward rotation with 1500µs as the neutral position (no rotation). The pulses are proportionally related to the motor output duty cycle, therefore variable speed can be achieved with pulses in between the extremes. The following table describes the pulse ranges in more detail.
Table - Control Signal Pulse Ranges
Pulse Width (p in µs)
Full Reverse
Prop. Reverse
Neutral
Prop. Forward
Full Forward
p ≤ 500
500 < p < 1490
1490 ≤ p ≤ 1510
1510 < p < 2500
2500 ≤ p
When the SPARKmini is receiving a neutral command it will not provide any power to the attached motor. There are two options for how the SPARKmini handles this zero-power state:
Brake - Motor terminals are shorted to each other to dissipate electrical energy, effectively braking the motor. Coast - Motor terminals are disconnected, allowing the motor to spin down at its own rate.
The zero-power behavior can be selected via a switch located towards the center of the SPARKmini housing, shown in Figure 2. Each mode can be selected by sliding the switch to either the Brake (B) or Coast (C) positions.
The SPARKmini will indicate whether it is in Brake or Coast mode via the Status LED, located in the center of the housing, whenever it is outputting zero-power. Solid or flashing blue indicates Brake Mode while solid or flashing yellow indicates Coast Mode. See the LED Status Codes section for more details.
Parameter
Min
Typ
Max
Unit
Supply voltage range (VIN)
6.0
12
20
V
Supply voltage absolute maximum
-
-
25
V
Continuous output current
-
-
15
A
Peak output current
-
-
20
A
Output voltage range
- VIN
-
+ VIN
V
Output frequency
-
10
-
kHz
Input pulse width range
500
-
2500
µs
Input frequency
16
50
200
Hz
Input timeout
-
65.5
-
ms
Input deadband
-
±10
-
µs
Input low-level voltage
-0.3
-
0.8
V
Input high-level voltage
2.0
5.0
5.3
V
Weight
-
0.87
-
oz
Dimensions (excluding wires)
-
60 x 22 x 12
-
mm