Yet Another Limelight Library
Yet Another Limelight Library — a WPILib vendordep for Limelight vision on FRC robots
YALL is a WPILib vendordep for FRC teams using Limelight smart cameras. It wraps Limelight's NetworkTables API and JSON results output in a typed, chainable Java API — one object per camera, chainable settings, MegaTag1/MegaTag2 pose estimation, and typed results for every pipeline type. A parallel Python port ships alongside it.
Install
Add the vendordep in WPILib VS Code (WPILib: Manage Vendor Libraries → Install new library (online)) using:
https://Yet-Another-Software-Suite.github.io/YALL/yall.jsonQuick example
Limelight limelight = new Limelight("limelight");
limelight.getSettings()
.withLimelightLEDMode(LEDMode.PipelineControl)
.withCameraOffset(Pose3d.kZero)
.save();
Optional<PoseEstimate> visionEstimate = limelight.createPoseEstimator(EstimationMode.MEGATAG2)
.getPoseEstimate();
visionEstimate.ifPresent(estimate ->
poseEstimator.addVisionMeasurement(estimate.pose.toPose2d(), estimate.timestampSeconds));