Control Hub & Expansion Hub

What are the Control Hub & Expansion Hub?

The Control Hub and Expansion Hub are the main hardware modules for FTC robots. The Control Hub is the robot's brain and WiFi access point; the Expansion Hub adds more ports for motors, servos, and sensors.

The Control Hub runs your robot code and connects to the Driver Station via WiFi. The Expansion Hub is used when you need more hardware ports than the Control Hub provides.

See: FTC Docs: Hardware Setup

Key Features

Control Hub vs Expansion Hub:

  • Control Hub: Contains Android device, WiFi, and hardware ports.
  • Expansion Hub: Adds extra hardware ports (motors, servos, sensors).
  • Both connect via RS485 cable for communication.
  • Both are powered by the robot battery.

Wiring and Connections

Connect the Control Hub to the Expansion Hub using the RS485 cable. Power both hubs from the robot battery.

Motors, servos, and sensors are plugged into the appropriate ports on either hub.

See FTC Docs: Adding an Expansion Hub for diagrams and best practices.

Sample HardwareMap Usage

// Example: Accessing hardware on both hubs
DcMotor leftDrive = hardwareMap.get(DcMotor.class, "left_drive");
DcMotor rightDrive = hardwareMap.get(DcMotor.class, "right_drive");
Servo armServo = hardwareMap.get(Servo.class, "arm_servo");
DistanceSensor distance = hardwareMap.get(DistanceSensor.class, "distance_sensor");

// The names must match the configuration on the Driver Station.
// Devices can be on either the Control Hub or Expansion Hub.

Configuring Hardware in the Driver Station

You must configure your robot's hardware in the Driver Station app. Assign names to each device (motor, servo, sensor) so you can access them in code.

See: FTC Docs: Configuring Hardware

Best Practices

Tips for using Control & Expansion Hubs:

  • Label all cables and ports for easy troubleshooting.
  • Double-check wiring before powering on.
  • Keep firmware up to date on both hubs.
  • Use clear, consistent device names in configuration.

Practice: Hardware Setup

Try these to reinforce your understanding:

  • Configure a new device on the Expansion Hub in the Driver Station app.
  • Write code to access a motor and a sensor on the Expansion Hub.
  • Ask your mentor to cause a wiring issue, then fix it.

Open full interactive app