-
Notifications
You must be signed in to change notification settings - Fork 84
The config file
Fredrik Hubinette edited this page Sep 3, 2019
·
9 revisions
While EVERYTHING in ProffieOS is possible to change, most of the time, only the config file needs to be changed. The config file is really just some C++ code that specifies how the rest of the code should behave, but since more ProffieOS users are not C++ experts, this page describes the ProffieOS config files in more detail.
First, let's take a look at a typical config file:
#ifdef CONFIG_TOP
#include "proffieboard_v1_config.h"
#define NUM_BLADES 1
#define NUM_BUTTONS 2
#define VOLUME 1000
const unsigned int maxLedsPerStrip = 144;
#define CLASH_THRESHOLD_G 1.0
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#endif
#ifdef CONFIG_PRESETS
Preset presets[] = {
{ "TeensySF", "tracks/venus.wav",
StyleNormalPtr<CYAN, WHITE, 300, 800>(), "cyan"},
{ "SmthJedi", "tracks/mars.wav",
StylePtr<InOutSparkTip<EASYBLADE(BLUE, WHITE), 300, 800> >(), "blue"},
{ "SmthGrey", "tracks/mercury.wav",
StyleFirePtr<RED, YELLOW>(), "fire"},
{ "SmthFuzz", "tracks/uranus.wav",
StyleNormalPtr<RED, WHITE, 300, 800>(), "red"},
{ "RgueCmdr", "tracks/venus.wav",
StyleFirePtr<BLUE, CYAN>(), "blue fire"},
{ "TthCrstl", "tracks/mars.wav",
StylePtr<InOutHelper<EASYBLADE(OnSpark<GREEN>, WHITE), 300, 800> >(), "green"},
{ "TeensySF", "tracks/mercury.wav",
StyleNormalPtr<WHITE, RED, 300, 800, RED>(), "white"},
{ "SmthJedi", "tracks/uranus.wav",
StyleNormalPtr<AudioFlicker<YELLOW, WHITE>, BLUE, 300, 800>(), "yellow"},
{ "SmthGrey", "tracks/venus.wav",
StylePtr<InOutSparkTip<EASYBLADE(MAGENTA, WHITE), 300, 800> >(), "magenta"},
{ "SmthFuzz", "tracks/mars.wav",
StyleNormalPtr<Gradient<RED, BLUE>, Gradient<CYAN, YELLOW>, 300, 800>(), "gradient"},
{ "RgueCmdr", "tracks/mercury.wav",
StyleRainbowPtr<300, 800>(), "rainbow"},
{ "TthCrstl", "tracks/uranus.wav",
StyleStrobePtr<WHITE, Rainbow, 15, 300, 800>(), "strobe"},
{ "TeensySF", "tracks/venus.wav",
&style_pov, "POV"},
{ "SmthJedi", "tracks/mars.wav",
&style_charging, "Battery\nLevel"}
};
BladeConfig blades[] = {
{ 0, WS2811BladePtr<144, WS2811_ACTUALLY_800kHz | WS2811_GRB>(), CONFIGARRAY(presets) },
};
#endif
#ifdef CONFIG_BUTTONS
Button PowerButton(BUTTON_POWER, powerButtonPin, "pow");
Button AuxButton(BUTTON_AUX, auxPin, "aux");
#endif
Cool Footer