Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix leds not having the buffer data set #69

Merged
merged 1 commit into from
Jan 10, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions src/main/java/frc/robot/subsystems/led/LEDSubsystem.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,23 @@ public class LEDSubsystem extends SubsystemBase {

public static List<LEDSegment> ledSegments = new ArrayList<>();

private static boolean initialized = false;

public static AddressableLED leds =
new AddressableLED(0); // The PWM port the LEDs are plugged into
public static AddressableLEDBuffer ledBuffer; // The buffer that holds the LED data

@Override
public void periodic() {
if (!initialized) {
System.out.println("LED Subsystem not initialized, initializing now...");
this.initialize();
}

// For every segment that is registered, run the periodic function
for (LEDSegment ledSegment : ledSegments) {
ledSegment.getLedMode().periodic(ledSegment.getSegmentIdentifier());
leds.setData(ledBuffer);
}
}

Expand All @@ -42,7 +50,11 @@ public void initialize() {
leds.setLength(
(ledSegments.size() * LEDConstants.ledsPerSegment)); // Set the length of the LED strip

leds.setData(ledBuffer); // Set the data of the LED strip

leds.start(); // Start the LED strip

initialized = true;
}

/**
Expand Down
Loading