Releases: EZ-Robotics/EZ-Template
v3.2.0-beta.4 - Tracking Wheels! (fr this time)
Full Changelog: v3.2.0-beta.3...v3.2.0-beta.4
v3.2.0-beta.4
This version is stable
This is very close to what RC1 will be. This is being released now for testing while extra documentation is made in drive.hpp
. There is still a chance breaking changes happen between this and RC1 / the full 3.2.0 release.
Features since beta.3
- you can now remove blank pages
Bug fixed since beta.3
- rotation sensors will actually reverse in tracking wheels
- fixed typos in example project
Refactoring
- drive.hpp now has comments
Missing Features
Once this bug is fixed/figured out, the new drive constructor will work and will allow you to input track width into the constructor. Additional comments are needed in drive.hpp
, and new example autonomous routines are needed to show how odom works.
What should you test?
Something cool about this version is pid_odom_set
now supports the same syntax as pid_drive_set
. So you can take one of your autos from a previous 3.x version, change pid_drive_set
to pid_odom_set
, and you'd have tracking in your autons! This will not be as good as telling the robot what points to go to, as accumulative error will still happen, but each motion should be more accurate with this.
v3.2.0-beta.3 - Tracking Wheels!
Full Changelog: v3.2.0-beta.2...v3.2.0-beta.3
v3.2.0-beta.3
This version is stable
This is very close to what RC1 will be. This is being released now for testing while extra documentation is made in drive.hpp
. There is still a chance breaking changes happen between this and RC1 / the full 3.2.0 release.
Features since beta.2
- tracking wheel support
- turn directions
pid_drive_set
syntax is compatible withpid_odom_set
- blank pages can be added to the auton selector
- "mirrored field problem" is solved
- blanket enables for slew
- odom units
clamp()
now has an option for 2 parameters- slew reenables when speed increases during pure pursuits
- you can add custom stuff to pid tuner
Bug fixed since beta.2
- disabling PID now turns the drive motors off
Missing Features
Once this bug is fixed/figured out, the new drive constructor will work and will allow you to input track width into the constructor. Additional comments are needed in drive.hpp
, and new example autonomous routines are needed to show how odom works.
What should you test?
Something cool about this version is pid_odom_set
now supports the same syntax as pid_drive_set
. So you can take one of your autos from a previous 3.x version, change pid_drive_set
to pid_odom_set
, and you'd have tracking in your autons! This will not be as good as telling the robot what points to go to, as accumulative error will still happen, but each motion should be more accurate with this.
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
.