#ifdef CONFIG_TOP #include "proffieboard_v2_config.h" #define NUM_BLADES 3 #define NUM_BUTTONS 2 #define VOLUME 1200 const unsigned int maxLedsPerStrip = 128; #define CLASH_THRESHOLD_G 1.8 #define ENABLE_AUDIO #define ENABLE_MOTION #define ENABLE_WS2811 #define ENABLE_SD #define ENABLE_SERIAL #define DISABLE_DIAGNOSTIC_COMMANDS #define ORIENTATION ORIENTATION_USB_TOWARDS_BLADE #define FETT263_MULTI_PHASE #define FETT263_TWIST_ON_NO_BM #define FETT263_TWIST_ON #define FETT263_TWIST_OFF #define FETT263_STAB_ON_NO_BM #define FETT263_STAB_ON #define FETT263_SWING_ON_SPEED 500 #define FETT263_SWING_ON_NO_BM #define FETT263_SWING_ON #define FETT263_SWING_OFF #define MOTION_TIMEOUT 60 * 3 * 1000 #define FETT263_THRUST_ON #define FETT263_THRUST_OFF #define FETT263_DISABLE_COPY_PRESET #define ENABLE_SSD1306 // Max 20 characters #define BLE_PASSWORD "your password" // Max 32 characters. #define BLE_NAME "Your Saber Name" // Max 9 characters #define BLE_SHORTNAME "Saber" #define MOTION_TIMEOUT 60 * 3 * 800 #endif #ifdef CONFIG_PROP #include "../props/saber_fett263_buttons.h" #endif #ifdef CONFIG_PRESETS // Fire speed, valid values are 1 - 10 #define FIRE1_SPEED 2 // How long to wait before firing up crossguards. #define FIRE1_DELAY 800 // Each of these have three values: A, B, C // A = non-random intensity // B = random intensity // C = cooling // The first two control temperature, and as we add // A + rnd(B) to the base of the blade each animation frame. // The second controls how rapidly the fire cools down // This is used during normal operation. #define FIRE1_NORMAL 0, 1000, 2 // This is used when a clash occurs #define FIRE1_CLASH 3000, 0, 0 // This is used during lockup. #define FIRE1_LOCKUP 0, 5000, 10 // Helper #define FIRE1PTR(NUM, DELAY) \ StyleFirePtr() Preset presets[] = { { "CalKestis;MC", "tracks/CalKestis.wav", StylePtr,Pulsing>,RotateColorsX,800>,RotateColorsX>,TransitionEffectL,RandomFlicker,RotateColorsX>>,TrDelay<30000>,RotateColorsX,TrFade<800>>,EFFECT_FORCE>,AlphaL,Int<1>>,Scale,Int<13600>>,Scale,Int<-19300>,Int<32768>>,Int<0>>>,LockupTrL,Bump,Scale,Int<10000>,Int<30000>>,Int<10000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,SimpleClashL,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(), StylePtr,Pulsing>,RotateColorsX,800>,RotateColorsX>,TransitionEffectL,RandomFlicker,RotateColorsX>>,TrDelay<30000>,RotateColorsX,TrFade<800>>,EFFECT_FORCE>,AlphaL,Int<1>>,Scale,Int<13600>>,Scale,Int<-19300>,Int<32768>>,Int<0>>>,LockupTrL,Bump,Scale,Int<10000>,Int<30000>>,Int<10000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,SimpleClashL,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(), StylePtr,Pulsing>,RotateColorsX,800>,RotateColorsX>,TransitionEffectL,RandomFlicker,RotateColorsX>>,TrDelay<30000>,RotateColorsX,TrFade<800>>,EFFECT_FORCE>,AlphaL,Int<1>>,Scale,Int<13600>>,Scale,Int<-19300>,Int<32768>>,Int<0>>>,LockupTrL,Bump,Scale,Int<10000>,Int<30000>>,Int<10000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,SimpleClashL,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(), "0"}, }; BladeConfig blades[] = { { 0, WS281XBladePtr<128, bladePin, Color8::GRB, PowerPINS >(), WS281XBladePtr<26, blade2Pin, Color8::GRB, PowerPINS >(), WS281XBladePtr<26, blade3Pin, Color8::GRB, PowerPINS >() , CONFIGARRAY(presets) }, }; #endif #ifdef CONFIG_BUTTONS Button PowerButton(BUTTON_AUX, powerButtonPin, "pow"); Button AuxButton(BUTTON_POWER, auxPin, "aux"); #endif