RobotPy 2019 release


#1

The 2019 release of RobotPy is now available! We had some deployment issues, but everything seems to be up now.

  • The core pieces of RobotPy are updated and available (pyfrc, wpilib, cscore, pynetworktables, utilities)
  • While we highly recommend using vscode for python development, we have not deployed the robotpy vscode plugin to the vscode marketplace yet. Hopefully later this week.
  • Pathfinder v2 is not available yet, so there are no RobotPy bindings for them. Pathfinder v1 should continue to work.
  • NavX support is now in its own library (robotpy-navx), and has been updated for 2019
  • The CTRE bindings have not been updated for 2019, but I’ll work on those tonight and I expect them to be available later this weekend
  • No new motor controller bindings have been created yet this year. If you are interested in seeing them available, please comment and we’ll see what we can do (though, this is labor-intensive and we could use more help with this!)

If you run into issues, please let us know or file a bug on github! Get the latest release at https://github.com/robotpy/robotpy-wpilib/releases


#2

If you’re interested in CTRE support for 2019, you can track progress at this pull request: https://github.com/robotpy/robotpy-ctre/pull/82


#3

Virtuald, thank you for your work on this. Sorry to muck up the thread, but for those of us who want to begin trying to code robotpy in vscode without the plugin, do you know which python plugin to use? It seems there are many (I know we will not have the full robotpy experience).
~Mr.R^2


#4

We recommend using Microsoft’s VS Code Python extension.


#5

robotpy-ctre 2019.0.0 release is out. It should support anything that worked last year, but any new APIs they added and/or changed have not been added yet. We’ll work on that and get a new release out soon.

You can track those updates at https://github.com/robotpy/robotpy-ctre/issues/83


#6

Robotpy-CTRE seems to be trying to grab libFRC_NetworkCommunication.so.18 and throwing an ImportError.


#7

robotpy-ctre 2019.0.1 has been published and should resolve any linking errors that users may have encountered. Sorry about that!


#8

Thank you for all that you all are doing. This is an incredible project, and I think without it, it would be more difficult to teach some of my students how to program for FRC.
In the opening thread, you asked if there was interest in new motor control bindings, and though I think the other stuff is much more important (CTRE, VSCode, etc.)
If possible, in the future, I would like to see support for the new motor bindings if it is doable. Barring that, is there a way to have a basic c++ or java wrapper (so one could call basic motor functionality from python) without as much effort? I am intrigued by the idea of using a brushless motor on our bot as weight and power of motors have been things we have struggled with in the past. I understand that this is a big ask especially since I know you are still working hard on perfect given that Rev has not really released much documentation as of yet (the java api is not even released, however, there is a c++).

I would help, but I am not sure I know enough programming to be of use.
~Mr. R^2


#9

With the REV Spark Max library, a Python port of it is blocked on:

Note that if you only need basic motor functionality, the Spark Max is usable over PWM.


#10

Unfortunately, we can’t easily directly wrap something that uses the C++ or Java WPILib because those libraries would conflict with RobotPy’s implementations.

I communicated with the REV authors prior to kickoff on this topic, but I never received a response to my last email with them. My impression is that they’re more concerned with getting something out the door at the moment, so RobotPy isn’t on their shortlist of things they care about now.

Looking at the C++ API they have, there might be some hacks we can do to make it work, but it’s probably at least a week of work.


#11

I put together something hacky for the SPARK MAX. If you’re interested, please comment on the thread I created for it: RobotPy SPARK MAX bindings


#12

Any update on the VSCode plugin release?


#13

Still on the agenda, but I haven’t had time to look at it yet. There is an existing plugin at https://github.com/robotpy/vscode-wpilib-python, someone just needs to go through and document/update/release it.


#14

robotpy-ctre 2019.1.0 release is out! We’ve updated to Phoenix 5.12.1, and I think we cover most of the new API added this year now.

Also, the robotpy-installer has been updated so that you can install ctre or robotpy-ctre instead of typing python37-robotpy-ctre.


#15

robotpy-installer 2019.1.0 has two new features that will be very useful:

  • Smarter connections to the roborio (so deploying code should be slightly faster!)
  • Better caching of downloaded artifacts

#16

Was there a config.json file of the latest 2019 field available somewhere?


#17

The latest version of pyfrc includes the 2019 field.


#18

FYI, random updates pushed out for CTRE, REV, pyfrc, and cscore. If you’re using them, you probably want to update (particularly REV updates).

Thinking about this topic, we don’t really have a good way to announce updates. How do people expect to receive updates about RobotPy?


#19

Thank you all again. Your work is helping our team program our entire bot effectively.

Is there a preferred method of upgrading the packages, or should we just re-download and install them each using the installer?

I personally have no problem with update announcements here.


#20

Currently you have to re-download and re-install the packages. Probably should make this easier. If you have thoughts, comment on https://github.com/robotpy/robotpy-installer/issues/27 :slight_smile: