kopia lustrzana https://github.com/Aircoookie/WLED
Refactoring
rodzic
9c3e7b9ec0
commit
05f5aaaeca
|
@ -0,0 +1,26 @@
|
||||||
|
#ifndef wled_const_h
|
||||||
|
#define wled_const_h
|
||||||
|
|
||||||
|
//Access point behavior
|
||||||
|
#define AP_BEHAVIOR_BOOT_NO_CONN 0 //Open AP when no connection after boot
|
||||||
|
#define AP_BEHAVIOR_NO_CONN 1 //Open when no connection
|
||||||
|
#define AP_BEHAVIOR_ALWAYS 2 //Always open
|
||||||
|
#define AP_BEHAVIOR_BUTTON_ONLY 3 //Only when button pressed for 6 sec
|
||||||
|
|
||||||
|
//realtime modes
|
||||||
|
#define REALTIME_MODE_INACTIVE 0
|
||||||
|
#define REALTIME_MODE_GENERIC 1
|
||||||
|
#define REALTIME_MODE_UDP 2
|
||||||
|
#define REALTIME_MODE_HYPERION 3
|
||||||
|
#define REALTIME_MODE_E131 4
|
||||||
|
#define REALTIME_MODE_ADALIGHT 5
|
||||||
|
|
||||||
|
//E1.31 DMX modes
|
||||||
|
#define DMX_MODE_DISABLED 0 //not used
|
||||||
|
#define DMX_MODE_SINGLE_RGB 1 //all LEDs same RGB color (3 channels)
|
||||||
|
#define DMX_MODE_SINGLE_DRGB 2 //all LEDs same RGB color and master dimmer (4 channels)
|
||||||
|
#define DMX_MODE_EFFECT 3 //trigger standalone effects of WLED (11 channels)
|
||||||
|
#define DMX_MODE_MULTIPLE_RGB 4 //every LED is addressed with its own RGB (ledCount * 3 channels)
|
||||||
|
#define DMX_MODE_MULTIPLE_DRGB 5 //every LED is addressed with its own RGB and share a master dimmer (ledCount * 3 + 1 channels)
|
||||||
|
|
||||||
|
#endif
|
|
@ -75,6 +75,7 @@
|
||||||
#include "html_other.h"
|
#include "html_other.h"
|
||||||
#include "FX.h"
|
#include "FX.h"
|
||||||
#include "ir_codes.h"
|
#include "ir_codes.h"
|
||||||
|
#include "const.h"
|
||||||
|
|
||||||
|
|
||||||
#if IR_PIN < 0
|
#if IR_PIN < 0
|
||||||
|
@ -90,7 +91,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//version code in format yymmddb (b = daily build)
|
//version code in format yymmddb (b = daily build)
|
||||||
#define VERSION 2002181
|
#define VERSION 2002191
|
||||||
|
|
||||||
char versionString[] = "0.9.1";
|
char versionString[] = "0.9.1";
|
||||||
|
|
||||||
|
@ -115,7 +116,7 @@ char cmDNS[33] = "x"; //mDNS address (placeholder, will
|
||||||
char apSSID[33] = ""; //AP off by default (unless setup)
|
char apSSID[33] = ""; //AP off by default (unless setup)
|
||||||
byte apChannel = 1; //2.4GHz WiFi AP channel (1-13)
|
byte apChannel = 1; //2.4GHz WiFi AP channel (1-13)
|
||||||
byte apHide = 0; //hidden AP SSID
|
byte apHide = 0; //hidden AP SSID
|
||||||
byte apBehavior = 0; //0: Open AP when no connection after boot 1: Open when no connection 2: Always open 3: Only when button pressed for 6 sec
|
byte apBehavior = AP_BEHAVIOR_BOOT_NO_CONN; //access point opens when no connection after boot by default
|
||||||
IPAddress staticIP(0, 0, 0, 0); //static IP of ESP
|
IPAddress staticIP(0, 0, 0, 0); //static IP of ESP
|
||||||
IPAddress staticGateway(0, 0, 0, 0); //gateway (router) IP
|
IPAddress staticGateway(0, 0, 0, 0); //gateway (router) IP
|
||||||
IPAddress staticSubnet(255, 255, 255, 0); //most common subnet in home networks
|
IPAddress staticSubnet(255, 255, 255, 0); //most common subnet in home networks
|
||||||
|
@ -178,14 +179,8 @@ bool arlsDisableGammaCorrection = true; //activate if gamma correction is
|
||||||
bool arlsForceMaxBri = false; //enable to force max brightness if source has very dark colors that would be black
|
bool arlsForceMaxBri = false; //enable to force max brightness if source has very dark colors that would be black
|
||||||
|
|
||||||
uint16_t e131Universe = 1; //settings for E1.31 (sACN) protocol (only DMX_MODE_MULTIPLE_* can span over consequtive universes)
|
uint16_t e131Universe = 1; //settings for E1.31 (sACN) protocol (only DMX_MODE_MULTIPLE_* can span over consequtive universes)
|
||||||
#define DMX_MODE_DISABLED 0 //not used
|
uint8_t DMXMode = DMX_MODE_MULTIPLE_RGB; //DMX mode (s.a.)
|
||||||
#define DMX_MODE_SINGLE_RGB 1 //all LEDs same RGB color (3 channels)
|
uint16_t DMXAddress = 1; //DMX start address of fixture, a.k.a. first Channel [for E1.31 (sACN) protocol]
|
||||||
#define DMX_MODE_SINGLE_DRGB 2 //all LEDs same RGB color and master dimmer (4 channels)
|
|
||||||
#define DMX_MODE_EFFECT 3 //trigger standalone effects of WLED (11 channels)
|
|
||||||
#define DMX_MODE_MULTIPLE_RGB 4 //every LED is addressed with its own RGB (ledCount * 3 channels)
|
|
||||||
#define DMX_MODE_MULTIPLE_DRGB 5 //every LED is addressed with its own RGB and share a master dimmer (ledCount * 3 + 1 channels)
|
|
||||||
uint8_t DMXMode; //DMX mode (s.a.)
|
|
||||||
uint16_t DMXAddress; //DMX start address of fixture, a.k.a. first Channel [for E1.31 (sACN) protocol]
|
|
||||||
uint8_t DMXOldDimmer = 0; //only update brightness on change
|
uint8_t DMXOldDimmer = 0; //only update brightness on change
|
||||||
uint8_t e131LastSequenceNumber = 0; //to detect packet loss
|
uint8_t e131LastSequenceNumber = 0; //to detect packet loss
|
||||||
bool e131Multicast = false; //multicast or unicast
|
bool e131Multicast = false; //multicast or unicast
|
||||||
|
@ -362,13 +357,7 @@ bool presetApplyBri = false, presetApplyCol = true, presetApplyFx = true;
|
||||||
bool saveCurrPresetCycConf = false;
|
bool saveCurrPresetCycConf = false;
|
||||||
|
|
||||||
//realtime
|
//realtime
|
||||||
#define REALTIME_MODE_INACTIVE 0
|
byte realtimeMode = REALTIME_MODE_INACTIVE;
|
||||||
#define REALTIME_MODE_GENERIC 1
|
|
||||||
#define REALTIME_MODE_UDP 2
|
|
||||||
#define REALTIME_MODE_HYPERION 3
|
|
||||||
#define REALTIME_MODE_E131 4
|
|
||||||
#define REALTIME_MODE_ADALIGHT 5
|
|
||||||
byte realtimeMode = 0;
|
|
||||||
IPAddress realtimeIP = (0,0,0,0);
|
IPAddress realtimeIP = (0,0,0,0);
|
||||||
unsigned long realtimeTimeout = 0;
|
unsigned long realtimeTimeout = 0;
|
||||||
|
|
||||||
|
|
|
@ -121,7 +121,7 @@ void beginStrip()
|
||||||
|
|
||||||
|
|
||||||
void initAP(bool resetAP=false){
|
void initAP(bool resetAP=false){
|
||||||
if (apBehavior == 3 && !resetAP) return;
|
if (apBehavior == AP_BEHAVIOR_BUTTON_ONLY && !resetAP) return;
|
||||||
|
|
||||||
if (!apSSID[0] || resetAP) strcpy(apSSID, "WLED-AP");
|
if (!apSSID[0] || resetAP) strcpy(apSSID, "WLED-AP");
|
||||||
if (resetAP) strcpy(apPass,"wled1234");
|
if (resetAP) strcpy(apPass,"wled1234");
|
||||||
|
@ -172,7 +172,7 @@ void initConnection()
|
||||||
if (!apActive) initAP(); //instantly go to ap mode
|
if (!apActive) initAP(); //instantly go to ap mode
|
||||||
return;
|
return;
|
||||||
} else if (!apActive) {
|
} else if (!apActive) {
|
||||||
if (apBehavior == 2)
|
if (apBehavior == AP_BEHAVIOR_ALWAYS)
|
||||||
{
|
{
|
||||||
initAP();
|
initAP();
|
||||||
} else
|
} else
|
||||||
|
@ -246,7 +246,7 @@ uint32_t lastHeap;
|
||||||
unsigned long heapTime = 0;
|
unsigned long heapTime = 0;
|
||||||
|
|
||||||
void handleConnection() {
|
void handleConnection() {
|
||||||
if (millis() < 2000 && (!WLED_WIFI_CONFIGURED || apBehavior == 2)) return;
|
if (millis() < 2000 && (!WLED_WIFI_CONFIGURED || apBehavior == AP_BEHAVIOR_ALWAYS)) return;
|
||||||
if (lastReconnectAttempt == 0) initConnection();
|
if (lastReconnectAttempt == 0) initConnection();
|
||||||
|
|
||||||
//reconnect WiFi to clear stale allocations if heap gets too low
|
//reconnect WiFi to clear stale allocations if heap gets too low
|
||||||
|
@ -297,7 +297,7 @@ void handleConnection() {
|
||||||
initConnection();
|
initConnection();
|
||||||
}
|
}
|
||||||
if (millis() - lastReconnectAttempt > ((stac) ? 300000 : 20000) && WLED_WIFI_CONFIGURED) initConnection();
|
if (millis() - lastReconnectAttempt > ((stac) ? 300000 : 20000) && WLED_WIFI_CONFIGURED) initConnection();
|
||||||
if (!apActive && millis() - lastReconnectAttempt > 12000 && (!wasConnected || apBehavior == 1)) initAP();
|
if (!apActive && millis() - lastReconnectAttempt > 12000 && (!wasConnected || apBehavior == AP_BEHAVIOR_NO_CONN)) initAP();
|
||||||
} else if (!interfacesInited) { //newly connected
|
} else if (!interfacesInited) { //newly connected
|
||||||
DEBUG_PRINTLN("");
|
DEBUG_PRINTLN("");
|
||||||
DEBUG_PRINT("Connected! IP address: ");
|
DEBUG_PRINT("Connected! IP address: ");
|
||||||
|
@ -306,7 +306,7 @@ void handleConnection() {
|
||||||
userConnected();
|
userConnected();
|
||||||
|
|
||||||
//shut down AP
|
//shut down AP
|
||||||
if (apBehavior != 2 && apActive)
|
if (apBehavior != AP_BEHAVIOR_ALWAYS && apActive)
|
||||||
{
|
{
|
||||||
dnsServer.stop();
|
dnsServer.stop();
|
||||||
WiFi.softAPdisconnect(true);
|
WiFi.softAPdisconnect(true);
|
||||||
|
|
Ładowanie…
Reference in New Issue