First commit

This commit is contained in:
thenetworkgrinch
2023-01-29 21:03:26 -06:00
commit 95baa4db9d
106 changed files with 59318 additions and 0 deletions

18
README.md Normal file
View File

@@ -0,0 +1,18 @@
# Yet Another General Swerve Library
* In early 2023 `swerve-lib` created by SwerveDriveSpecialties officially became unmaintained after not being updated in 2022.
* This library aims to simplify Swerve Drive implementations while not sacrificing speed or processing power.
# Features
* When a compatible absolute encoder is given it will be used as a remote encoder for the steering motor reducing CAN messages.
* Autogenerated shuffleboard dashboard for each module which can be updated periodically with the verbosity setting.
* The swerve drive is configurable via JSON files, and you can initialize the entire swerve drive with a similar line as the following.
* Simulation support.
```java
SwerveDrive swerveDrive = SwerveParser.fromJSONDirectory(new File(Filesystem.getDeployDirectory(), "swerve"));
```
# Images
![Field Shuffleboard](.\imgaes\field.png)
![Simulation](.\imgaes\simulation.png)
![Dashbaord as dials](.\imgaes\dashboard_dials.png)
![Dashboard as graphs](.\imgaes\dashboard_graph.png)