What the roboRIO does
The NI roboRIO is the only legal main robot controller in FRC (rule R701). It pairs a dual-core ARM Cortex-A9 processor with a Xilinx FPGA (the roboRIO is built on a Xilinx Zynq SoC). The FPGA handles time-critical and safety functions - including the watchdog that disables the robot when communication drops - while your team code runs on the Linux side of the processor.
The current generation is the roboRIO 2.0 (AndyMark SKU am-3000a), which boots from a microSD card (a 4GB card ships pre-installed) instead of the internal flash used by the original roboRIO 1.0. Its processor runs at 866 MHz with 512 MB of DDR3 RAM. You must image the microSD card with the current-season WPILib/NI tools before competition (2026 uses image 2026_v1.2 per R701).
Onboard I/O
The roboRIO is loaded with connectors so you rarely need extra hardware:
- PWM ports (0-9) - command motor controllers and servos with a simple pulse signal.
- DIO (Digital I/O) - read limit switches, encoders, and beam-break sensors.
- Analog In - read potentiometers and analog sensors.
- Relay ports - drive Spike-style relays (legacy).
- CAN - a two-wire (CANH/CANL) digital bus for motor controllers and the PD.
- Ethernet - the main link to the radio.
- USB - host ports for cameras and a device port for direct programming.
- I2C, SPI, RS-232, MXP - additional sensor and expansion buses.
Powering the roboRIO
Rule R615 allows the roboRIO power input to connect only to: the dedicated supply terminals on a PDP; a non-switchable fused channel on the PDH (channel 20, 21, or 22) with a 10A fuse/breaker; or any single fused channel on a PDP 2.0 with a 10A fuse/breaker.
Key wiring facts from the official wiring guide:
- Use 18 AWG red and black wire.
- Protect it with a 10A fuse or breaker (R615).
- Connect red to V and black to C (common) on the roboRIO power connector, and tighten the screws with a small flat screwdriver.
The Power LED should glow green once powered. A red Power LED or an unhealthy Status LED signals a problem worth investigating immediately.
CAN on the roboRIO
The roboRIO's CAN port is one physical end of the robot's CAN bus. The other end is typically the PD, which contains a 120-ohm terminating resistor. Use 22 AWG wire for CAN and strip about 5/16 in (~8 mm) for the roboRIO's spring (WAGO-style) terminals.
Sources
Key takeaways
- The roboRIO is the only legal FRC main controller; the 2.0 (am-3000a) boots from a microSD card you must image each season.
- It runs an 866 MHz dual-core ARM Cortex-A9 with a Xilinx FPGA, and provides PWM, DIO, analog, relay, CAN, Ethernet, USB, and serial I/O.
- Power it with 18 AWG on a 10A-protected channel - a PDP dedicated terminal, a PDH non-switchable channel (20/21/22), or a fused PDP 2.0 channel (R615).
- Its CAN port anchors one end of the CAN bus; use 22 AWG and respect the 120-ohm termination.
Keep going
Take the quiz · +10 XP with an accountMore in The FRC Control System: Meet the Components
Sources & corrections
This lesson is AI-assisted: drafted from primary sources, then reviewed and edited by hand. Errors still get through. When one is reported we fix it and write down what changed — publicly, in the corrections log.
Sources and further reading
Read next
Articles on this, for competition day
The lesson covers how it works. These cover what to do when it breaks.
- 7 min read
FRC LED Lights: Wiring, Power Budgeting, and the WPILib AddressableLED API
How to wire addressable LEDs off the PDH's switchable channel, budget their current draw, and use WPILib's AddressableLED API to signal robot state.
Read - 17 min read
FRC Sensors Explained: Encoders, Gyros, Beam Breaks, and Limit Switches
A practical FRC guide to encoders (quadrature, absolute, CANcoder, through-bore), gyros (NavX2, Pigeon 2.0), limit switches, beam breaks, and current sensing.
Read - 13 min read
The roboRIO 2.0: Imaging, Setup & Managing FRC's Robot Brain
Image, set up, and wire the roboRIO 2.0 and 1.0: the roboRIO Imaging Tool workflow, microSD flashing, team number, I/O ports, power, and deploying code.
Read
Lesson quiz
RequiredAll 3 right completes the lesson. Miss one and only that question comes back — anything you already answered correctly stays banked.
0 of 3 answered
01.Which processor architecture does the roboRIO pair with its Xilinx FPGA?
02.Which set of I/O interfaces is built directly into the roboRIO for wiring sensors and actuators?
03.Per rule R615, how should the roboRIO's power input be wired?
Answer every question to submit.
All 35 lessons in Electrical & Wiring
- Not started:Mini-Project 1: A Single-Motor Test Stand from Battery to Spin
- Not started:Mini-Project 2: Current-Limited Drivetrain (CTRE and REV)
- Not started:Mini-Project 3: A Live Power-Monitoring Dashboard
- Not started:Mini-Project 4: A Switchable Channel for Lights and Vision
- Not started:Mini-Project 5: CAN Device Bring-Up with Tuner X and the Hardware Client