//------------------------------------------------------------------------------
|
|
// Do not change this file unless you know what you are doing
|
|
// Configuration settings are in the general.h file
|
|
//------------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Various modules configuration
|
|
|
|
#if DEBUG_TELNET_SUPPORT
|
|
#undef TELNET_SUPPORT
|
|
#define TELNET_SUPPORT 1
|
|
#endif
|
|
|
|
#if not WEB_SUPPORT
|
|
#undef DEBUG_WEB_SUPPORT
|
|
#define DEBUG_WEB_SUPPORT 0
|
|
#endif
|
|
|
|
#if not WEB_SUPPORT
|
|
#undef API_SUPPORT
|
|
#define API_SUPPORT 0 // API support requires web support
|
|
#endif
|
|
|
|
#if not WEB_SUPPORT
|
|
#undef SSDP_SUPPORT
|
|
#define SSDP_SUPPORT 0 // SSDP support requires web support
|
|
#endif
|
|
|
|
#if UART_MQTT_SUPPORT
|
|
#undef MQTT_SUPPORT
|
|
#define MQTT_SUPPORT 1 // UART<->MQTT requires MQTT and no serial debug
|
|
#undef DEBUG_SERIAL_SUPPORT
|
|
#define DEBUG_SERIAL_SUPPORT 0 // TODO: compare UART_MQTT_PORT with DEBUG_PORT? (as strings)
|
|
#endif
|
|
|
|
#if ALEXA_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // If Alexa enabled enable BROKER
|
|
#endif
|
|
|
|
#if RPN_RULES_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // If RPN Rules enabled enable BROKER
|
|
#undef MQTT_SUPPORT
|
|
#define MQTT_SUPPORT 1
|
|
#endif
|
|
|
|
#if LED_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // If LED is enabled enable BROKER to supply status changes
|
|
#endif
|
|
|
|
#if INFLUXDB_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // If InfluxDB enabled enable BROKER
|
|
#endif
|
|
|
|
#if DOMOTICZ_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // If Domoticz enabled enable BROKER
|
|
#undef MQTT_SUPPORT
|
|
#define MQTT_SUPPORT 1 // If Domoticz enabled enable MQTT
|
|
#endif
|
|
|
|
#if HOMEASSISTANT_SUPPORT
|
|
#undef MQTT_SUPPORT
|
|
#define MQTT_SUPPORT 1 // If Home Assistant enabled enable MQTT
|
|
#endif
|
|
|
|
#if THINGSPEAK_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // If Thingspeak enabled enable BROKER
|
|
#endif
|
|
|
|
#if SCHEDULER_SUPPORT
|
|
#undef NTP_SUPPORT
|
|
#define NTP_SUPPORT 1 // Scheduler needs NTP
|
|
#endif
|
|
|
|
#if LWIP_VERSION_MAJOR != 1
|
|
#undef MDNS_CLIENT_SUPPORT
|
|
#define MDNS_CLIENT_SUPPORT 0 // default resolver already handles this
|
|
#endif
|
|
|
|
#if not defined(ARDUINO_ESP8266_RELEASE_2_3_0)
|
|
#undef TELNET_SERVER_ASYNC_BUFFERED
|
|
#define TELNET_SERVER_ASYNC_BUFFERED 1 // enable buffered telnet by default on latest Cores
|
|
#endif
|
|
|
|
#if LIGHT_PROVIDER == LIGHT_PROVIDER_TUYA
|
|
#undef TUYA_SUPPORT
|
|
#define TUYA_SUPPORT 1 // Need base Tuya module for this to work
|
|
#undef LIGHT_USE_TRANSITIONS
|
|
#define LIGHT_USE_TRANSITIONS 0 // TODO: temporary, maybe slower step instead?
|
|
#endif
|
|
|
|
#if TUYA_SUPPORT
|
|
#undef BROKER_SUPPORT
|
|
#define BROKER_SUPPORT 1 // Broker is required to process relay & lights events
|
|
#endif
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Hint about ESPAsyncTCP options and our internal one
|
|
// TODO: clean-up SSL_ENABLED and USE_SSL settings for 1.15.0
|
|
|
|
#if ASYNC_TCP_SSL_ENABLED && SECURE_CLIENT == SECURE_CLIENT_NONE
|
|
#undef SECURE_CLIENT
|
|
#define SECURE_CLIENT SECURE_CLIENT_AXTLS
|
|
#endif
|
|
|
|
#if THINGSPEAK_USE_SSL && THINGSPEAK_USE_ASYNC && (!ASYNC_TCP_SSL_ENABLED)
|
|
#warning "Thingspeak in ASYNC mode requires a globally defined ASYNC_TCP_SSL_ENABLED=1"
|
|
#undef THINGSPEAK_SUPPORT
|
|
#define THINGSPEAK_SUPPORT 0 // Thingspeak in ASYNC mode requires ASYNC_TCP_SSL_ENABLED
|
|
#endif
|
|
|
|
#if WEB_SUPPORT && WEB_SSL_ENABLED && (!ASYNC_TCP_SSL_ENABLED)
|
|
#warning "WEB_SUPPORT with SSL requires a globally defined ASYNC_TCP_SSL_ENABLED=1"
|
|
#undef WEB_SSL_ENABLED
|
|
#define WEB_SSL_ENABLED 0 // WEB_SUPPORT mode th SSL requires ASYNC_TCP_SSL_ENABLED
|
|
#endif
|
|
|
|
#if !DEBUG_SUPPORT
|
|
#undef DEBUG_LOG_BUFFER_SUPPORT
|
|
#define DEBUG_LOG_BUFFER_SUPPORT 0 // Can't buffer if there is no debugging enabled.
|
|
// Helps to avoid checking twice for both DEBUG_SUPPORT and BUFFER_LOG_SUPPORT
|
|
#endif
|
|
|
|
//------------------------------------------------------------------------------
|
|
// These depend on newest Core libraries
|
|
|
|
#if LLMNR_SUPPORT && defined(ARDUINO_ESP8266_RELEASE_2_3_0)
|
|
#undef LLMNR_SUPPORT
|
|
#define LLMNR_SUPPORT 0
|
|
#endif
|
|
|
|
#if NETBIOS_SUPPORT && defined(ARDUINO_ESP8266_RELEASE_2_3_0)
|
|
#undef NETBIOS_SUPPORT
|
|
#define NETBIOS_SUPPORT 0
|
|
#endif
|
|
|
|
#if SSDP_SUPPORT && defined(ARDUINO_ESP8266_RELEASE_2_3_0)
|
|
#undef SSDP_SUPPORT
|
|
#define SSDP_SUPPORT 0
|
|
#endif
|
|
|