Introducing Command-Based Programming with Robots

A New FIRST® @ Home Activity Series with the Romi Robot Kit, supported by Bloomberg and WPI

Feb 24, 2021 By Libby Simpson, FIRST Director of Education




Programming a robot

WPILib Control System team members Brad Miller and Grant Perkins demonstrated how to program the Romi robot during FIRSTtv’s Hour of Code show in December.

As an educational leader it has long been the mission of FIRST to prepare students for careers of the future by providing them with rigorous, real-world opportunities for hands-on skill building.  Focusing on building STEM literacy through robotics competitions also includes learning coding and programming.  Computer science literacy is arguably one of the most important skills for current and future generations to learn.  In our newest activity series for FIRST @ Home using the Romi Robot Kit, supported by Bloomberg and WPI, students can take on the role of programmers to create code, develop logic, analyze a problem, and compete to solve a real-world problem.   

Programming is the process of writing a set of instructions for a machine – in this case, a robot – to follow. In order to improve students’ skill set in programming, FIRST Education with support from WPI and Bloomberg, has created an activity series that makes the most of learning command-based programming to create an error-free machine that can execute specific tasks. 

Bloomberg engineers innovate with cardboard robot concept

Starting as an accessible, low-cost way to learn the programming language used in our FIRST® Robotics Competition program, Bloomberg software engineers and FIRST mentors Zhiquan (who goes by ZQ) Yeo and Joe Pokorny created an engaging camp experience in the fall of 2019 for students in New York City, during which they led a series of cardboard robot workshops. Students would come in, design a robot out of cardboard, and wire everything up with some off-the-shelf electronics (e.g., a robot controller, Raspberry Pi, etc.). They then programmed it using the system ZQ and Joe built, which closely mimics what the students would use when programming the larger FIRST Robotics Competition robots.

Shortly thereafter, Joe and ZQ rewrote the core software behind the cardboard robot workshops, which was then integrated into the official WPI Robotics Library (WPILib) code base, the software used for the FIRST Robotics Competition. In the spring of 2020, they rolled out additional software compatible with the Romi robot, a low-cost robot kit that is available off-the-shelf, thereby enabling anyone to write a FIRST Robotics Competition program and have it run on the smaller robot.

“Our cardboard robot concept has now been transformed from a fun, community outreach activity into a usable platform for all students to skill-up their programming knowledge,” said Bloomberg engineer Zhiquan Yeo. “We’re thrilled that this will enable more teams and more students to pursue robot goodness."

Close-up of romi robot

Five command-based programming activities using the Romi Robot:

This five-part activity series allows for students with little to no knowledge of command-based programming to learn in a fun and accessible way. The Romi robot teaches programming and offers the tangible ability to test the success of that program in the real world. The Romi package includes motors, sensors and electronics that enable someone to learn programming in short period of time using a Raspberry Pi and WPILib software. 

  1. Game Design & Artificial Intelligence – Explore the Internet of Things and pseudo coding while planning a solution to solve a challenge. 
  2. Computational Thinking – Decomposing a robot and object pattern recognition with comparison to real-world robots. 
  3. Iteration with command-based programming – Get the Romi robot moving and use basic command-based infrastructure. 
  4. Optimizing an algorithm – Increase the robot’s functionality and improve programming and design elements to fit a game strategy.  
  5. Robot performance and competition – Demonstrate the robots’ capabilities and solve the challenge. 
Explore command-based programming activities dOWNLOAD

Programming is a job that requires both abstract and logical thinking, as well as attention to detail. In the career outlook for the 21st century, the emergence of a fourth industrial revolution, Industry 4.0, will be an important factor. Knowing how to make machines intelligent, learning how machines gain knowledge from the data gathered around us, and understanding the interconnectivity of machines are all careers of the future that requires the kind of technical skills FIRST supports. The skills that students learn starting here at FIRST prepare them for these growing uses of technology and set them on the path to being leaders in these fields. 


If you have an inspiring story or piece of wisdom that you’ve picked up through your experiences in the FIRST community, please reach out to us at and inquire about becoming a guest contributor for Inspire.

Back to Blog