Skip to content

Releases: purduesigbots/pros

3.2.0

18 Sep 22:21
3.2.0
ab99a33
Compare
Choose a tag to compare

Summary:

  • Add Makefile variable for excluding libraries from cold image (#121, #129)
  • Improve Makefile compile speed (#123)
  • Various ADI/VDML bugfixes (#124, #125, #139, #151, #160)
  • Add alternate API for generic serial comms and fix generic serial comms driver (#141)
  • Support GCC 8.3 out of the box (#155)
  • Enable hot/cold linking in projects by default (#154)
  • Combine template source files into main.cpp for new projects (#152, #165)
  • Upgrade LVGL to version 5.3 (#144, #147)
  • Add a default .gitignore file to new projects by default (#156)
  • Add an alternate constructor for pros::Task (#158)
  • Add a better data abort handler (#112)
  • Recompile for changes in header files (#167)

Special thanks to @Jerrylum, @TixoRebel, @Octogonapus, @theol0403, and @SpencerJ21 for their contributions!

Important Upgrade Notes

We are replacing the three initialize.cpp, autonomous.cpp, and opcontrol.cpp files with a single main.cpp file for new projects, so the main.cpp file will be introduced into your project when you upgrade. If you compile the project right away, you will likely be faced with multiple definition errors for the competition tasks. To resolve this, you can either delete the new main.cpp, or move the contents of your competition task functions into the new file, deleting the previous files. If your project structure has been significantly modified from the default, we trust that you will know how to resolve this issue on your own. Also note that if you have already consolidated the three files listed above into a single main.cpp file, this will not be an issue.

You may also get multiple definition errors if you added the temporary __sync_synchronize fix that was necessary for some users. After upgrading, you may safely remove that fix from your own code.

If your code checked errno values set by PROS functions, you may need to change the values you compare with. Check each function's documentation for more information.

We have upgraded LVGL to 5.3, but since starting the upgrade process LVGL 6.0 was released, which has changed things a lot, and the online documentation for LVGL now reflects information for version 6.0. Please see this link for information on where to find the documentation for LVGL 5.3.

3.1.6 - Hot/Cold Linking

19 Feb 21:24
3.1.6
cb1c2ad
Compare
Choose a tag to compare

Summary:

  • 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

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 ./common.mk
  2. Add the following two lines above the -include ./common.mk line (for example, below EXTRA_CXXFLAGS=):
# Set to 1 to enable hot/cold linking
USE_PACKAGE:=0

Your Makefile should now be similar to the template Makefile.

3.1.5

30 Jan 21:14
Compare
Choose a tag to compare

Summary:

D259: Add vision signature function that is parameter-equivalent to VCS and RMS functions
D258: Expose vision sensor WiFi control
D256: Make vision sensor exposure match brightness values in utility
D260: Stop using namespace pros in extended API
D255: Add implicit operator to convert from pros::Task to task_t
D257: RTOS bugfixes
D249: Add task_notify_when_deleting
Test Plan: tested in diffs specified above

Reviewers: O5 The Queen's Guard, O1 The Ori, berman5

Reviewed By: O5 The Queen's Guard, O1 The Ori, berman5

Tags: Zorp

Differential Revision: https://phabricator.purduesigbots.com/D264

3.1.4

30 Jan 21:14
Compare
Choose a tag to compare
3.1.4 Pre-release
Pre-release

Summary:
New Features:

Vision Sensor Signature Read/Write, you can now configure signatures in your PROS project (though the existing method of saving signatures through the Vision Utility still works)
Vision Sensor Color Code functionality, you can now configure color codes for the sensor (this must be done programmatically, not through the Vision Utility) and filter objects by their color code with the get_by_code() and read_by_code() functions
Usability Impovements:

The errno values for Vision Sensor object retrieval functions are now more clear.
Test Plan:

verify symbols
Test Team BLRS competition code (opcontrol)
Reviewers: O5 The Queen's Guard, O1 The Ori, berman5

Reviewed By: O5 The Queen's Guard, O1 The Ori, berman5

Subscribers: berman5

Tags: Zorp

Differential Revision: https://phabricator.purduesigbots.com/D248

2.12.2 - PROS CLI 3 Support and new Makefile

03 Sep 20:08
2.12.2
1b5dc4d
Compare
Choose a tag to compare

Summary

  • Update Makefile to new universal Makefile
    • Support for PROS 3 environment (cquery)
    • Color output
    • Arbitrarily nested subdirectories
  • Add PROS_VERSION_MAJOR, PROS_VERSION_MINOR, PROS_VERSION_PATCH and PROS_VERSION to include/API.h

2.12.1 - Add calloc and named constant for ultrasonic error cases

18 Oct 18:52
2.12.1
b402191
Compare
Choose a tag to compare

Release Notes:

  • You can now use calloc
  • When an ultrasonic sensor times out or has nothing to detect within its range, it will return ULTRA_BAD_RESPONSE

This release's assets come from:
purduesigbots/atom at 1.21.2
purduesigbots/pros-cli at 2.6.1

2.12.0 - Standalone Mode and Improved C++ Compatibility

22 Jul 01:16
53d42f5
Compare
Choose a tag to compare

Release Notes:

  • Improve C++ compatibility by renaming FILE to PROS_FILE. If FILE wasn't defined before preprocessing API.h, then FILE is an alias to PROS_FILE. If you're not using PROS with C++, there should be no affect on your projects.
  • make upload now uses PROS CLI by default. To continue using the uniflasher, you may use make upload-legacy
  • Added standalone mode, which allows the Cortex to run without needing to be linked to a PC or joystick.

Kernel 2.11.1 - Watchdog and Fault Reporting

31 Mar 23:37
2.11.1
Compare
Choose a tag to compare
  • Fix broken fault reporting
  • Add newlines to errorMessages
  • Add issue template and contributing message
  • Add PROS CLI template generation to automated build
  • Implement watchdog timer
  • Document watchdog timer and how best to work with it
  • Naming fixes and more accurate task timing
  • Update Jenkinsfile build
  • A new README for a new world

Kernel 2.11.0 - Open Source + I2C

23 Sep 16:19
Compare
Choose a tag to compare

Changes:

  • Source code is now licensed under Mozilla Public License 2.0. The standard PROS template (kernel-template.zip) will still be distributed under the BSD 3-Clause license.
  • Bubble up I2C functions
  • Rename libccos -> libpros

PROS 2b10 (2.10.0)

23 Sep 16:14
Compare
Choose a tag to compare
Old PROS 2b10 (renamed to 2.10.0) release