Deep sleep issues?

So I finally worked out all the other issues I have in my saber…illuminated switches light up…but now my saber won’t turn back on after about 15 minutes of non-usage…any thoughts?

When I pull the battery and put it back in, it works like normal. The power and aux buttons function normally. No other noticeable issues.

Post your config.

1 Like

Will it not turn on with “twist on,” or does it also ignore the power button until you remove the battery?

It’s the latter. It ignores the power button.

My config is below:

#ifdef CONFIG_TOP
#include "proffieboard_v3_config.h"
#define NUM_BLADES 3
#define NUM_BUTTONS 2
#define VOLUME 600
const unsigned int maxLedsPerStrip = 144;
#define CLASH_THRESHOLD_G 3.5
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#define COLOR_CHANGE_DIRECT
#define DISABLE_DIAGNOSTIC_COMMANDS
#define FETT263_TWIST_ON
#define FETT263_TWIST_OFF
#define SA22C_FORCE_PUSH
#define IDLE_OFF_TIME 60*5*1000
#endif

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

#ifdef CONFIG_PRESETS
Preset presets[] = {


	{"Font32_ZGotham", "tracks/ZGotham.wav",
/* copyright Fett263 AdamProject (Primary Blade) OS6 Style
https://fett263.com/fett263-proffieOS6-style-library.html#AdamProject
OS6.7 v4.021
Single Style
Base Style: The Adam Project Saber

Base Color: Rgb<255,255,0> (0)

--Effects Included--
Ignition Effect: SparkTip Ignition
Retraction Effect: SparkTip Retraction
Lockup Effect: Intensity Lockup V1, Begin Effect: Real Clash, End Effect: Full Blade Absorb
LightningBlock Effect: Responsive Lightning Block
Drag Effect: Intensity Sparking Drag
Melt Effect: Intensity Melt
Blast Effect: Blast Wave (Random)
Clash Effect: Real Clash V1
*/
	StylePtr<Layers<Mix<LayerFunctions<LinearSectionF<Int<2000>,Int<1800>>,LinearSectionF<Int<4500>,Int<1000>>,LinearSectionF<Int<6200>,Int<1000>>,LinearSectionF<Int<8500>,Int<1500>>,LinearSectionF<Int<12000>,Int<3200>>,LinearSectionF<Int<16000>,Int<2700>>,LinearSectionF<Int<19500>,Int<2300>>,LinearSectionF<Int<24000>,Int<4800>>,LinearSectionF<Int<28000>,Int<1500>>,LinearSectionF<Int<30000>,Int<1200>>,LinearSectionF<Int<32000>,Int<1500>>>,Black,HumpFlicker<RgbArg<BASE_COLOR_ARG,Rgb<255,255,0>>,Mix<Int<22000>,Black,RgbArg<BASE_COLOR_ARG,Rgb<255,255,0>>>,30>>,TransitionEffectL<TrWaveX<RgbArg<BLAST_COLOR_ARG,Rgb<191,255,255>>,Scale<EffectRandomF<EFFECT_BLAST>,Int<100>,Int<400>>,Int<100>,Scale<EffectPosition<EFFECT_BLAST>,Int<100>,Int<400>>,Scale<EffectPosition<EFFECT_BLAST>,Int<28000>,Int<8000>>>,EFFECT_BLAST>,Mix<IsLessThan<ClashImpactF<>,Int<26000>>,TransitionEffectL<TrConcat<TrInstant,AlphaL<RgbArg<CLASH_COLOR_ARG,Rgb<191,255,255>>,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<191,255,255>>,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>>,LockupTrL<TransitionEffect<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,Rgb<191,255,255>>,Int<200>>,StripesX<Int<1800>,Scale<NoisySoundLevel,Int<-3500>,Int<-5000>>,Mix<Int<6425>,Black,RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>>,RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>,Mix<Int<12850>,Black,RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>>>>,AlphaL<AudioFlicker<RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>,Mix<Int<10280>,Black,RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>>>,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>>>,TrJoin<TrDelay<8000>,TrInstant>,TrFade<3000>,EFFECT_LOCKUP_BEGIN>,TrConcat<TrJoin<TrDelay<50>,TrInstant>,Mix<IsLessThan<ClashImpactF<>,Int<26000>>,RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>,AlphaL<RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>,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>>>>>,TrFade<300>>,TrConcat<TrInstant,RgbArg<LOCKUP_COLOR_ARG,Rgb<191,255,255>>,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL<Strobe<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,AudioFlicker<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Blue>,50,1>,TrConcat<TrInstant,AlphaL<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<RgbArg<LB_COLOR_ARG,Rgb<255,255,255>>,Int<16000>>,30>,TrSmoothFade<600>>>,LockupTrL<AlphaL<RandomPerLEDFlickerL<RgbArg<DRAG_COLOR_ARG,Rgb<255,255,255>>>,SmoothStep<IntArg<DRAG_SIZE_ARG,28000>,Int<3000>>>,TrConcat<TrJoin<TrDelay<4000>,TrWipeIn<200>>,AlphaL<BrownNoiseFlickerL<RgbArg<DRAG_COLOR_ARG,Rgb<255,255,255>>,Int<300>>,SmoothStep<IntArg<DRAG_SIZE_ARG,28000>,Int<3000>>>,TrFade<4000>>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL<AlphaL<Remap<Scale<RampF,Int<65536>,Int<0>>,StaticFire<Mix<TwistAngle<>,RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>,RotateColorsX<Int<3000>,RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>>>,Mix<TwistAngle<>,RotateColorsX<Int<3000>,RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>>,RotateColorsX<Int<3000>,Mix<Int<12000>,Black,RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>>>>,0,3,5,3000,10>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<4000>>>,TrConcat<TrWipeIn<100>,AlphaL<RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<4000>>>,TrJoin<TrDelay<4000>,TrFade<300>>,AlphaL<Mix<TwistAngle<>,RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>,RotateColorsX<Int<3000>,RgbArg<STAB_COLOR_ARG,Rgb<255,24,0>>>>,SmoothStep<IntArg<MELT_SIZE_ARG,28000>,Int<4000>>>,TrFade<4000>>,TrWipe<200>,SaberBase::LOCKUP_MELT>,InOutTrL<TrWipeSparkTipX<RgbArg<IGNITION_COLOR_ARG,Rgb<255,255,255>>,IgnitionTime<300>>,TrWipeInSparkTipX<RgbArg<RETRACTION_COLOR_ARG,Rgb<255,255,255>>,RetractionTime<0>>,Black>>>()},
};

BladeConfig blades[] = { 0, SimpleBladePtr<CreeXPE2RedTemplate<1000>, CreeXPE2GreenTemplate<0>, CreeXPE2BlueTemplate<240>, NoLED, bladePowerPin1, bladePowerPin2, bladePowerPin3, -1>(),
    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

It’s not relevant to your current issue, but why are you mixing SA22C and FETT263 defines? Defines that aren’t used by the current selected prop don’t do anything…

That was me not clearing out all the old SA22C code when I switched over to FETT263.

There’s nothing in your config that should prevent the power button from working, what ProffieOS version are you on?

I am using version 6.9

How is the power button wired?


It is wired in configuration 1 with the left wire as the switch on/off, the top as the led and the bottom as the gnd.

This doesn’t actually show where the wires go on the proffieboard though.

Using the cardinal directions as a frame of reference, the west (left) wire is connected to BTN2 and BTN1 for Buttons 2 and 1, respectively; the North/East (top/right) are connected to Free2 and Free3 on Buttons 2 and 1, respectively; and the South (bottom) on both are connected to the GND spot.

I think the “east” pin is supposed to be connected to GND, not Free1/2.
(This assumes North/South are the LED pins and East/West are the switch pins.)

I tried that on my last build and the switches function but don’t illuminate.

Illumination and switches are completely different circuits, they should not affect each other.
If the “east” pin is a part of the switch circuit (as I assumed in my last post) than changing what it is connected to cannot affect the illumination, only the switch function.

Note that the “north” pin should still be connected to Free1/2.
North and east should not be connected to each other.

This wiring diagram came from Amazon, didn’t it? It glosses over details. That diagram tells you how to accomplish specific things with the switch, not how the switch itself works. Even better, the tasks that diagram accomplishes are not relevant to lightsabers.

As profezzorn said, the LED is on one pair of pins, the switch on the other. So, if you connect all 4 pins to unique places, you can control the LED fully independently of whether the switch is pressed or not.

How to get the switch to illuminate is a different question, but the first step is to make sure your saber is wired as per the relevant configurator for you. For v3 boards, you want this page . For v2 boards, you want to scroll down through this page . After that checks out, you can troubleshoot software.