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 :ref:`Upgrade Notes<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 :ref:`FAQ <faq>` for more information.
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!