Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //BC_DarkShadow_6.x// ProffieOS version 6.x - BC manual update - Native WavLen!
- // Use 1 button config?
- #ifdef CONFIG_TOP
- #include "proffieboard_v3_config.h"
- #define NUM_BLADES 5
- #define NUM_BUTTONS 1
- #define VOLUME 500
- const unsigned int maxLedsPerStrip = 144;
- #define EXTRA_COLOR_BUFFER_SPACE 30 // New define that can speed up processing a bit. Basically, it can calculate the colors for the next blade (or the next frame for the same blade) even though it's not done feeding out the data for the data in the color buffer yet.
- #define CLASH_THRESHOLD_G 3.5
- #define ENABLE_AUDIO
- #define ENABLE_MOTION
- #define ENABLE_WS2811
- #define ENABLE_SD
- #define ENABLE_SERIAL // Bluetooth
- // #define ENABLE_SSD1306 //OLED
- #define SHARED_POWER_PINS
- #define SAVE_STATE
- // #define SAVE_VOLUME
- // #define SAVE_PRESET
- // #define SAVE_COLOR_CHANGE
- // #define SAVE_DYNAMIC_DIMMING
- // #define KEEP_SAVEFILES_WHEN_PROGRAMMING // upload overwrites presets.ini/tmp unless this is defined
- #define BLADE_DETECT_PIN blade4Pin
- // #define ENABLE_POWER_FOR_ID PowerPINS<bladePowerPin2, bladePowerPin3>
- // #define BLADE_ID_CLASS ExternalPullupBladeID<bladeIdentifyPin, 33000>
- #define BLADE_ID_CLASS SnapshotBladeID<bladeIdentifyPin> // This will make it use the speed-of-charging-a-capacitor method of blade ID which sometimes works without resistors
- // #define SPEAK_BLADE_ID
- // #define ENABLE_I2S_OUT
- // #define ENABLE_SPDIF_OUT
- // #define LINE_OUT_VOLUME 2000 // SPDIF out
- #define ENABLE_DEVELOPER_COMMANDS
- //#define DISABLE_DIAGNOSTIC_COMMANDS
- #define IDLE_OFF_TIME 60 * 5 * 1000
- #define MOTION_TIMEOUT 60 * 5 * 1000
- // #define ORIENTATION ORIENTATION_FETS_TOWARDS_BLADE
- // #define ORIENTATION ORIENTATION_USB_TOWARDS_BLADE
- // #define ORIENTATION ORIENTATION_TOP_TOWARDS_BLADE
- // #define ORIENTATION ORIENTATION_BOTTOM_TOWARDS_BLADE
- // #define ORIENTATION ORIENTATION_SDA_TOWARDS_BLADE
- // #define ORIENTATION ORIENTATION_SERIAL_TOWARDS_BLADE
- // #define ORIENTATION_ROTATION 0,-20,0
- //changes the angle required to register twists on curved hilts
- //example is for assaj ventress curved hit install
- // #define CONFIG_STARTUP_DELAY 15000 // BC now canon
- // #define OLED_FLIP_180 // BC now canon
- // #define USE_AUREBESH_FONT // BC now canon
- #define FEMALE_TALKIE_VOICE // BC now canon
- #define VOLUME_MENU_CYCLE // BC now canon
- #define NO_REPEAT_RANDOM // BC now canon
- // ------- Gesture stuff -------
- // #define BC_SWING_ON // Motion time out causing false ignitions on preset switch. This is annoying but possibly resolved with I2C updates.
- // #define BC_STAB_ON
- #define BC_THRUST_ON
- #define BC_TWIST_ON
- #define BC_TWIST_OFF
- // #define BC_FORCE_PUSH
- // #define BC_FORCE_PUSH_LENGTH 5
- #define ENABLE_SPINS
- // #define GESTURE_AUTO_BATTLE_MODE
- #define BC_LOCKUP_DELAY 200
- // ------- Custom / Experimental / Alpha-Beta stuff ---------
- #define ENABLE_AUTO_SWING_BLAST // BC Multiblast continues as long as swinging within 1 second.
- #define LOW_BATT_WARNINGS_TIERED
- #define DISABLE_BASIC_PARSER_STYLES // Standard, Advanced, etc...
- #define USE_WAVS_FOR_TALKIE // BC Personal only because delay() is not great
- #define PREONS_MATCH_BLADE_EFFECTS
- #define PREONS_MATCH_OUTS
- #define PSTOFFS_MATCH_INS
- #define NO_BLADE_NO_GEST_ONOFF // If using blade detect, No Blade = No Gesture ignitions or retractions
- #define AUTO_HUMSTART // 200ms delay from on.wav beginning all the time. **Requires modified hybrid_font.h file.
- #define ENABLE_AUTO_SPINS_BLAST // Same as auto-multi-blast but for spins. 2 second window. **Required modified prop_base.h
- // #define LOW_BATT_ONCE // **Requires modified hybrid_font.h file.
- // #define FILTER_CUTOFF_FREQUENCY 100
- // #define FILTER_ORDER 8
- // #define ENABLE_GESTURE_MENU // PSISTORM prop - cool stuff! the TrySound else beep void.
- #define ENABLE_ALL_EDIT_OPTIONS // Fett263 OS 6
- // #define DYNAMIC_BLADE_LENGTH
- // #define DYNAMIC_BLADE_DIMMING
- // #define DYNAMIC_CLASH_THRESHOLD
- // #define SAVE_VOLUME
- // #define SAVE_BLADE_DIMMING
- // #define SAVE_CLASH_THRESHOLD
- // #define SAVE_COLOR_CHANGE
- #endif
- #ifdef CONFIG_PROP
- #include "../props/saber_BC_buttons_personal.h" // Lately, preferring #define NUM_BUTTONS 1
- #endif
- // #ifdef CONFIG_PROP
- // #include "../props/saber_fett263_buttons.h"
- // #endif
- #ifdef CONFIG_PRESETS
- #include "aliases/TrueWhites/BC_effects_1.h"
- #include "aliases/TrueWhites/BC_effects_2.h"
- #include "aliases/TrueWhites/BC_effects_Red.h"
- #include "aliases/TrueWhites/BC_effects_White.h"
- Preset CTAbladein [] = {
- { "a_DARKSABER/DarkV3;common", "a_DARKSABER/DarkV3/tracks/Mandalorian.wav",
- StylePtr<Layers<
- Mix<SwingSpeed<400>,RotateColorsX<Variation,Rgb<80,100,150>>,RotateColorsX<Variation,Rgb<130,150,225>>>,
- BrownNoiseFlickerL<Stripes<5000,-300,RotateColorsX<Variation,Rgb<15,25,55>>,RotateColorsX<Variation,Rgb<60,75,120>>,RotateColorsX<Variation,Rgb<0,10,20>>,RotateColorsX<Variation,Rgb<40,50,75>>>,Int<38400>>,
- AudioFlickerL<RotateColorsX<Variation,Rgb<25,35,75>>>,
- AlphaL<RotateColorsX<Variation,Rgb<155,175,225>>,SwingSpeed<600>>,
- BC_effects_1,
- InOutTrL<TrWipe<300>,TrWipeInX<WavLen<EFFECT_RETRACTION>>>,
- // On-Demand Battery Level
- AlphaL<TransitionEffectL<TrConcat<TrSmoothFade<500>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<Scale<BatteryLevel,Int<0>,Int<35000>>,Int<-1>>>,TrDelay<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<BatteryLevel,Int<-1>>>,TrSmoothFade<1000>>,EFFECT_BATTERY_LEVEL>,Ifon<Int<0>,Int<32768>>>
- >>(),
- // HiltPCB
- StylePtr<Black>(),
- // Switches
- StylePtr<Layers<
- Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,200>,
- //InOutTrL<TrInstant,TrInstant,Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,2500>>>>(),
- InOutTrL<TrInstant,TrInstant,ColorSequence<500,Red,Green,Blue,Black>>>>(),
- // Pommel
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Bluetooth
- StylePtr<Blue>(),
- " dark\n v3"},
- { "testfont2a", "testfont2a/tracks/track3.wav",
- StylePtr<Layers<
- AudioFlicker<RotateColorsX<Variation,Rgb<0,149,255>>,RotateColorsX<Variation,Rgb<0,85,200>>>,
- BC_effects_1,
- InOutTrL<
- TrConcat<TrInstant,Layers<
- TransitionEffectL<TrConcat<TrInstant,Black,TrDelay<1950>>,EFFECT_IGNITION>,
- AlphaL<AudioFlicker<RotateColorsX<Variation,Rgb<0,149,255>>,RotateColorsX<Variation,Rgb<0,85,200>>>,
- SmoothStep<Scale<Trigger<EFFECT_IGNITION,Scale<Trigger<EFFECT_IGNITION,Int<2000>,Int<1>,Int<1>>,Int<300>,Int<2000>>,Int<1>,Int<1>>,Int<-1200>,Int<35000>>,Int<-3000>>>>,TrDelay<5000>>,
- TrConcat<TrInstant,Layers<
- TransitionEffectL<TrConcat<TrInstant,Black,TrDelay<2000>>,EFFECT_RETRACTION>,
- AlphaL<AudioFlicker<RotateColorsX<Variation,Rgb<0,149,255>>,RotateColorsX<Variation,Rgb<0,85,200>>>,
- SmoothStep<Scale<Trigger<EFFECT_RETRACTION,Scale<Trigger<EFFECT_RETRACTION,Int<1000>,Int<1000>,Int<1>>,Int<3000>,Int<10>>,Int<1000>,Int<500>>,Int<35000>,Int<-1200>>,Int<-3000>>>>,TrDelay<1000>>>,
- // TransitionEffectL<TrConcat<TrFade<500>,SparkleL<Blue,200,100>,TrDelayX<WavLen<EFFECT_PREON>>>,EFFECT_PREON>,
- // TransitionEffectL<TrConcat<TrFade<500>,Red,TrDelayX<WavLen<EFFECT_PREON>>>,EFFECT_PREON1>,
- // TransitionEffectL<TrConcat<TrFade<500>,Green,TrDelayX<WavLen<EFFECT_PREON>>>,EFFECT_PREON2>,
- // TransitionEffectL<TrConcat<TrFade<500>,Blue,TrDelayX<WavLen<EFFECT_PREON>>>,EFFECT_PREON3>,
- //TransitionEffectL<TrConcat<TrInstant,SparkleL<Blue,200,100>,TrFadeX<WavLen<EFFECT_RETRACTION>>>,EFFECT_RETRACTION>,
- AlphaL<TransitionEffectL<TrConcat<TrSmoothFade<500>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<Scale<BatteryLevel,Int<0>,Int<35000>>,Int<-1>>>,TrDelay<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<BatteryLevel,Int<-1>>>,TrSmoothFade<1000>>,EFFECT_BATTERY_LEVEL>,Ifon<Int<0>,Int<32768>>>
- >>(),
- // HiltPCB
- StylePtr<Black>(),
- // Switches
- StylePtr<Layers<
- Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,2500>>>>(),
- // Pommel
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Bluetooth
- StylePtr<Blue>(),
- "accel-in-out\ntest1"},
- { "Wavlen", "",
- StylePtr<Layers<
- Red,
- TransitionEffectL<TrConcat< TrFadeX< Percentage<WavLen<>,33> >, StyleFire<Blue,Cyan>, TrInstant, Cyan, TrDelayX< Percentage<WavLen<>,33> >, Green, TrWipeX< Percentage<WavLen<>,33> > >,EFFECT_FORCE>,
- InOutTrL<TrWipe<300>,TrWipeInX<WavLen<EFFECT_RETRACTION>>>,
- TransitionEffectL<TrConcat<TrInstant,Layers<White,AlphaL<Black,SmoothStep<Trigger<EFFECT_PREON,Int<700>,Int<10>,Int<1>>,Int<1>>>>,TrDelayX<Int<700>>>,EFFECT_PREON>
- >>(),
- // HiltPCB
- StylePtr<Black>(),
- // Switches
- StylePtr<Layers<
- Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,2500>>>>(),
- // Pommel
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Bluetooth
- StylePtr<Blue>(),
- "wavlen\ntest11"},
- { "a_BANE/RuleOfTwo;common", "a_BANE/tracks/track3.wav", // Testing IceForce monosfx
- StylePtr<Layers<
- AudioFlicker<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,500>,RotateColorsX<Variation,Rgb<128,0,0>>>,
- TransitionEffectL<TrConcat<TrFade<7000>,Rgb<0,0,75>,TrDelay<1000>>,EFFECT_USER2>,
- TransitionEffectL<TrConcat<TrWipe<8000>,TransitionEffect<Stripes<10000,-1000,Rgb<50,75,165>,Rgb<25,37,82>,Rgb<50,75,165>,Rgb<13,19,41>>,
- Sparkle<Rgb<25,105,255>,Rgb<250,250,250>,30,200>,
- TrFade<11500>,TrDelay<20000>,EFFECT_USER2>,TrDelay<7000>,
- Sparkle<Rgb<25,105,255>,Rgb<250,250,250>,30,200>,
- TrJoin<TrWipe<7000>,TrSmoothFade<9500>>>,EFFECT_USER2>,
- TransitionEffectL<TrConcat<TrJoin<TrWaveX<BrownNoiseFlicker<Rgb<100,200,255>,DeepSkyBlue,60>,Int<400>,Int<50>,Int<1000>,Int<0>>,TrWaveX<BrownNoiseFlicker<Rgb<100,200,255>,SteelBlue,600>,Int<15000>,Int<400>,Int<8000>,Int<0>>,TrWaveX<Sparkle<AlphaL<Rgb<100,200,255>,Int<0>>,Rgb<100,200,255>,3000,200>,Int<15000>,Int<100>,Int<8000>,Int<-7000>>>,AlphaL<Rgb<100,200,255>,Int<0>>,TrJoin<TrWaveX<BrownNoiseFlicker<Rgb<100,200,255>,DeepSkyBlue,300>,Int<300>,Int<50>,Int<1000>,Int<0>>,TrWaveX<Sparkle<AlphaL<Rgb<100,200,255>,Int<0>>,Rgb<100,200,255>,3000,200>,Int<40000>,Int<300>,Int<7000>,Int<3000>>,TrWaveX<BrownNoiseFlicker<DarkOrange,Yellow,80>,Int<15000>,Int<400>,Int<7000>,Int<0>>>>,EFFECT_USER2>,
- BC_effects_Red,
- InOutTrL<
- TrConcat<TrInstant,Layers<
- TransitionEffectL<TrConcat<TrInstant,Black,TrDelay<1950>>,EFFECT_IGNITION>,
- AlphaL<AudioFlicker<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,500>,RotateColorsX<Variation,Rgb<128,0,0>>>,
- SmoothStep<Scale<Trigger<EFFECT_IGNITION,Scale<Trigger<EFFECT_IGNITION,Int<2000>,Int<1>,Int<1>>,Int<300>,Int<2000>>,Int<1>,Int<1>>,Int<-1200>,Int<35000>>,Int<-3000>>>>,TrDelay<5000>>,
- TrConcat<TrInstant,Layers<
- TransitionEffectL<TrConcat<TrInstant,Black,TrDelay<2000>>,EFFECT_RETRACTION>,
- AlphaL<AudioFlicker<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,500>,RotateColorsX<Variation,Rgb<128,0,0>>>,
- SmoothStep<Scale<Trigger<EFFECT_RETRACTION,Scale<Trigger<EFFECT_RETRACTION,Int<1000>,Int<1000>,Int<1>>,Int<3000>,Int<10>>,Int<1000>,Int<500>>,Int<35000>,Int<-1200>>,Int<-3000>>>>,TrDelay<1000>>>,
- TransitionEffectL<TrConcat<TrWipe<100>,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<60,0,0>>,90>,SmoothStep<Int<2000>,Int<-500>>>,
- TrDelayX< Percentage<WavLen<EFFECT_PREON>,49> >,AlphaL<HumpFlickerL<RotateColorsX<Variation,Rgb<60,0,0>>,90>,SmoothStep<Int<2000>,Int<-500>>>,
- TrFadeX< Percentage<WavLen<EFFECT_PREON>,49> >,AlphaL<HumpFlickerL<RotateColorsX<Variation,BrownNoiseFlicker<Yellow,OrangeRed,50>>,90>,SmoothStep<Int<2700>,Int<-500>>>,TrInstant>,EFFECT_PREON>,
- // On-Demand Battery Level
- AlphaL<TransitionEffectL<TrConcat<TrSmoothFade<500>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<Scale<BatteryLevel,Int<0>,Int<35000>>,Int<-1>>>,TrDelay<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<BatteryLevel,Int<-1>>>,TrSmoothFade<1000>>,EFFECT_BATTERY_LEVEL>,Ifon<Int<0>,Int<32768>>>
- >>(),
- // HiltPCB
- StylePtr<Black>(),
- // Switches
- StylePtr<Layers<
- // Sith Crystal Red
- Stripes<1000,-2000,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<90,0,0>>,Black>,
- // Sith Force Red
- TransitionEffectL<TrConcat<TrFade<600>,RandomFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<160,0,0>>>,TrDelay<3000>,RotateColorsX<Variation,Red>,TrFade<800>>,EFFECT_FORCE>,
- BC_effects_2,
- InOutTrL<TrConcat<TrInstant,White,TrSmoothFade<1000>>,TrConcat<TrSmoothFade<500>,White,TrSmoothFade<500>>,Mix<IsLessThan<SlowNoise<Int<3000>>,Int<6000>>,Pulsing<ColorCycle<RotateColorsX<Variation,Red>,25,20,Black,100,300,1000>,Black,2000>,Black>>
- >>(),
- // Pommel
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Bluetooth
- StylePtr<Blue>(),
- "rule of\ntwo"},
- };
- //----------------------------------------------------------------------------------------------------------------------------------------
- Preset noblade[] = {
- // preset 0
- { "a_DARKSABER/DarkV3;common", "",
- // Main Blade
- StylePtr<Black>(),
- // HiltPCB
- StylePtr<Layers<
- Mix<SwingSpeed<400>,RotateColorsX<Variation,Rgb<100,100,150>>,RotateColorsX<Variation,Rgb<150,150,225>>>,
- BrownNoiseFlickerL<Stripes<5000,-300,RotateColorsX<Variation,Rgb<25,25,55>>,RotateColorsX<Variation,Rgb<75,75,120>>,RotateColorsX<Variation,Rgb<10,10,20>>,RotateColorsX<Variation,Rgb<50,50,75>>>,Int<38400>>,
- AudioFlickerL<RotateColorsX<Variation,Rgb<35,35,75>>>,
- AlphaL<RotateColorsX<Variation,Rgb<175,175,225>>,SwingSpeed<600>>,
- BC_effects_1,
- InOutTrL<TrWipe<300>,TrWipeIn<500>>,
- // On-Demand Battery Level
- AlphaL<TransitionEffectL<TrConcat<TrSmoothFade<500>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<Scale<BatteryLevel,Int<0>,Int<35000>>,Int<-1>>>,TrDelay<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,SmoothStep<BatteryLevel,Int<-1>>>,TrSmoothFade<1000>>,EFFECT_BATTERY_LEVEL>,Ifon<Int<0>,Int<32768>>>
- >>(),
- // Switches
- StylePtr<Layers<
- Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<RotateColorsX<Variation,Rgb<100,100,150>>,Black,2500>>>>(),
- // Pommel
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Bluetooth
- StylePtr<Blue>(),
- " dark\n v3"},
- // preset 1
- { "testfont2a", "testfont2a/tracks/track1.wav",
- // Main Blade
- StylePtr<LengthFinder<>>(),
- // Hilt PCB
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Switches
- StylePtr<Black>(),
- // Pommel
- StylePtr<Layers<
- Pulsing<Blue,Black,200>,
- InOutTrL<TrInstant,TrInstant,Pulsing<Blue,Black,2500>>>>(),
- // Bluetooth
- StylePtr<Blue>(),
- "testfont2a-preon/out-pstoff/in matching"},
- };
- struct AccentsLED {
- static constexpr float MaxAmps = 0.02;
- static constexpr float MaxVolts = 3.2;
- static constexpr float P2Amps = 0.10;
- static constexpr float P2Volts = 3.0;
- static constexpr float R = 0; // Resistor value
- static const int Red = 0;
- static const int Green = 0;
- static const int Blue = 255;
- };
- BladeConfig blades[] = {
- { 123, // BCA 123, 1" Ciel_Tan_A 132 D1_data_line = proffie_D1---> NPXL ctrpin---> bladePCB 330ohm--->Main blade strips
- WS281XBladePtr<132, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(), // Main Blade
- WS281XBladePtr<5, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(), // HiltPCB
- WS281XBladePtr<11, blade3Pin, Color8::GRB, PowerPINS<bladePowerPin5> >(), // Switches
- SimpleBladePtr<AccentsLED, NoLED, NoLED, NoLED, bladePowerPin1, -1, -1, -1>(), // Pommel
- SimpleBladePtr<CH3LED, NoLED, NoLED, NoLED, bladePowerPin6, -1, -1, -1>(), // Bluetooth
- CONFIGARRAY(CTAbladein),
- "01_bladein_save"},
- { NO_BLADE, // D1_data_line = proffie_D1---> NPXL ctrpin---> bladePCB 330ohm--->Main blade strips
- WS281XBladePtr<132, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(), // Main Blade
- WS281XBladePtr<5, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(), // HiltPCB
- WS281XBladePtr<11, blade3Pin, Color8::GRB, PowerPINS<bladePowerPin5> >(), // Switches
- SimpleBladePtr<AccentsLED, NoLED, NoLED, NoLED, bladePowerPin1, -1, -1, -1>(), // Pommel
- SimpleBladePtr<CH3LED, NoLED, NoLED, NoLED, bladePowerPin6, -1, -1, -1>(), // Bluetooth
- CONFIGARRAY(noblade),
- "00_NO_BLADE_save"},
- };
- #endif
- #ifdef CONFIG_BUTTONS
- Button PowerButton(BUTTON_POWER, powerButtonPin, "pow");
- Button AuxButton(BUTTON_AUX, auxPin, "aux");
- #endif
- // // Button connect to 3.3v instead of GND. Up to 5v is OK
- // PullDownButton PowerButton(BUTTON_POWER, powerButtonPin, "pow"); // isn't this backwards?
- // // Analog Potentiometer
- // ChangeVolumeAnalogReceiver volume_function;
- // PotClass pot(0, &volume_function);
- // // Or, you can use it to change the variation (color):
- // ChangeVariationAnalogReceiver variation_function;
- // PotClass pot(0, &variation_function);
- // // Rotary Encoder
- // ChangePresetRotaryReceiver rotary_receiver;
- // Rotary<8, 9> rotary(&rotary_receiver);
- /*
- The receiver decides what the rotary events do.
- There are currently receivers for changing presets,
- changing variation and one that just prints things out.
- More receivers can be added as needed.
- (I should probably create one for changing the volume.)
- */
- // Support for 128x64 OLED
- // #ifdef CONFIG_BOTTOM
- // SSD1306Template<128, uint64_t> display(0x3C);
- // #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement