RobotPy Documentation


Welcome! RobotPy is a project created by a community of FIRST mentors and students dedicated to developing python-related projects for the FIRST Robotics Competition. This documentation site contains information about various projects that RobotPy supports, including guides and API references.

As of 2024 Python is an officially supported language for programming robots in FRC, and we have moved much of our installation and usage documentation over to a section of the WPILib documentation.


Please read our Upgrade Notes page for things that have changed this season that you should be aware of.

Getting Started


The primary reason RobotPy exists is to support teams that want to write their FRC robot code using Python, and we have several projects related to this:

  • mostrobotpy: provides the ability to use the core WPILib libraries from Python

  • pyfrc: provides unit testing and realtime robot simulation

  • robotpy-wpilib-utilities: Community focused extensions for WPILib

Additionally, RobotPy is home to several projects that are useful for all teams, even if they aren’t writing their robot code in python:

  • pyntcore: python bindings for NetworkTables that you can use to communicate with a dashboard and/or your robot.

  • pynetworktables: legacy NetworkTables implementation that you can use to communcate with SmartDashboard and/or your robot.

  • robotpy-cscore: Python bindings for cscore, a powerful camera/streaming library

  • robotpy-apriltag: Python bindings for the WPILib apriltag library

  • roborio-vm: Scripts to create a QEMU virtual machine from the RoboRIO image file

We are in the process of migrating much of our documentation to the WPILib documentation site.

Indices and tables