Releases: EZ-Robotics/EZ-Template
v3.2.0-beta.2 - Bugs Squashed
Full Changelog: v3.2.0-beta.1...v3.2.0-beta.2
v3.2.0-beta.2
This version is probably(?) stable
This has been tested, but there will be issues. v3.2 is a a massive update. Finding bugs now will help get to a stable version quicker. If this version goes well, the next release will be a release candidate.
Features since beta.1
- you can wait until the robot crosses a line
- v3.1 motion chaining syntax now works with odom motions
- generic function names added (
pid_odom_set()
)
Bug fixes since beta.1
- slew works
- removed excess points generated by point injection
- boomerang no longer spams terminal
- ensured all
waits
work as intended with odom - the robot will actually go the speed you tell it to go
Missing Features
- horizontal tracking wheel support
- ability to switch between motor encoders and tracking wheels for normal pid movements
- single vertical tracking wheel support
drive.hpp
is a mess with odom
What should you test?
If you previously made autons with beta.1, run those in beta.2 and see if there's any negative differences. Otherwise just run some autos, play with the auto functions, and see if everything works!
v3.2.0-beta.1 - Odometry
v3.2.0-beta.1
This is NOT a stable version of EZ-Template
This has been tested, but there will be issues. v3.2 is a a massive update. Finding bugs now will help get to a stable version quicker.
Missing Features
- horizontal tracking wheel support
- ability to switch between motor encoders and tracking wheels for normal pid movements
- single vertical tracking wheel support
- automatic track width tuning
- v3.1 motion chaining syntax with odom
wait_until
line crossed- good function names for everything new
drive.hpp
is a mess with odom
Known Bugs (this list will be updated)
- slew freaks out when going backwards and is always disabled internally for all odom movements
What should you test?
I bet there will be problems with:
- boomerang
- boomerang in pps
- boomerang in smooth pps
⛓️v3.1.0 - Motion Chaining!
✨ Features
- !! Motion Chaining !! #109
- PROS 4.1.0
- Better default constants #119
- New simple constructor #120
- IMU acceleration is used in addition to your drive encoders for determining 0 velocity #102
- IMU scaling #104
🐛 Bugs Squashed
- Random motion skipping is fixed #117
- Derivative kick #99
- All exit conditions print error to terminal #111
- Drive motions now slew correctly #110
- Exit conditions actually work #101
- Changing max speed actually works #118
- Capped decimal count in prints #122
- Fixed chaining drives into turns #123
Discord Server
Need extra assistance using EZ-Template? Feel free to join our Discord Server!
Installation
Installation tutorials can be found here.
Upgrading
Upgrading tutorials can be found here.
Tutorials
Tutorials on how to use and install EZ-Template can be found here.
Docs
Documentation on how to use EZ-Template functions can be found here.
Note: PROS 4 has breaking changes to PROS 3.8.3. You'll have to modify some of your code if you're upgrading your project. All EZ-Template calls remained the same. You can find the PROS 4 documentation here.
Thanks @WillXuCodes, @Aidan-Limketkai, and @cmay25009 for helping with this release!
v3.1.0-RC3 - PROS 4 and Motion Chaining
Note: PROS 4 has breaking changes to PROS 3.8.3. You'll have to modify some of your code if you're upgrading your project. All EZ-Template calls remained the same.
✨ Features
- !! PROS 4 !!
- !! Motion Chaining !! #109
- Better default constants #119
- New simple constructor #120
- IMU acceleration is used in addition to your drive encoders for determining 0 velocity #102
- IMU scaling #104
🐛 Bugs Squashed
- !! Random motion skipping is fixed !! #117
- Derivative kick #99
- All exit conditions print error to terminal #111
- Drive motions now slew correctly #110
- Exit conditions actually work #101
- Changing max speed actually works #118
- Capped decimal count in prints #122
- Fixed chaining drives into turns #123
🤖 To Test
- Run all of the example autonomous routines and make sure they work as you expect
- Play with motion chaining stuff and make a small test yourself
Installation and Upgrading
Installation and Upgrading tutorials can be foud here.
Tutorials
Tutorials on how to use and install EZ-Template can be found here.
Docs
Documentation on how to use EZ-Template functions can be found here.
Thanks @WillXuCodes, @Aidan-Limketkai, and @cmay25009 for helping with this release!
v3.1.0-RC2 - PROS 4 and Motion Chaining
v3.1.0-RC2 is ready for some testing!
Note: PROS 4 has breaking changes to PROS 3.8.3. You'll have to modify some of your code if you're upgrading your project. All EZ-Template calls remained the same.
✨ Features
- !! PROS 4 !!
- !! Motion Chaining !! #109
- Better default constants #119
- New simple constructor #120
- IMU acceleration is used in addition to your drive encoders for determining 0 velocity #102
- IMU scaling #104
🐛 Bugs Squashed
- !! Random motion skipping is fixed !! #117
- Derivative kick #99
- All exit conditions print error to terminal #111
- Drive motions now slew correctly #110
- Exit conditions actually work #101
- Changing max speed actually works #118
🤖 To Test
- Run all of the example autonomous routines and make sure they work as you expect
- Play with motion chaining stuff and make a small test yourself
Installation and Upgrading
Installation and Upgrading tutorials can be foud here.
Tutorials
Tutorials on how to use and install EZ-Template can be found here.
Docs
Documentation on how to use EZ-Template functions can be found here.
Thanks @WillXuCodes for helping with this release!
🐛3.0.1 - Minor Bug Fixes
3.0.0 - PID Tuner, New Function Names, Arcs, and more!
For download and installation instructions, documentation and tutorials, check our website! https://ez-robotics.github.io/EZ-Template/
Download and Installation
- Download the latest example project below (EZ-Template-Example-Project-v3.0.0.zip). Extract the zip, and open it in PROS.
- In
src/main.cpp
, configure drive and IMU ports to what they are on your robot. Be sure to read the comments! - Configure your wheel size and cartridge. Remember that older 4" omni wheels without mounting holes are actually 4.125!
- In
src/main.cpp
, at the bottom invoid opcontrol()
, decide how you'd like to control your robot! Any flavor of arcade or tank! - Turn the robot on and use it in driver control. Make sure the ports are correct and reversed correctly!
- To test the test autonomous modes, press
B
on your controller. The current page will be the autonomous that runs. For making new autonomous routines, checksrc/autons.cpp
for examples on how to use the drive functions.
Upgrading
Note: this only works for 2.0.0 and beyond. You cannot upgrade from 1.x to 2.x, or 2.x to 3.x
- Download the most recent EZ-Template below (
[email protected]
). - Move the file to your project.
- Open terminal or command prompt, and
cd
into your projects directory. - Run this command from terminal
pros c fetch [email protected]
. - Apply the library to the project
pros c apply EZ-Template
.
Features
- Okapi units (#49)
- Practice Mode (#53)
- Piston class (#54)
- Added relative turn and swing PID (#59)
pid_wait()
prints error to terminal (#62)- All functions renamed (#65)
- Option added to have PID not reset i (#66)
- Added more
sets()
andgets()
(#73) - Slew for turns, swings, and your own subsystems (#74)
- Drive can be reversed in opcontrol (#79)
- Heading is vector scaled (#82)
- Wider and Smaller swing turns (#83)
- Swings have independent forward and reverse constants (#84)
- PID Tuner (#85)
Bug Fixes
- Fixed Rotation Sensor Ticks (#47)
- Fixed toggling active brake in opcontrol (#48)
drive_set()
now disables PID (#52)- Autononomous functions work in driver (#55)
- Fixed joystick deadzone (#56)
- Restructured setting PID constants and exit conditions (#57)
- Auton selector disables correctly on shutdown (#86)
- Disabling curve modifier clears the controller screen (#87)
Thank you @Mactar1233 and @Sprxxng for first time contributing, along with @Unionjackjz1 @HakopZ @WillXuCodes!
2.2.0 - Kernel Upgrade 3.8.0
Note: upgrading only works for 2.0.0 and beyond. You cannot upgrade from 1.X.X to 2.X.X.
Upgrades ez-template to PROS 3.8.0
For download and installation instructions, documentation and tutorials, check our website! https://ez-robotics.github.io/EZ-Template/
Download and Installation
- Download the latest example project below (EZ-Template-Example-Proj-2.2.0.zip). Extract the zip, and open it in PROS.
- In
src/main.cpp
, configure drive and IMU ports to what they are on your robot. Be sure to read the comments! - Configure your wheel size and cartridge. Remember that older 4" omni wheels without mounting holes are actually 4.125!
- In
src/main.cpp
, at the bottom invoid opcontrol()
, decide how you'd like to control your robot! Any flavor of arcade or tank! - Turn the robot on and use it in driver control. Make sure the ports are correct and reversed correctly!
- To test the test autonomous modes, plug into a competition switch and select the autonomous mode on the brain screen by pressing the left and right buttons! The current page will be the autonomous that runs. For making new autonomous routines, check
src/autons.cpp
for examples on how to use the drive functions.
Upgrading
Note: this only works for 2.0.0 and beyond. You cannot upgrade from 1.X.X to 2.X.X.
- Download the most recent EZ-Template below (
[email protected]
). - Move the file to your project.
- Open terminal or command prompt, and
cd
into your projects directory. - Run this command from terminal
pros c fetch [email protected]
. - Apply the library to the project
pros c apply EZ-Template
.
v3.0.0-RC1
Needs basic testing. Below is the example project and template.
features:
- a relative turn function so its not always absolute
- a relative swing function so its not always absolute
- add
piston
andpistongroup
class - practice mode for driving
- okapi units (so you can now use cm, in, meters, tiles, degrees, radians, etc)
bug fixes
- motor joystick deadzones
- auto functions can be run in opcontrol
- fixed rotation sensors
- lowest level pid is now done on inches instead of ticks
refactoring
- namespacing everything as
ez
2.1.2 - Upgraded Kernel
Note: upgrading only works for 2.0.0 and beyond. You cannot upgrade from 1.X.X to 2.X.X.
Upgrades ez-template to PROS 3.7.3
For download and installation instructions, documentation and tutorials, check our website! https://ez-robotics.github.io/EZ-Template/
Download and Installation
- Download the latest example project below (
Example-Project.zip
). Extract the zip, and open it in PROS. - In
src/main.cpp
, configure drive and IMU ports to what they are on your robot. Be sure to read the comments! - Configure your wheel size and cartridge. Remember that older 4" omni wheels without mounting holes are actually 4.125!
- In
src/main.cpp
, at the bottom invoid opcontrol()
, decide how you'd like to control your robot! Any flavor of arcade or tank! - Turn the robot on and use it in driver control. Make sure the ports are correct and reversed correctly!
- To test the test autonomous modes, plug into a competition switch and select the autonomous mode on the brain screen by pressing the left and right buttons! The current page will be the autonomous that runs. For making new autonomous routines, check
src/autons.cpp
for examples on how to use the drive functions.
Upgrading
Note: this only works for 2.0.0 and beyond. You cannot upgrade from 1.X.X to 2.X.X.
- Download the most recent EZ-Template below (
[email protected]
). - Move the file to your project.
- Open terminal or command prompt, and
cd
into your projects directory. - Run this command from terminal
prosv5 c fetch [email protected]
. - Apply the library to the project
prosv5 c apply EZ-Template
. - Put
#include "EZ-Template/api.hpp"
in yourinclude/main.h
.