From f014297b239fee477963a9d9291903b1ce5c90df Mon Sep 17 00:00:00 2001 From: HFocus Date: Sat, 16 Mar 2019 11:45:04 -0600 Subject: [PATCH] Merge in code from branch led --- .../java/org/usfirst/frc4388/robot/OI.java | 9 +++-- .../frc4388/robot/constants/LEDPatterns.java | 39 ++++++++++++++++--- .../usfirst/frc4388/robot/subsystems/LED.java | 8 +++- 3 files changed, 46 insertions(+), 10 deletions(-) diff --git a/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java b/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java index 87ffbc4..f5303b3 100644 --- a/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java +++ b/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java @@ -7,7 +7,7 @@ import buttons.XBoxTriggerButton; import org.usfirst.frc4388.controller.IHandController; import org.usfirst.frc4388.controller.XboxController; import org.usfirst.frc4388.robot.commands.*; - +import org.usfirst.frc4388.robot.constants.LEDPatterns; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import edu.wpi.first.wpilibj.GenericHID; @@ -50,10 +50,11 @@ public class OI JoystickButton Expand = new JoystickButton(m_operatorXbox.getJoyStick(), XboxController.Y_BUTTON); Expand.whenPressed(new WristPlacement(true)); + Expand.whenPressed(new setLEDPattern(LEDPatterns.SOLID_RED)); JoystickButton Contract = new JoystickButton(m_operatorXbox.getJoyStick(), XboxController.A_BUTTON); - Contract.whenPressed(new WristPlacement(false)); - + Contract.whenPressed(new WristPlacement(false)); + Contract.whenPressed(new setLEDPattern(LEDPatterns.SOLID_GREEN)); JoystickButton liftBothIntake = new JoystickButton(m_operatorXbox.getJoyStick(), XboxController.X_BUTTON); liftBothIntake.whenPressed(new HatchAndBallUp()); @@ -69,7 +70,9 @@ public class OI JoystickButton safteySwitch = new JoystickButton(m_operatorXbox.getJoyStick(), XboxController.START_BUTTON); safteySwitch.whenPressed(new setClimberSafety(true)); + safteySwitch.whenPressed(new setLEDPattern(LEDPatterns.SOLID_YELLOW)); safteySwitch.whenReleased(new setClimberSafety(false)); + safteySwitch.whenReleased(new setLEDPattern(LEDPatterns.C1_HEARTBEAT_FAST)); JoystickButton climbUp = new JoystickButton(m_driverXbox.getJoyStick(), XboxController.RIGHT_TRIGGER_AXIS); JoystickButton climbDown = new JoystickButton(m_driverXbox.getJoyStick(), XboxController.LEFT_TRIGGER_AXIS); diff --git a/2019robot/src/main/java/org/usfirst/frc4388/robot/constants/LEDPatterns.java b/2019robot/src/main/java/org/usfirst/frc4388/robot/constants/LEDPatterns.java index 44ecddc..4976514 100644 --- a/2019robot/src/main/java/org/usfirst/frc4388/robot/constants/LEDPatterns.java +++ b/2019robot/src/main/java/org/usfirst/frc4388/robot/constants/LEDPatterns.java @@ -1,9 +1,38 @@ package org.usfirst.frc4388.robot.constants; public enum LEDPatterns { - RED(0.61f), BLACK(0.99f); + // PALLETTE PATTERNS + RAINBOW_RAINBOW(-0.99f), PARTY_RAINBOW(-0.97f), OCEAN_RAINBOW(-0.95f), LAVA_RAINBOW(-0.93f), FOREST_RAINBOW(-0.91f), + RAINBOW_GLITTER(-0.89f), CONFETTI(-0.87f), RED_SHOT(-0.85f), BLUE_SHOT(-0.83f), WHITE_SHOT(-0.81f), RAINBOW_SINELON(-0.79f), + PARTY_SINELON(-0.77f), OCEAN_SINELON(-0.75f), LAVA_SINELON(-0.73f), FOREST_SINELON(-0.71f), RAINBOW_BPM(-0.69f), + PARTY_BPM(-0.67f), OCEAN_BPM(-0.65f), LAVA_BPM(-0.63f), FOREST_BPM(-0.61f), FIRE_MEDIUM(-0.59f), FIRE_LARGE(-0.57f), + RAINBOW_TWINKLES(-0.55f), PARTY_TWINKLES(-0.53f), OCEAN_TWINKLES(-0.51f), LAVA_TWINKLES(-0.49f), FOREST_TWINKLES(-0.47f), + RAINBOW_WAVES(-0.45f), PARTY_WAVES(-0.43f), OCEAN_WAVES(-0.41f), LAVA_WAVES(-0.39f), FOREST_WAVES(-0.37f), + RED_SCANNER(-0.35f), GRAY_SCANNER(-0.33f), RED_CHASE(-0.31f), BLUE_CHASE(-0.29f), GRAY_CHASE(-0.27f), RED_HEARTBEAT(-0.25f), + BLUE_HEARTBEAT(-0.23f), WHITE_HEARTBEAT(-0.21f), GRAY_HEARBEAT(-0.19f), RED_BREATH(-0.17f), BLUE_BREATH(-0.15f), + GRAY_BREATH(-0.13f), RED_STROBE(-0.11f), BLUE_STROBE(-0.09f), GOLD_STROBE(-0.07f), WHITE_STROBE(-0.05f), - private final float id; - LEDPatterns(float id) { this.id = id; } - public float getValue() { return id; } - } \ No newline at end of file + // COLOR 1 PATTERNS + C1_END_TO_END(-0.03f), C1_SCANNER(-0.01f), C1_CHASE(0.01f), C1_HEARTBEAT_SLOW(0.03f), C1_HEARTBEAT_MEDIUM(0.05f), + C1_HEARTBEAT_FAST(0.07f), C1_BREATH_SLOW(0.09f), C1_BREATH_FAST(0.11f), C1_SHOT(0.13f), C1_STROBE(0.15f), + + // COLOR 2 PATTERNS + C2_END_TO_END(0.17f), C2_SCANNER(0.19f), C2_CHASE(0.21f), C2_HEARTBEAT_SLOW(0.23f), C2_HEARTBEAT_MEDIUM(0.25f), + C2_HEARTBEAT_FAST(0.27f), C2_BREATH_SLOW(0.29f), C2_BREATH_FAST(0.31f), C2_SHOT(0.33f), C2_STROBE(0.35f), + + // COLOR 1 AND 2 PATTERNS + C1C2_SPARKLE(0.37f), C2C1_SPARKLE(0.39f), C1C2_GRADIENT(0.41f), C1C2_BPM(0.43f), C1C2_BLEND(0.45f), C1C2_TWINKLES(0.51f), + C1C2_WAVES(0.53f), C1C2_SINELON(0.55f), + + // SOLID COLORS + SOLID_PINK_HOT(0.57f), SOLID_RED_DARK(0.59f), SOLID_RED(0.61f), SOLID_RED_ORANGE(0.63f), SOLID_ORANGE(0.65f), + SOLID_GOLD(0.67f), SOLID_YELLOW(0.69f), SOLID_GREEN_LAWN(0.71f), SOLID_GREEN_LIME(0.73f), SOLID_GREEN_DARK(0.75f), + SOLID_GREEN(0.77f), SOLID_BLUE_GREEN(0.79f), SOLID_BLUE_AQUA(0.81f), SOLID_BLUE_SKY(0.83f), SOLID_BLUE_DARK(0.85f), + SOLID_BLUE(0.87f), SOLID_BLUE_VIOLET(0.89f), SOLID_VIOLET(0.91f), SOLID_WHITE(0.93f), SOLID_GRAY(0.95f), + SOLID_GRAY_DARK(0.97f), SOLID_BLACK(0.99f); + + // GETTERS/SETTERS + private final float id; + LEDPatterns(float id) { this.id = id; } + public float getValue() { return id; } +} \ No newline at end of file diff --git a/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/LED.java b/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/LED.java index 9c03553..1a5745b 100644 --- a/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/LED.java +++ b/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/LED.java @@ -13,9 +13,10 @@ import org.usfirst.frc4388.robot.constants.LEDPatterns; import edu.wpi.first.wpilibj.Spark; import edu.wpi.first.wpilibj.command.Subsystem; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; /** - * Add your docs here. + * Controls the 5v LED Strip */ public class LED extends Subsystem { @@ -24,15 +25,18 @@ import edu.wpi.first.wpilibj.command.Subsystem; public static Spark LEDController = new Spark(LED_SPARK_ID); public LED(){ - setPattern(LEDPatterns.RED); + setPattern(LEDPatterns.C1_HEARTBEAT_FAST); + LEDController.set(currentLED); } public void periodic() { LEDController.set(currentLED); + SmartDashboard.putNumber("LED", currentLED); } public void setPattern(LEDPatterns pattern){ currentLED = pattern.getValue(); + LEDController.set(currentLED); } @Override