For the complete documentation index, see llms.txt. This page is also available as Markdown.

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.json

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

Part of Yet Another Software Suite

YALL is one of several FRC vendor libraries maintained under Yet Another Software Suite, alongside YAGSL (swerve drive) and YAMS (mechanisms).