RobotPy Documentation

_images/robotpy.png

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.

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

Note

RobotPy is a community project and the tools we create are not officially supported by FIRST. Please see the FAQ for more information.

Projects

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:

  • robotpy-wpilib: the python implementation of WPILib for FRC

  • pyfrc: provides unit testing, realtime robot simulation, and easy upload capabilities for your RobotPy code

  • roborio-packages: Various python packages for the RoboRIO platform installable by opkg, including the python interpreter and numpy

  • 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:

  • pynetworktables: python bindings for NetworkTables that you can use to communcate with SmartDashboard and/or your robot.

  • pynetworktables2js: Forwards NetworkTables traffic to a web page, allowing you to write custom dashboards for your robot using HTML/Javascript

  • pynetconsole: A simple netconsole implementation in python

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

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

There is a lot of good documentation, but there’s still room for improvement. We welcome contributions from all members of the FIRST community!

Indices and tables