---
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)