Illuminated Switch issue

Hi guys,

I got my board all soldered up and everything works except the 2 illuminated switches don’t light up.

They function just no lights.

These are the switches:


TCSS lists these resistors as compatible:

However I used these from Amazon:

Resistors are on the power leads going to Free 1 and 2.
Grounds are bridged on the switches and run to batt negative.
4th switch prong runs to button 1 and 2.

All this as shown from config generator:

Here is my config:


// ProffieOS7 Config File
#ifdef CONFIG_TOP
#include "proffieboard_v3_config.h"
#define NUM_BLADES 5
#define NUM_BUTTONS 2
const unsigned int maxLedsPerStrip = 144;
#define VOLUME 1000
#define BOOT_VOLUME 80
#define CLASH_THRESHOLD_G 3
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#define KILL_OLD_PLAYERS
#define FILTER_CUTOFF_FREQUENCY 100
#define FILTER_ORDER 8
#define MOTION_TIMEOUT 60 * 15 * 1000
#define IDLE_OFF_TIME 60 * 15 * 1000
#define DISABLE_BASIC_PARSER_STYLES
#define DISABLE_DIAGNOSTIC_COMMANDS
#define ENABLE_ALL_EDIT_OPTIONS
#define SAVE_PRESET
#define NO_REPEAT_RANDOM
#define COLOR_CHANGE_DIRECT
#define FETT263_EDIT_MODE_MENU
#define FETT263_DUAL_MODE_SOUND
#define FETT263_CLASH_STRENGTH_SOUND
#define FETT263_MAX_CLASH 10
#define FETT263_SAY_COLOR_LIST
#define FETT263_SAY_COLOR_LIST_CC
#define FETT263_SAY_BATTERY_PERCENT
#define FETT263_HOLD_BUTTON_OFF
#define FETT263_HOLD_BUTTON_LOCKUP
#define FETT263_LOCKUP_DELAY 200
#define FETT263_BM_CLASH_DETECT 6
#endif

#ifdef CONFIG_PROP
#include "../props/saber_fett263_buttons.h"
#endif


#ifdef CONFIG_PRESETS

Preset presets[] = {
{ "Protostar",  "common/tracks/venus.wav",
//{ Protostar;common, common/tracks/venus.wav,
	StylePtr<Layers<

  //Base Fett263 Dark Orange Audioflicker
  AudioFlicker<RotateColorsX<Variation,DarkOrange>,RotateColorsX<Variation,Rgb<128,34,0>>>,
  
  //Unstable Orange-Red Audioflicker Swing Effect
  AlphaL<AudioFlicker<BrownNoiseFlicker<RotateColorsX<Variation,OrangeRed>,Black,300>,RotateColorsX<Variation,Orange>>,SwingSpeed<285>>,
  
  //Fett263 Bright Ripple Hard Swing
  AlphaL<Stripes<2000,-3250,RotateColorsX<Variation,Orange>,RotateColorsX<Variation,Rgb<60,36,0>>,Pulsing<RotateColorsX<Variation,Rgb<30,17,0>>,Black,800>>,Scale<IsLessThan<SwingSpeed<675>,Int<13600>>,Scale<SwingSpeed<675>,Int<-19300>,Int<32768>>,Int<0>>>,
  
  //Fett263 Bright Sparking Emitter Flare
  AlphaL<RotateColorsX<Variation,Rgb16<65535,52226,0>>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1500>,Int<4500>>,Int<-6000>>>,
  
  //Fett263 Responsive Intensity Lockup
  LockupTrL<AlphaMixL<Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>,BrownNoiseFlickerL<RgbArg<LOCKUP_COLOR_ARG,White>,Int<200>>,StripesX<Int<1800>,Scale<NoisySoundLevel,Int<-3500>,Int<-5000>>,Mix<Int<6425>,Black,RgbArg<LOCKUP_COLOR_ARG,White>>,RgbArg<LOCKUP_COLOR_ARG,White>,Mix<Int<12850>,Black,RgbArg<LOCKUP_COLOR_ARG,White>>>>,
  TrConcat<TrExtend<50,TrInstant>,Mix<IsLessThan<ClashImpactF<>,Int<26000>>,RgbArg<LOCKUP_COLOR_ARG,White>,AlphaL<RgbArg<LOCKUP_COLOR_ARG,White>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Scale<ClashImpactF<>,Int<20000>,Int<60000>>>>>,TrExtend<3000,TrFade<300>>,AlphaL<AudioFlicker<RgbArg<LOCKUP_COLOR_ARG,White>,Mix<Int<10280>,Black,RgbArg<LOCKUP_COLOR_ARG,White>>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Int<13000>>>,TrFade<3000>>,
  TrConcat<TrInstant,RgbArg<LOCKUP_COLOR_ARG,White>,TrFade<1950>>,SaberBase::LOCKUP_NORMAL>,
  
  //Fett263 Responsive Lightning Block
  ResponsiveLightningBlockL<Strobe<RgbArg<LB_COLOR_ARG,White>,AudioFlicker<RgbArg<LB_COLOR_ARG,White>,Blue>,50,1>,TrConcat<TrInstant,AlphaL<RgbArg<LB_COLOR_ARG,White>,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<RgbArg<LB_COLOR_ARG,White>,Int<16000>>,30>,TrSmoothFade<600>>>,
  
  //Responsive Stab
  ResponsiveStabL<AudioFlickerL<RgbArg<STAB_COLOR_ARG,Yellow>>,TrWipeInX<Percentage<WavLen<EFFECT_STAB>,50>>,TrFadeX<Percentage<WavLen<EFFECT_STAB>,50>>>,
  
  //Fett263 Multi-blast, blaster reflect cycles through different responsive effects
  EffectSequence<EFFECT_BLAST,ResponsiveBlastL<RgbArg<BLAST_COLOR_ARG,White>,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<RgbArg<BLAST_COLOR_ARG,White>,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<RgbArg<BLAST_COLOR_ARG,White>,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<RgbArg<BLAST_COLOR_ARG,White>,200,200>,ResponsiveBlastFadeL<RgbArg<BLAST_COLOR_ARG,White>,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<RgbArg<BLAST_COLOR_ARG,White>,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  
  //Fett263 Real Clash
  Mix<IsLessThan<ClashImpactF<>,Int<26000>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<CLASH_COLOR_ARG,Rgb<255,187,108>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>,Scale<ClashImpactF<>,Int<12000>,Int<60000>>>>,TrFadeX<Scale<ClashImpactF<>,Int<200>,Int<400>>>>,EFFECT_CLASH>,TransitionEffectL<TrWaveX<RgbArg<CLASH_COLOR_ARG,Rgb<255,187,108>>,Scale<ClashImpactF<>,Int<100>,Int<400>>,Int<100>,Scale<ClashImpactF<>,Int<100>,Int<400>>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-12000>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<10000>>>,Sum<IntArg<LOCKUP_POSITION_ARG,16000>,Int<-10000>>>>,EFFECT_CLASH>>,
  
  //Fett263 White Unstable Ignition Effect
  TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-2500,White,RandomPerLEDFlicker<Rgb<60,60,60>,Black>,BrownNoiseFlicker<White,Rgb<30,30,30>,200>,RandomPerLEDFlicker<Rgb<80,80,80>,Rgb<30,30,30>>>,TrFade<2400>>,EFFECT_IGNITION>,
  
  //Bright Retraction Effect
  TransitionEffectL<TrConcat<TrFadeX<WavLen<EFFECT_RETRACTION>>,AudioFlickerL<RotateColorsX<Variation,Rgb16<65535,52226,0>>>,TrInstant>,EFFECT_RETRACTION>,

  //Fett263 Intensity Drag
  LockupTrL<AlphaL<RandomPerLEDFlickerL<RgbArg<DRAG_COLOR_ARG,White>>,SmoothStep<IntArg<DRAG_SIZE_ARG,27500>,Int<5000>>>,TrConcat<TrExtend<4000,TrWipeIn<200>>,AlphaL<BrownNoiseFlickerL<RgbArg<DRAG_COLOR_ARG,White>,Int<300>>,SmoothStep<IntArg<DRAG_SIZE_ARG,29250>,Int<5000>>>,TrFade<4000>>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  
  //Fett263 Responsive Intensity Melt
  LockupTrL<AlphaL<Remap<Scale<RampF,Int<65536>,Int<0>>,StaticFire<Mix<TwistAngle<>,OrangeRed,DarkOrange>,Mix<TwistAngle<>,OrangeRed,Orange>,0,3,5,3000,10>>,SmoothStep<IntArg<MELT_SIZE_ARG,26000>,Int<6000>>>,TrConcat<TrWipeIn<100>,AlphaL<Red,SmoothStep<Int<29000>,Int<8000>>>,TrExtend<2000,TrFade<300>>,AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<29000>,Int<8000>>>,TrFade<3000>>,TrFade<250>,SaberBase::LOCKUP_MELT>,
  
  //Fett263 Power Save, if using his prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,

  //Fett263 Dual Mode White Spark Tip Ignition and Retraction - Hold above horizontal for fast ignition or below horizontal for slow ignition.
  InOutTrL<TrJoin<TrWipeX<Scale<IsLessThan<BladeAngle<>,Int<16000>>,Percentage<WavLen<EFFECT_IGNITION>,5>,Percentage<WavLen<EFFECT_IGNITION>,50>>>,TrWaveX<White,Scale<IsLessThan<BladeAngle<>,Int<16000>>,Percentage<WavLen<EFFECT_IGNITION>,15>,Percentage<WavLen<EFFECT_IGNITION>,75>>,Int<400>,Scale<IsLessThan<BladeAngle<>,Int<16000>>,Percentage<WavLen<EFFECT_IGNITION>,5>,Percentage<WavLen<EFFECT_IGNITION>,50>>,Int<0>>>,TrJoin<TrWipeInX<WavLen<EFFECT_RETRACTION>>,TrWaveX<White,Percentage<WavLen<EFFECT_RETRACTION>,200>,Int<400>,WavLen<EFFECT_RETRACTION>,Int<32768>>>>,
  
  //Fett263 optional/alternate Passive Battery Monitor: on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  
  //Fett263 On-Demand Battery Level: if using Fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,
  
  //Audio responsive charge-up preon effect
  TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<Trigger<EFFECT_PREON,Percentage<WavLen<EFFECT_PREON>,33>,Percentage<WavLen<EFFECT_PREON>,34>,Percentage<WavLen<EFFECT_PREON>,33>>,StyleFire<Gradient<RotateColorsX<Variation,Rgb16<65535,11439,0>>,RotateColorsX<Variation,Orange>,RotateColorsX<Variation,DarkOrange>,RotateColorsX<Variation,Rgb16<65535,52226,0>>>,RotateColorsX<Variation,Rgb<60,30,0>>,0,1,FireConfig<0,2000,5>,FireConfig<0,2000,5>,FireConfig<0,2000,5>,FireConfig<0,2000,5>>,RandomPerLEDFlicker<RotateColorsX<Variation,Orange>,RotateColorsX<Variation,Rgb16<14386,7000,0>>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Orange>,100>>,SmoothStep<Scale<NoisySoundLevel,Int<-1000>,Int<25000>>,Int<-4000>>>,TrDelayX<WavLen<EFFECT_PREON>>>,EFFECT_PREON>,
  
  //Ripple-Out Preon Effect
  TransitionEffectL<TrConcat<TrDelayX<Percentage<WavLen<EFFECT_PREON>,65>>,TransitionLoopL<TrWaveX<RotateColorsX<Variation,Rgb16<65535,52226,0>>,Int<115>,Int<375>,Int<250>,Int<0>>>,TrDelayX<Percentage<WavLen<EFFECT_PREON>,35>>>,EFFECT_PREON>>>(),},

{ "Mercenary" ,"",
StylePtr<Layers<StyleFire<StripesX<Int<3000>,Scale<SlowNoise<Int<2000>>,Int<-1000>,Int<-5000>>,BrownNoiseFlicker<RotateColorsX<Variation,Red>,Black,100>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,RotateColorsX<Variation,Rgb<10,0,0>>>,RotateColorsX<Variation,Rgb<255,25,25>>,RotateColorsX<Variation,Rgb<128,0,0>>>,RotateColorsX<Variation,Rgb<80,0,0>>,0,5,FireConfig<3,3000,0>,FireConfig<3,3000,0>,FireConfig<3,3000,0>,FireConfig<3,3000,0>>,LockupTrL<Layers<AlphaL<AudioFlickerL<White>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,AlphaL<White,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,White,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveStabL<Orange,TrWipeIn<600>,TrWipe<600>>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL<White,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<255,150,150>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<255,150,150>>,RotateColorsX<Variation,Rgb<60,0,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>>,TrFade<1200>>,EFFECT_IGNITION>,TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<RotateColorsX<Variation,Rgb<255,150,150>>,40>,TrFade<1200>>,EFFECT_RETRACTION>,LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Mix<TwistAngle<>,Rgb<255,200,0>,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL<TrConcat<TrWipe<200>,StyleFire<StripesX<Int<3000>,Scale<SlowNoise<Int<2000>>,Int<-1000>,Int<-5000>>,BrownNoiseFlicker<RotateColorsX<Variation,Red>,Black,100>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,RotateColorsX<Variation,Rgb<10,0,0>>>,RotateColorsX<Variation,Rgb<255,25,25>>,RotateColorsX<Variation,Rgb<128,0,0>>>,RotateColorsX<Variation,Rgb<80,0,0>>,0,5,FireConfig<3,3000,0>,FireConfig<3,3000,0>,FireConfig<3,3000,0>,FireConfig<3,3000,0>>,TrWipe<100>,Black,TrBoing<300,3>>,TrConcat<TrFade<2000>,DarkOrange,TrFade<2000>,Red,TrFade<2000>>,Black>,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,Bump<Int<0>,Int<10000>>>,TrFade<3000>,AlphaL<Orange,Bump<Int<0>,Int<8000>>>,TrFade<3000>,AlphaL<Red,Bump<Int<0>,Int<6000>>>,TrFade<2000>>,EFFECT_RETRACTION>,TransitionEffectL<TrConcat<TrInstant,AlphaL<BrownNoiseFlickerL<RotateColorsX<Variation,Red>,Int<30>>,SmoothStep<Scale<SlowNoise<Int<2000>>,Int<1000>,Int<4000>>,Int<-4000>>>,TrDelay<8000>>,EFFECT_PREON>>>()},

};

BladeConfig blades[] = {
 { 0, WS281XBladePtr<117, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(),
    SubBladeWithStride(0, 15, 2, WS281XBladePtr<16, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >()),
    SubBladeWithStride(1, 15, 2, NULL),
    SimpleBladePtr<CreeXPE2WhiteTemplate<550>, NoLED, NoLED, NoLED, blade5Pin, -1, -1, -1>(),
    SimpleBladePtr<CreeXPE2WhiteTemplate<550>, NoLED, NoLED, NoLED, blade6Pin, -1, -1, -1>()
  , CONFIGARRAY(presets) },
};
#endif

#ifdef CONFIG_BUTTONS
Button PowerButton(BUTTON_POWER, powerButtonPin, "pow");
Button AuxButton(BUTTON_AUX, auxPin, "aux");
#endif

I am not sure if it’s a config issue or the resistors or my wiring.

Thanks for checking it out!

Dynaohm 4006 require 5v min of current to work. If this is not the issue, the orientation of this resistor is also important (from board in the in+ side , out to led)
The config seems ok since it was made with the configurator.
I would try to put the right resistors in 1/8W or 1/4W format instead of using these dynaohm.
I don’t know the current coming from the free pads (3.3v or 5v)

A nquick test to see if your setup is good, put your switch led positive on the 5v pad. the switch should illuminate when the board is on.

Thanks for helping!

I do have the resistor orientation as you listed; in from the board and out leading to the switch.

Maybe the Prof will weigh in and enlighten us on the Free pads output.

Do you have a link to resistors that would work with 3v if needed?

The Free1/2/3 provide 3.3v. Since the voltage never changes, there is no need for a “dynamic” solution, like dynaohm. Also, dynaohm, doesn’t work well unless you have 2.5 volts of headroom, which we don’t have here.

The resistors you need would be easy to calculate exactly if we knew what voltage the LEDs wants. If the LED is red, it probably wants ~2.1 volts, but let’s use 2.0 in our calculation to be safe:

\frac{V_{in} - V_{led}}{I_{led}} = \frac{3.3 - 2.0}{0.02} = 65 \Omega

So a 65 ohm resistor (or higher) should be safe to use at least. If you can find the actual forward voltage of the LED, we can calculate a better/closer value.

1 Like

Thanks for the knowledge Prof!

You think 1/4W 68ohm from this pack will work?

BOJACK 1000 Pcs 25 Values Resistor Kit 1 Ohm-1M Ohm with 5% 1/4W Carbon Film Resistors Assortment https://a.co/d/eFxCwTW

Why not just power the switch LEDs right off the battery (+) ?

Yes, the 68 ohm resistor from that pack will work.

Thanks Prof! Should have them tomorrow and
will install and test!

Got the resistors and used the 68ohm 1/4w and still switches not lighting up.

I didn’t think they were but I tried the resistors both ways in case these were directional.

Even tried direct power to the + on the switch and still no light.

My understanding was the resistors are just there to keep the Led from draining the battery and it should light up with just power and ground.

Please correct me if I’m wrong.

No, just turning the LED off does that.
The resistor is meant to protect the LED from getting too much volts/current and burning out.
It’s also supposed to protect the CPU from a LED that draws too much power, which can potentially harm the CPU.

Do you have a style that lights up the LED?
Do you have 3.3v between the red and the black wire?
Have you tried using the “DIODE TEST” mode on your multimeter to see if the LED in the button is still working?

PS: Resistors are not directional.

We have light!

It was my Proffie coding ignorance.

I didn’t know I had to add styles for each switch.

Thanks again Prof!