Ok, almost there. I realized I had not at all understood how lockups work. Now I managed to fix all compile errors, except one. It is probably basic and very systematic, because it seems to be in every blade style. I’ve searched the forum and found some seemingly related threats, but still cannot make out the error in my config.
Here are the error logs and the full config:
In file included from D:\BRBlaster\ProffieOS\ProffieOS.ino:673:
sketch\config/bladerunner_config_V2.h:48:8: error: expected primary-expression before ')' token
48 | >>(),
| ^
sketch\config/bladerunner_config_V2.h:83:8: error: expected primary-expression before ')' token
83 | >>(),
| ^
sketch\config/bladerunner_config_V2.h:120:7: error: expected primary-expression before ')' token
120 | >(),
| ^
sketch\config/bladerunner_config_V2.h:155:7: error: expected primary-expression before ')' token
155 | >(),
| ^
sketch\config/bladerunner_config_V2.h:190:7: error: expected primary-expression before ')' token
190 | >(),
| ^
sketch\config/bladerunner_config_V2.h:228:7: error: expected primary-expression before ')' token
228 | >(),
| ^
sketch\config/bladerunner_config_V2.h:265:7: error: expected primary-expression before ')' token
265 | >(),
| ^
sketch\config/bladerunner_config_V2.h:300:7: error: expected primary-expression before ')' token
300 | >(),
| ^
sketch\config/bladerunner_config_V2.h:337:7: error: expected primary-expression before ')' token
337 | >(),
| ^
exit status 1
Error compiling for board Proffieboard V3.
#ifdef CONFIG_TOP
#include "proffieboard_v3_config.h"
#define NUM_BLADES 3
#define NUM_BUTTONS 2
#define VOLUME 1500
const unsigned int maxLedsPerStrip = 5;
#define CLASH_THRESHOLD_G 1.0
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#define ENABLE_BLASTER_AUTO
#define BLASTER_SHOTS_UNTIL_EMPTY 5
#define BLASTER_JAM_PERCENTAGE 3
#endif
#ifdef CONFIG_PROP
#include "../props/blaster_BC_buttons.h"
#endif
#ifdef CONFIG_PRESETS
Preset presets[] = {
{ "BladeRunner;common", "BladeRunner/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Orange,50>,TrFade<200>,Red,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Cyan,50>,TrFade<200>,Blinking<Black,Blue,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Orange,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Constant red
StylePtr<
Layers<
Red,
InOutTrL<TrFade<300>,TrFade<300>>,
BlastFadeoutL<Coral,200,EFFECT_FIRE>,
BlastFadeoutL<DeepSkyBlue,200,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Coral,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
SimpleClashL<Cyan>
>>(),
//Green LEDs
StylePtr<
Layers<
Rgb<255,255,255>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
"BladeRunner"
},
{ "BladeRunnerRain;common", "BladeRunnerRain/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Orange,50>,TrFade<200>,Red,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Cyan,50>,TrFade<200>,Blinking<Black,Blue,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<DarkOrange,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Hump Flicker Red
StylePtr<
Layers<
HumpFlickerL<Red,50>,
InOutTrL<TrFade<300>,TrFade<300>>,
BlastFadeoutL<OrangeRed,200,EFFECT_FIRE>,
BlastFadeoutL<Cyan,200,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<DarkOrange,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
SimpleClashL<Cyan>
>>(),
//Green LEDs
StylePtr<
Layers<
Black,
Layers<
HumpFlickerL<Rgb<255,255,255>,100>,
InOutTrL<TrFade<300>,TrFade<300>>>>
>(),
"BladeRunnerRain"
},
{ "DL44;common", "DL44/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Orange,50>,TrFade<200>,Red,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Cyan,50>,TrFade<200>,Blinking<Black,Blue,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<DarkOrange,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Pixelate
StylePtr<
Layers<
PixelateX<StaticFire<DodgerBlue,Cyan>,Int<10>>,
ResponsiveBlastFadeL<Coral,Int<62000>,Int<400>,Int<15000>,Int<8000>,EFFECT_FIRE>,
ResponsiveBlastFadeL<Cyan,Int<62000>,Int<400>,Int<15000>,Int<8000>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Coral,50>,TrFade<50>,LightSalmon,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
ResponsiveClashL<Orange,TrInstant,TrFade<200>,Int<15000>,Int<6000>,Int<60000>>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
//Green LEDs
StylePtr<
Layers<
Rgb<255,255,255>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
"DL44"
},
{ "DLT19;common", "DLT19/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<OrangeRed,50>,TrFade<200>,Red,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Aquamarine,50>,TrFade<200>,Blinking<Black,SpringGreen,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<OrangeRed,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Wave green
StylePtr<
Layers<
TransitionLoop<Black,TrConcat<TrWipe<1000>,RgbArg<BASE_COLOR_ARG,Green>,TrWipe<1000>>>,
BlastL<HumpFlickerL<SpringGreen,50>,200,10,400,EFFECT_FIRE>,
BlastL<HumpFlickerL<Aquamarine,50>,200,10,400,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<SpringGreen,50>,TrFade<50>,Green,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
ResponsiveClashL<Aquamarine,TrInstant,TrFade<200>,Int<18000>,Int<12000>,Int<62000>>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
//Green LEDs
StylePtr<
Layers<
Rgb<255,255,255>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
"DLT19"
},
{ "DLT19X;common", "DLT19X/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Cyan,50>,TrFade<200>,Rgb16<21301,0,65535>,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<HotPink,50>,TrFade<200>,Blinking<Black,Rgb16<21301,0,65535>,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Cyan,50>,TrFade<50>,Rgb16<21301,0,65535>,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Brown Noise magenta
StylePtr<
Layers<
BrownNoiseFlicker<Blue,Red,50>,
BlastL<Cyan,200,10,400,EFFECT_FIRE>,
BlastL<HotPink,200,10,400,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Cyan,50>,TrFade<50>,HotPink,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
ResponsiveClashL<DarkOrange,TrInstant,TrFade<200>,Int<15000>,Int<12000>,Int<65000>>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
//Green LEDs
StylePtr<
Layers<
Black,
Layers<
HumpFlickerL<Rgb<255,255,255>,100>,
InOutTrL<TrFade<300>,TrFade<300>>>>
>(),
"DLT19X"
},
{ "E11;common", "E11/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<OrangeRed,50>,TrFade<200>,Red,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<DeepSkyBlue,50>,TrFade<200>,Blinking<Black,Blue,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<OrangeRed,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Pulsing red
StylePtr<
Layers<
PulsingL<Red,Int<4000>>,
InOutHelperL<InOutFuncX<Int<300>,Int<800>>>,
BlastFadeoutL<DarkOrange,200,EFFECT_FIRE>,
BlastFadeoutL<DeepSkyBlue,200,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<DarkOrange,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
SimpleClashL<OrangeRed>>
>(),
//Green LEDs - Pulsing
StylePtr<
Layers<
Black,
Layers<
PulsingL<Rgb<255,255,255>,Int<6000>>,
InOutTrL<TrFade<300>,TrFade<300>>>>
>(),
"E11"
},
{ "EC17;common", "EC17/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<DodgerBlue,50>,TrFade<200>,Blue,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<SpringGreen,50>,TrFade<200>,Blinking<Black,Green,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<DodgerBlue,50>,TrFade<50>,Blue,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Blinking blue
StylePtr<
Layers<
BlinkingL<DodgerBlue,Int<2000>,Int<400>>,
InOutTrL<TrFade<300>,TrFade<300>>,
ResponsiveBlastWaveL<Cyan,Int<400>,Int<100>,Int<400>,Int<16000>,Int<16000>,EFFECT_FIRE>,
ResponsiveBlastWaveL<DarkOrange,Int<400>,Int<100>,Int<400>,Int<16000>,Int<16000>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Cyan,50>,TrFade<50>,Blue,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
SimpleClashL<Orange>>
>(),
//Green LEDs
StylePtr<
Layers<
Rgb<255,255,255>,
InOutTrL<TrFade<300>,TrFade<300>>>
>(),
"EC17"
},
{ "Samaritan;common", "Samaritan/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<DeepPink,50>,TrFade<200>,Rgb16<12482,0,65535>,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Cyan,50>,TrFade<200>,Blinking<Black,DodgerBlue,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<DeepPink,50>,TrFade<50>,Rgb16<12482,0,65535>,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Audio flicker Magenta
StylePtr<
Layers<
AudioFlickerL<Magenta>,
InOutTrL<TrFade<300>,TrFade<300>>,
ResponsiveBlastWaveL<DarkOrange,Int<400>,Int<50>,Int<400>,Int<16000>,Int<16000>,EFFECT_FIRE>,
ResponsiveBlastWaveL<Cyan,Int<400>,Int<50>,Int<400>,Int<16000>,Int<16000>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Orange,50>,TrFade<50>,OrangeRed,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
SimpleClashL<HotPink>>
>(),
//Green LEDs
StylePtr<
Layers<
Black,
Layers<
HumpFlickerL<Rgb<255,255,255>,100>,
InOutTrL<TrFade<300>,TrFade<300>>>>
>(),
"Samaritan"
},
{ "SE44;common", "SE44/tracks/track.wav",
//Muzzle
StylePtr<
Layers<
Black,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Orange,50>,TrFade<200>,Red,TrFade<600>>,EFFECT_FIRE>,
TransitionEffectL<TrConcat<TrDelay<100>,HumpFlickerL<Aqua,50>,TrFade<200>,Blinking<Black,Blue,100,500>,TrFade<600>>,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Orange,50>,TrFade<50>,Red,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>
>(),
//Mag - Hump flicker orange
StylePtr<
Layers<
HumpFlickerL<Orange,50>,
InOutTrL<TrFade<300>,TrFade<300>>,
BlastFadeoutL<Cyan,200,EFFECT_FIRE>,
BlastFadeoutL<Cyan,200,EFFECT_STUN>,
LockupTrL<Layers<
TransitionLoopL<TrConcat<TrInstant,HumpFlickerL<Cyan,50>,TrFade<50>,DeepSkyBlue,TrFade<150>>>>,TrInstant,TrConcat<TrInstant,Rgb<50,0,0>,TrFade<400>>,SaberBase::LOCKUP_AUTOFIRE>>,
SimpleClashL<Cyan>>
>(),
//Green LEDs
StylePtr<
Layers<
Black,
Layers<
HumpFlickerL<Rgb<255,255,255>,100>,
InOutTrL<TrFade<300>,TrFade<300>>>>
>(),
"SE44"
},
};
BladeConfig blades[] = {
{ 0, WS281XBladePtr<2, bladePin, Color8::GRB, PowerPINS<bladePowerPin2> >(),
WS281XBladePtr<5, blade2Pin, Color8::GRB, PowerPINS<bladePowerPin4> >(),
SimpleBladePtr<CH2LED, NoLED, NoLED, NoLED, bladePowerPin1, -1, -1, -1>(),
CONFIGARRAY(presets) },
};
#endif
#ifdef CONFIG_BUTTONS
Button FireButton(BUTTON_FIRE, powerButtonPin, "fire");
Button ModeButton(BUTTON_MODE_SELECT, auxPin, "modeselect");
#endif