All 1540 code (including our 2020 competition code, as soon as we start writing it) is publicly available on our GitHub at github.com/flamingchickens1540.
In the past year, we’ve continued our work on our common code library, Reusable Object-Oriented Systems, Templates, and Executables for Robots (or ROOSTER for short).
Our 2019 competition code (for our robots Phineas and Ferb) is also present, containing our field-oriented tank drive system integrated with advanced custom vision pose estimation (including full 3D pose using the Limelight without compute3D, odometry to continue tracking when the camera is blocked by our elevator, automatic calibration to field/camera variances, and automatic hatch placement when in position) as well as a variety of advanced superstructure controls, a gyro-stabilized climb sequence, and self-test functions for all robot mechanisms.
You can also find the code for our 2019 BunnyBots (Chonk and Liam) as well as an unused vision system we developed during the 2019 season.
Only way we got it to work was to put everything except the drivetrain into one command and one subsystem - looking to understand Java better and use the framework the right way in 2020. Appreciate CD and all of the posts that help us learn!
Highlight: frcconf (working title) was developed this offseason to significantly reduce deployment times when all you’re changing are configuration values. Current plan is to release it on jitpack in a more polished state this build season.
Example implementation - RobotMap is written, and ConfiguredRobotMap is generated and then can be used by ConfigLoader. It gets picked up in the deployment process, so no need to copy it from the build/generated folder into your source code.