Skip to content

v1.3.0 — PIDController, anti-jam, tunable driveKp

Choose a tag to compare

@AkshobyaRaoSWE AkshobyaRaoSWE released this 07 Jul 14:54

Added

  • clockwork::PIDController — standalone reusable PID for any subsystem lemlib doesn't drive (arm, lift, flywheel, wall-align). Anti-windup (integral cap + zero-cross reset), output clamp, settled() helper.
  • Roller::antiJam(...) — non-blocking auto-reverse when the intake jams, then resumes the previous command. Works in opcontrol and autonomous.
  • Motion::driveDistance gains a tunable driveKp parameter (default 8.0), previously a hidden internal constant.

Fixed

  • Straight-drive heading correction now clamps the turn term, so a large transient heading error can no longer make arcade() steal throttle and pivot in place instead of driving through.

Docs

  • README now ships a full plain-English Understanding gains (kP / kI / kD) guide with a symptom→fix table, plus reference + examples for PIDController and antiJam.

Install

pros c add-depot clockwork https://raw.githubusercontent.com/AkshobyaRaoSWE/clockwork-lib/main/depot.json
pros c apply clockwork

Full changelog: CHANGELOG.md