Linux-based controller targets FIRST robotics contests
Feb 3, 2015 — by Eric Brown 4,355 viewsNI has launched a real-time Linux-based “RoboRIO” robot controller with a Zynq ARM/FPGA SoC and NI’s LabVIEW IDE designed for FIRST robotics competitions.
National Instruments (NI) built the RoboRIO specifically for students competing in the FIRST Robotics Competition (FRC), which brings together some 250,000 students every year to run their robots through a variety of tests. In fact, NI and FIRST, which was founded in 1992 by inventor Dean Kamen, are giving away RoboRIO kids to each FRC team. The competition was showcased in a new movie called Spare Parts, based on a 2005 underdog victory against an MIT team by Carl Hayden Community High School from Phoenix, Arizona.

RoboRIO with MXP expansion board in place
(click image to enlarge)
![]() NI cRIO |
The RoboRIO is a robotics-oriented update to the cRIO industrial controller (shown at the right), which has been employed in previous FRC contests, and which uses the same NI Real-Time Linux distribution and LabVIEW reconfigurable I/O architecture and toolset.
— ADVERTISEMENT —
The RoboRIO is faster, lighter, and smaller than the cRIO, and is designed specifically for FRC, says NI. It uses a faster version of the Xilinx Zynq system-on-chip, which integrates dual ARM Cortex-A9 cores and an FPGA. In addition, all of the I/O breaks out directly from the controller, so contestants will no longer need to use a “digital sidecar,” says the company.

FIRST Robotics Competition robots from 2014
(click image to enlarge)
The RoboRIO is also similar to NI’s MyRIO educational engineering kit, which also runs NI Linux on a Zynq SoC and supports LabVIEW. However, the RoboRIO adds robot-oriented I/O such as CAN and PWM, and is said to be rugged enough to withstand several FRC seasons. The RoboRIO will be used in FRC competitions for the next five years, says NI. The company makes a variety of Linux- and Zynq-based RIO products, including an sbRIO-9651 computer-on-module that launched last July.


RoboRIO, with and without MXP board
(click images to enlarge)
The RoboRIO runs NI Real-Time Linux on the Zynq chip, but since the tool chain is available only in Windows, a Windows PC is required to program and control the robot. The RoboRIO supports programming with LabVIEW, Java, and C++.
NI Linux Real-Time is a dual-mode OS, enabling recovery from application failure without significant disruption, says NI. The distribution is said to facilitate true multitasking support, enabling multiple programs to run in parallel. The LabVIEW IDE features a wide range of connectivity options, including web service creation and secure, industry-standard WebDAV browser-based file management.


RoboRIO port detail and block diagram
(click images to enlarge)
Although every FRC team starts with a RoboRIO they can customize their creations by building their own MXP (MyRIO Expansion Port) boards using an MXP development kit. The MXP boards plug into the controller’s Custom Electronics Port, and the RoboRIO is built directly into the robot. Extensive documentation is provided for the RoboRIO and MXP interface.

Custom Electronics Port pinouts for MXP expansion boards
(click image to enlarge)
The RoboRIO integrates 256MB RAM and 512MB flash, and offers a Fast Ethernet port. USB 2.0 host and device ports are available, along with DIO, I2C, SPI, and analog I/O. There’s also a CAN port and PWM connector, as well as a relay port, robot signal port, and the Custom Electronics Port for MXP expansion.
![]() RoboRIO side view |
Specifications listed for the RoboRIO include:
- Processor — Xilinx Zynq-7020 (2x Cortex-A9 cores @ 667MHz); Artix-7 level FPGA
- Memory — 256MB DDR3 RAM; 512MB flash
- Networking — 10/100 Ethernet port
- Other I/O:
- USB 2.0 host port
- USB 2.0 device port
- 16x DIO expansion port with 1x UART
- I2C connector with 2x lanes
- SPI connector with 4x lanes
- CAN port
- Analog input (12-bit)
- Analog output (2x 12-bit channels on expansion port)
- PWM connector with 10x output lines
- Relay port (4x forward, 4x reverse)
- RSL (robot signal light) port
- Custom Electronics Port for MXP expansion boards
- Other features — Reset and user buttons; LEDs
- Power:
- 7 to 16 VDC power supply
- 3.3V, 5V, or 6V output
- 5W idle, 45W max. consumption
- Ruggedization:
- Operating temperature — 0 to 40°C
- Vibration resistance (random) — 5 grms, 10Hz to 500Hz
- Shock resistance — 50 g, 3ms half sine, 30 g, 11ms half sine, 18x shocks at 6x orientations
- EMC certifications including EN 61326-1 (IEC 61326-1): Class A
- Weight — 330 g (11.64 oz)
- Operating system — NI Real-Time Linux; requires Windows PC to program and control
Further information
Free RoboRIO kits have already been sent to FRC contestants, and extra versions are available for $435 to qualified FRC-linked buyers at AndyMark. In addition to the giveaways, FRC teams, affiliates, partners, and organizers can purchase additional roboRIO systems from competitive robotics parts specialist AndyMark Inc. for $435, as long as they are used for supporting FRC teams and competitions. Later this year, RoboRIO will be available to the general public. Much more information on RoboRIO, including schematics, may be found at NI’s RoboRIO product page.
Actually, they have toolchain support for Linux and Os X. Certain utilities require windows to flash a new firmware or Java VM. But I have personally run their example Java project from my Mac.
David