--- tags: byting-irish --- # Byting Irish Programming 2024 ## This doc: https://rebrand.ly/byting-prog-notes * Links: * [2023 Notes](https://rebrand.ly/2023/byting-prog-notes) * [2024 WPILib Betas](https://github.com/wpilibsuite/allwpilib/tags) * Sharepoint: * Folder: https://fgrhsaaorg.sharepoint.com/sites/RoboticsClub/ * Tasks: [link](https://rebrand.ly/byting-tasks) ## 2024-03-19 * autonomous training: * drive 3-5 distance * drive 3-5 turn left 3-5 * initialize without moving wheels and recording readings -- just to make able to read the values for easy updating. * alignment based on odometry * april tag pipeline improvement * odometry at start - does the issue happen in simulation? * drive to position - drive to the spot to shoot. * april tag improvement * auton / alingment issue * vendor updates: * [REVLib](https://docs.revrobotics.com/ion-control-system/sw/revlib/changelog) (2024.2.3 -> 2024.2.4) * [PathplannerLib (2024.2.7)](https://github.com/mjansen4857/pathplanner/releases/tag/v2024.1.7) * look at [Choreo](https://www.chiefdelphi.com/t/introducing-choreo-a-new-approach-to-swerve-trajectories/445236) ## 2024-02-27 * Eli made several changes when working with auton in Chelsea. That branch is pushed to [robo7660/Fixes-2-Chelsea](https://github.com/robo7660/Robot/tree/Fixes-2-Chelsea) * Scott pushed a branch to [smoser-frc/Fixes-2-Chelsea-updates](https://github.com/smoser-frc/Robot/tree/Fixes-2-Chelsea-updates) * copied the up to date YAGSL-Example SwerveSubsystem class nd applied our delta so that the diff is more obvious. With these changes none of the YAGSL-pprovided code is changed. **I removed the '\* -1' change** * Updated our libraries via 'update vendor libs'. this is significant. Take a look at the changelogs of to update it versus the copied YAGSL-Example class so as to have tthe local changes more easily stand out * [REVLib](https://docs.revrobotics.com/ion-control-system/sw/revlib/changelog) (2024.2.0 -> 2024.2.3) * [YAGSL](https://yagsl.gitbook.io/yagsl/overview/changelog) (2024.4.6 -> 2024.4.8.5) * [CTRE-Phoenix(v6)](https://api.ctr-electronics.com/changelog) (24.1.0 -> 24.2.0) * [PathplannerLib (2024.1.4)](https://github.com/mjansen4857/pathplanner/releases/tag/v2024.1.4) ## 2024-02-25 Thoughts and items from Chelsea. Progarmming things: * Investigate spark flex and CAN problems * NAVX had some random resets * Eli reported high (100% CPU utilization) - particularly concerning because roborio 2 has more powerful cpu than rio 1. * Vision input (especially with "reset to limelight") often seems to have issues. We need some filtering / confidence level on results before using * Angled April tags seem to have issues * Need auton work. * PID Tuning Swerve * Pid tune launcher? * Angle is a bit high for short shot * Button to turn off index - index runs until note take in - no manual off. Build / Electrical issues: * gap between index and launcher means * launch on low angle is somewhat flakey (requires getting a running start) * launch at high angle impossible without human assistance * CAN issuues, possibly wiring, possibly related to Spark FLEX. * Limelight falls off ## 2024-02-23 Before chelsea: * review eli's branch. robo7660/Fixes * think through autons a bit Things for chelsea: * update launcher - update pids on launch angle - update pids on velocity * verify break beams * autons - aliance mirroring changes - autons: 1. super simple, just shoot and move 2. simple - score , pickup, score 3. ... ## 2024-01-20 * Flashing photon vision on limelight Instructions Linux * 1. Install rpiboot and run while limelight is plug in to make limelight visible as a boot drive. * 2. Download latest version of photonvision for limelight https://github.com/photonvision/photonvision/releases * 3. Flash .xz file to limelight with Balena Etcher * Download and install CAD software "Fusion 360" * 1. Download the Autodesk Fusion Education Version https://www.autodesk.com/education/edu-software/overview?sorting=featured&filters=individual * 2. Access the link above, find "Fusion" and click "Get Product" * 3. Sign in or create a new account and get the access invitation from Mr. Mitzel * 4. Download the latest version of "Fusion" and install * 5. If there are any problems, ask Mr. Mitzel, Difei, and Ryan ## 2024-01-09 * [X] Find limelights and ac power * [x] find / update firmware - (limelight.io firrware) * 2. Verify firmware versions on navx * https://pdocs.kauailabs.com/navx-mxp/software/navx-mxp-ui/ * https://www.kauailabs.com/support/navx-mxp/kb/faq.php?id=48 * 3. read about FRC components - [link](https://yagsl.gitbook.io/yagsl/analytics-and-debugging/frc-web-components) * 4. update laptops 2024 install to [2024.1.1](https://github.com/wpilibsuite/allwpilib/releases) * Play with swerve (wait for eli) * chief delphi post [here](https://www.chiefdelphi.com/t/yet-another-generic-swerve-library-yagsl-beta/425148/873) nstrike said (today): > The 2024 release is delayed until CTRE’s official Phoenix 6 2024 release and ReduxLib’s official 2024 release ## Swerve * Links * [Team 6624 Programming Notes](https://compendium.readthedocs.io/en/latest/tasks/drivetrains/swerve.html) * [YAGSL](https://github.com/BroncBotz3481/YAGSL/wiki) (Yet another generic swerve library) * [configuration tool](https://broncbotz3481.github.io/YAGSL-Example/) * [chief delphi post](https://www.chiefdelphi.com/t/yet-another-generic-swerve-library-yagsl-beta/425148) * [gitbook doc](https://yagsl.gitbook.io/yagsl/analytics-and-debugging/frc-web-components) * [WPILIB Swerve](https://docs.wpilib.org/en/stable/docs/software/kinematics-and-odometry/swerve-drive-kinematics.html) ## How to Develop We always try to develop in small units. One thing at a time. As examples of "units of code", we might have: * Add initial Launcher * Fix timer in intake subsystem * Adjust constants in Index class Ideally, each of those units is in its own branch, and then proposed as a new "pull request" to get the change into main. The steps to do development in this manner are: 1. Fork "upstream" repository on github so you have your own github repository. Upstream's development takes place on [frc7660/robot](https://github.com/) 2. Clone upstream to create a new local repository 3. Update your local repository This is a "git fetch" oor "git pupul" We like to do those units each in ## Other things Links * [Mechanical Advantage](https://github.com/Mechanical-Advantage/AdvantageKit/blob/main/docs/WHAT-IS-ADVANTAGEKIT.md)