PROS February Update (Wireless Upload and new UI)

We are pleased to announce the availability of PROS Kernel 3.1.6 and CLI 3.1.4. We’ve brought many improvements to the development platform, including wireless upload, partial upload support, and an improved UI experience on the PROS Editor.

To get the latest CLI, head on over to the release notes for download instructions.

To get the latest kernel, run prosv5 c u on your terminal or point at PROS -> Upgrade Project in the PROS Editor. Please note there are important instructions to upgrade your project to kernel 3.1.6!

Wireless Upload

We’ve enabled wireless upload to the V5 via a controller. Please note that upload speeds via VEXnet are slow (~6Kbps). PROS programs are traditionally in the range of ~500 KB, so check out the section below to enable quick wireless uploads. Click here to learn more about wireless upload.

Hot/Cold Linking

We’ve implemented a new compilation method we call hot/cold linking. In this mode, PROS will compile and upload libraries you use once and only upload files you regularly edit (like opcontrol.cpp and friends). With this compilation mode, you can save program file space on your V5 and have quick upload times (experimentation shows that the file you upload wirelessly gets cut to <10 KB - approximately 2 seconds of actual communication). Please note that this method of compilation is not enabled by default on projects. Click here to learn more about wireless upload and hot/cold linking.

Interactive UI

We’ve reworked all of our UI dialogs so that the “business logic” exists in the CLI. This makes it easier for us to modify our dialog boxes and make them more responsive. Sentry reports can now also be sent through PROS Editor.

Screen Capture

Thanks to @69922Nathan for implementing screen capture of the V5. You can now take screen captures of your V5 with the prosv5 v5 capture command. We’ll be implementing a dialog box for PROS Editor with the next CLI release.

Release Notes

Kernel 3.1.6 Update Notes
  • Shuffle Makefiles (#87)
  • Add support for hot/cold linking (#89)
  • Bugfixes to LLEMU, RTOS, and buffer overflow when printing to controller screen

Note: Support for using hot/cold binaries requires CLI 3.1.4

CLI 3.1.4 Update Notes
  • Implement interactive UI (#38)
  • Add binary compression to uploaded V5 files (#48)
  • Add support for V5 hot/cold linking (#46)
  • Add support for V5 screen capture
  • Add wireless upload support (#47)
  • Bugfixes and improvements to Conductor, V5 upload protocol

Important Makefile Upgrade Instructions

In order to support modified hot/cold linking we needed to modify the Makefile, which is intended to be modified by you. When upgrading your project (regardless of whether you enable hot/cold linking), you must modify your Makefile as follows:

  1. Remove all lines after -include ./
  2. Add the following two lines anywhere above the -include ./ line (for example, below EXTRA_CXXFLAGS=):
# Set to 1 to enable hot/cold linking

Your Makefile should now be similar to the template Makefile.


i set USE_PACKAGE:=1
If I modify my *.h *.hpp files, do I have to make clean make all pros mut?

Previous versions,when I changed the *.h *.hpp file before, he would not automatically re-link it in .

Yes, if you modify a header file, make will not detect the changes. You could either run prosv5 make clean and prosv5 make all or make a change, save, undo the change, save, and then run prosv5 make all to “trick” it.

Students often forget to make clean.
Occasionally the brain doesn’t crash.
Then the PWM was locked at 127, and the ports of the brain were damaged.
I found this problem only recently when I set up a log system.

In wireless mode pros terminal Unable to link.
Everything else is perfect.

Wireless terminal isn’t yet supported by VEX firmware. I’m told it’ll be soon :tm:

Inside your Makefile, you can change




and now whenever you run just prosv5 make, it’ll rebuild everything.


When I try to do the wireless programming it mentions it can’t find any V5 ports available

It should work if you’re wired to your controller, your controller is connected to the brain, and you’re running the latest version of Pros (3.1.4)

In addition to @henryl’s points, make sure your V5 and controller firmwares are up to date

I have all of those things and it’s still not working for some reason…

What OS are you using?

Was testing in Windows 10. Kernel updgraded fine, CLI upgraded fine. Just when the controller is plugged in it doesn’t detect any V5 ports.

Can you run prosv5 lsusb --debug and send/share the output? That’ll give us a clue what Windows advertises and what PROS thinks of those available ports.

Ran in to the same situation last night with the same environment.

if i use prosv5 make template
prosv5 c f
prosv5 c a xxx
i must setUSE_PACKAGE:=0

if i usearm-none-eabi-ar -rc xxx.a xxx.o xxx.xo
it’s all right

So on my mac this time, It picks up the controller, but when I try to start a download, it immediately loses connection and the download fails.

Also does the same on my Windows machine:

I have an image from the terminal where I tried this (Windows)


Image doesn’t work for me.

fixed the image link


I was trying to build my project with the new update and when i set USE_PACKAGE to 0 it compiled just fine but when I set it equal to 1 it did not build and gave me an error with the Okapi libraries. I have attached an image of the command line below. When I set the USE_PACKAGE to 1 it works just fine however. Is it because some of my code uses stuff from the display library?