Case Study: Powering a Four-Kraken Swerve Drive
A complete electrical walkthrough of a modern swerve drivetrain: wiring, current limits, sensors, and the brownout math.
Sign in to track progress, earn XP, and save lessons.
Swerve is the most power-hungry common FRC drivetrain: eight motors (four drive, four steer) plus encoders and a gyro, all on CAN. Here is a real, worked electrical configuration using current-generation hardware.
Hardware: 4x Kraken X60 (drive) + 4x Kraken X60 or X44 (steer), each driven by its integrated Talon FX; 4x CTRE CANcoder for absolute azimuth position; 1x Pigeon 2.0 IMU for heading. Power each Kraken from its own 40A MX5-A breaker in the PD over 12 AWG (R622: 31-40A circuits require 12 AWG).
Why this browns out if you do nothing: a single Kraken X60 stalls at about 366A at 12V (and about 483A with FOC), so four drive Krakens can momentarily demand well over a thousand amps on a hard direction change, which collapses battery voltage straight through the 6.3V/6.75V brownout floor in well under a second.
The current-limit configuration (Phoenix 6, per drive motor):
var limits = new CurrentLimitsConfigs();
limits.StatorCurrentLimit = 120; // wheel-slip / heat control
limits.StatorCurrentLimitEnable = true;
limits.SupplyCurrentLimit = 70; // brownout / breaker protection
limits.SupplyCurrentLimitEnable = true;
limits.SupplyCurrentLowerLimit = 60; // sustained clamp
limits.SupplyCurrentLowerTime = 1.0;
driveTalon.getConfigurator().apply(limits);
Steer (azimuth) motors rarely need peak torque, so a lower stator limit (~60A) is plenty and reduces heat. The 120A stator / 70A supply pairing is a widely used community starting point for swerve; CTRE recommends tuning these empirically for your specific robot rather than treating any pair as a fixed rule.
Brownout math: four drive motors at 70A supply = 280A worst case, but because the supply limiter clamps each and the wheels are usually not all at peak simultaneously, real sustained draw lands well under that and inside a ~180A planning budget. Confirm by logging getSupplyCurrent() across all four and graphing total current vs. battery voltage.
Sensors on the bus: CANcoders and the Pigeon 2 add CAN traffic. With 8 motor controllers + 4 CANcoders + 1 Pigeon + the PD, the roboRIO's standard CAN bus utilization climbs fast. This is the classic trigger to move the drivetrain onto a CANivore CAN FD bus (next lesson).
Wiring discipline that matters here: daisy-chain CAN cleanly through each module, twist CANH/CANL, secure every connector against the constant vibration and impacts swerve modules see, and route motor power away from CAN to reduce noise. Label every CAN ID, because eight nearly-identical Talon FX devices are easy to confuse.
Done right, this drivetrain accelerates aggressively, holds heading via the Pigeon 2, and never browns out, on a fresh battery in qualifications and on a tired one in finals.
Key takeaways
- Each Kraken gets its own 40A breaker on 12 AWG; one Kraken X60 stalls at ~233A, so uncapped swerve can demand several hundred amps and brown out instantly.
- Apply current limits on the drive motors (a common community starting point is 120A stator / 70A supply, tuned empirically) and a lower stator limit on steer.
- Eight Talon FX plus CANcoders and a Pigeon 2 push roboRIO CAN utilization high, motivating a CANivore CAN FD bus.
Go deeper
Lesson quiz
RequiredAnswer all 3 questions correctly to complete this lesson.
1.How many Kraken X60 motors does a typical four-corner swerve drive use for driving and steering?
2.Approximately what is the trapezoidal-commutation stall current of a single Kraken X60 motor?
3.Given the Kraken X60's stall current, why is per-motor current limiting essential on a four-Kraken swerve drive?
Answer every question to submit.