Skip to content

Mineinjava/quail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7f83ed2 Â· Jan 10, 2025
Jan 10, 2025
Apr 26, 2023
Apr 26, 2023
Mar 7, 2024
Jan 10, 2025
Apr 26, 2023
Oct 4, 2023
May 1, 2024
Mar 14, 2024
Apr 19, 2023
Jan 3, 2025
Apr 27, 2023
Apr 27, 2023
Apr 26, 2023
Apr 27, 2023

Repository files navigation

Quail

Bird-brained swerve drive utility.

Looking to contribute to or use Quail? You may find value in joining the Discord server: https://discord.gg/ABznnnBB

To use Quail, you need a few things. The first is swerve modules. More than one. I don't care where your swerve modules are. They could be 52 miles apart (i.e. this but with swerve) and in the shape of a pentagon and Quail would still work.

The second thing you need is a little knowledge of Java. You should be able to:

  • use a PID controller
  • use subclasses
  • read an encoder
  • make your motors spin (to an angle if using coaxial swerve)

If you want to get started quickly, there are docs here A javadoc can be found here


I wish I knew Kotlin so I could make it purple. 💜

Currently, Quail is stable. Not quite sure about the documentation--it seems to be a bit tempermental.

Quail is designed for use and tested in FRC and FTC, but it should work in any java robotics program.


Features:

Working:

  • Swerve reverse kinematics (robot can drive)
  • Swerve odometry (robot can know where it is)
    • Includes heading odometry (can run field oriented without gyroscope and/or provide corrections to gyroscope via Kálmán filter)
  • 2-deadwheel odometry (robot can know where it is (requires additional hardware & gyro))
  • Autonomous navigation and pathing
  • Kálmán filter for use with vision

Not quite working

  • Path sequences