Python 3 for the FIRST Robotics Competition (FRC)

pyfrc 2015.0.0 and RobotPy 2015.0.1 released

We’re happy to announce the initial release of pyfrc for 2015! You should find the following features:

  • Unit testing
  • Simulation
  • Easy robot code upload to RoboRIO (python3 robot.py upload)

Check out the documentation at http://pyfrc.readthedocs.org/en/latest/.

Additionally, RobotPy 2015.0.1 has been released!

  • There are some minor improvements to the installer
  • Bugfixes in CANJaguar
  • pynivision is now included in the installer, so you can use the NI Vision stuff from python

See all changes on github. Updated RobotPy releases can be found at github on our release page.

2015 RobotPy now available!

Now that kickoff is over and the game has been released, we’re happy to announce the initial release of RobotPy for 2015. There’s a lot of moving pieces in various stages of completion, but here’s where we are now:

  • WPILib is available and should be fully functional. Check out our getting started guide to install WPILib and the Python interpreter on your robot.
  • pynetworktables is available for robots and clients to connect to the SmartDashboard or from coprocessors, and should be fully functional.
  • pyfrc is mostly there, with the simulator working and some of the unit test functionality working. I’m hoping to finish this up by the end of the weekend.
  • We have initial support for the FRCSim Simulator, but the documentation is light and not all devices have been implemented yet. The python version of the GearsBot example mostly works though. :)
  • The Eclipse plugins aren’t anywhere near functional yet (sorry!). Hopefully by next week.
  • We’ve got numpy built for the RoboRIO, and it’s easily installable via opkg. Check out https://github.com/robotpy/roborio-packages for more information.

Our initial RobotPy release for 2015 is now available for download on our release page.

The team has put months of effort into this release, and we’re really excited about 2015! Special thanks to Christian Balcom (@computer-whisperer, FRC Team 4819), who has done a significant amount of work on the pure python port of WPILib, and various useful tooling.

Go ahead and start using what we have, and report bugs as you find them! We expect that there will be a lot of bugfixes over the next few weeks, but that will probably be true for the other languages too. Please report any problems on our issue tracker as you find them!

2015 updates; Migration from FIRST Forge

Just to let you all know, over the last few years we’ve migrated away from FIRST Forge towards github, and FIRST has told us that FIRST Forge is going away in February 2015. We’ve copied a lot of the content to github, and will continue updating things for the 2015 season!

We’re really excited about 2015, and there are a lot of changes in store for RobotPy. In no particular order:

  • RobotPy will be a 100% python implementation of wpilib, using ctypes to interact with the underlying HAL which is new for 2015.
  • It will be based on the java implementation of WPILib. The names of the function calls will correspond to the java implementation (functionName) instead of the C++ implementation (FunctionName).
  • There are now pure python implementations of Commands & NetworkTables
  • There will be support for the 3d gazebo simulator
  • There will be eclipse plugins available to make coding for RobotPy even easier!

If you’re interested in helping out with the 2015 preparation for kickoff, please drop us a line! Many of the needed tasks can be done without a RoboRIO, and there’s a lot that still needs to be done!