/*
user_config_override.h - user configuration overrides my_user_config.h for Tasmota
Copyright (C) 2020 Theo Arends
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _USER_CONFIG_OVERRIDE_H_
#define _USER_CONFIG_OVERRIDE_H_
// force the compiler to show a warning to confirm that this file is included
//#warning **** user_config_override.h: Using Settings from this File ****
/*****************************************************************************************************\
* USAGE:
* To modify the stock configuration without changing the my_user_config.h file:
* (1) copy this file to "user_config_override.h" (It will be ignored by Git)
* (2) define your own settings below
******************************************************************************************************
* ATTENTION:
* - Changes to SECTION1 PARAMETER defines will only override flash settings if you change define CFG_HOLDER.
* - Expect compiler warnings when no ifdef/undef/endif sequence is used.
* - You still need to update my_user_config.h for major define USE_MQTT_TLS.
* - All parameters can be persistent changed online using commands via MQTT, WebConsole or Serial.
\*****************************************************************************************************/
// -- Master parameter control --------------------
#undef CFG_HOLDER
#define CFG_HOLDER 4617 // [Reset 1] Change this value (max 32000) to load SECTION1 configuration parameters to flash
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#undef MODULE
// -- Wifi ----------------------------------------
//persöhnliches
#undef STA_SSID1
#define STA_SSID1 "Ssid1" // [Ssid1] Wifi SSID
#undef STA_PASS1
#define STA_PASS1 "Password1" // [Password1] Wifi password
#undef STA_SSID2
#define STA_SSID2 "DEINE SSID" // [Ssid2] Optional alternate AP Wifi SSID
#undef STA_PASS2
#define STA_PASS2 "DEIN PASSWORT" // [Password2] Optional alternate AP Wifi password
#define WIFI_ARP_INTERVAL 0 // [SetOption41] Senden Sie ein unaufgefordert ARP-Intervall
#define WIFI_SCAN_AT_RESTART true // [SetOption56] Scannen Sie das WLAN-Netzwerk beim Neustart nach konfigurierten AP's
#define WIFI_SCAN_REGULARLY true // [SetOption57] Scannen Sie das WLAN-Netzwerk alle 44 Minuten nach konfigurierten AP's
// -- MQTT----------------------------------------
#undef MQTT_HOST
#define MQTT_HOST "192.168.178.xxx" // [MqttHost]
#undef MQTT_PORT
#define MQTT_PORT 1885 // [MqttPort] +++ MQTT-Port Einstellung
#undef MQTT_USER
#define MQTT_USER "MqttUser" // [MqttUser] MQTT user
#undef MQTT_PASS
#define MQTT_PASS "MqttPassword" // [MqttPassword] MQTT password
// -- MQTT - Telemetry ----------------------------
#define TELE_PERIOD 10 // [TelePeriod] Telemetry (0 = disable, 10 - 3600 seconds)
#define TELE_ON_POWER false // [SetOption59] send tele/STATE together with stat/RESULT (false = Disable, true = Enable)
// -- Syslog --------------------------------------
#define SYS_LOG_HOST "" // [LogHost] (Linux) syslog host
#define SYS_LOG_PORT 514 // [LogPort] default syslog UDP port
#define SYS_LOG_LEVEL LOG_LEVEL_NONE // [SysLog] (LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG_MORE)
#define SERIAL_LOG_LEVEL LOG_LEVEL_INFO // [SerialLog] (LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG_MORE)
#define WEB_LOG_LEVEL LOG_LEVEL_INFO // [WebLog] (LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG_MORE)
#define MQTT_LOG_LEVEL LOG_LEVEL_NONE // [MqttLog] (LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG_MORE)
// -- Ota -----------------------------------------
#define OTA_URL "http://ota.tasmota.com/tasmota/release/tasmota.bin.gz" // [OtaUrl]
#define OTA_COMPATIBILITY false // [SetOption78] Disable OTA compatibility check
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// Beschreibung - 25.05.2024
// Diese Datei hilft euch dabei, ein eigenes angepasstes Tasmota Image für euren ESP mit Gitpod (oder sonstiges) zu bauen, wenn ihr
// mit dem ESP z.B. ein Stromzähler auslesen wollt (SML) oder eine smarte Steckdose mit Energiemessfunktion habt und ihr die schönen
// Liniendiagramme (Google Chart Script) für den Verbrauch haben wollt. Andernfalls verwendet einfach die originalen Images.
// Die unten stehenden Zeilen (ab #undef) je nach Bedarf in die tasmota\user_config_override.h kopieren. /* */ = auskommentiert.
// Einfach entfernen und die Zeilen werden beim Kompilieren berücksichtigt. Habt ihr ein ESP01s bzw. ein ESP mit nur
// 1MByte Speicher dann könnt ihr einfach alles kopieren und in die .h Datei kopieren. Habt ihr andere ESPs
// dann müsst ihr die Zeilen bearbeiten. Wenn ihr eine Smarte Steckdose mit Energiemessfunktion habt (Gosund, Sonoff), dann
// müsst ihr ebenfalls weiter unten bei den ganzen Features/Treibern aktivieren (Zeile auskommentieren).
// Zum Kompilieren unter Gitpod folgendes in die Console eingeben:
// platformio run -e tasmota (für ESP8266)
// platformio run -e tasmota32 (für ESP32)
// platformio run -e tasmota32s2
// platformio run -e tasmota32s3
// platformio run -e tasmota32s3cdc
// platformio run -e tasmota32c3
// Mehr Infos bzgl. ESP32 Versionen: https://tasmota.github.io/docs/ESP32/#esp32_1
// für weitere ESPs siehe: https://github.com/arendst/Tasmota/blob/development/platformio_override_sample.ini bei default_envs
//----------------------------------------------------------------------------
/* In der platformio_override.ini müsst ihr noch bei folgenden Zeilen das ";" entfernen, falls ihr 4M+ Flash und ein ESP8266 habt:
board = esp8266_4M2M
board_build.f_cpu = 160000000L
board_build.f_flash = 40000000L */
//----------------------------------------------------------------------------
/* Folgende Features/Treiber habe ich für das ESP8266 Image deaktiviert, damit a) ein Firmwareupdate ohne Umwege über die minimal möglich ist und b) der ESP noch genug RAM für das große Google Script hat! Damit habt ihr >12KByte RAM frei (beim ESP32 nicht notwendig). Eine komplette Liste deaktivierbarer Features/Treiber findet ihr hier: https://tasmota.github.io/docs/BUILDS/
oder hier Beschreibung https://github.com/arendst/Tasmota/blob/master/tasmota/my_user_config.h */
//ESP32: Dieser Block kann komplett auskommentiert werden
#undef USE_DOMOTICZ //Zeile auskommentieren wenn ihr Domoticz verwenden wollt
#undef USE_EMULATION_HUE
#undef USE_EMULATION_WEMO
#undef ROTARY_V1
#undef USE_SONOFF_RF
#undef USE_SONOFF_SC
#undef USE_TUYA_MCU
#undef USE_ARMTRONIX_DIMMERS
#undef USE_PS_16_DZ
#undef USE_SONOFF_IFAN
#undef USE_BUZZER
#undef USE_ARILUX_RF
#undef USE_SHUTTER
#undef USE_DEEPSLEEP
#undef USE_EXS_DIMMER
#undef USE_DEVICE_GROUPS
#undef USE_PWM_DIMMER
#undef USE_SONOFF_D1
#undef USE_SHELLY_DIMMER
#undef USE_LIGHT
#undef USE_WS2812
#undef USE_MY92X1
#undef USE_SM16716
#undef USE_SM2135
#undef USE_SM2335
#undef USE_BP1658CJ
#undef USE_BP5758D
#undef USE_SONOFF_L1
#undef USE_ELECTRIQ_MOODL
#undef USE_LIGHT_PALETTE
#undef USE_LIGHT_VIRTUAL_CT
#undef USE_DGR_LIGHT_SEQUENCE
#undef USE_DS18x20
#undef USE_I2C
#undef USE_SERIAL_BRIDGE
#undef USE_ENERGY_SENSOR //Zeile auskommentieren falls ihr einen SonOff / Gosund EP2 verwenden wollt
#undef USE_ENERGY_DUMMY
#undef USE_HLW8012 //Zeile auskommentieren falls ihr einen SonOff POW / Gosund EP2 verwenden wollt
#undef USE_CSE7766 //Zeile auskommentieren falls ihr einen SonOff POW R2 verwendet
#undef USE_PZEM004T
#undef USE_PZEM_AC
#undef USE_PZEM_DC
#undef USE_MCP39F501
#undef USE_BL09XX //Zeile auskommentieren falls ihr einen SonOff Dual R3 v2 / Gosund EP2 verwendet
#undef USE_DHT
#undef USE_IR_REMOTE
//----------------------------------------------------------------------------
//-- SML, Script und Google Chart Support
#ifndef USE_SCRIPT
#define USE_SCRIPT
#endif
#ifndef USE_SML_M
#define USE_SML_M
#endif
#ifdef USE_RULES
#undef USE_RULES
#endif
#ifndef USE_SML_SCRIPT_CMD
#define USE_SML_SCRIPT_CMD
#endif
#ifndef USE_GOOGLE_CHARTS
#define USE_GOOGLE_CHARTS
#endif
#ifndef LARGE_ARRAYS
#define LARGE_ARRAYS
#endif
#ifndef USE_SCRIPT_WEB_DISPLAY
#define USE_SCRIPT_WEB_DISPLAY
#endif
//-- DWS74 Bugfix (bei negativen Werten <650W) und "1,=so2,1" im Skript eingeben
#ifndef USE_SML_SPECOPT
#define USE_SML_SPECOPT
#endif
//-- Verwende Home Assistant API
#ifndef USE_HOME_ASSISTANT
#define USE_HOME_ASSISTANT
#endif
//-- ESP8266: WENN IHR 1M FLASHSPEICHER HABT
#ifndef USE_EEPROM
#define USE_EEPROM
#endif
#define EEP_SCRIPT_SIZE 8192
// Dark theme
// WebColor {"WebColor":["#eaeaea","#252525","#4f4f4f","#000","#ddd","#65c115","#1f1f1f","#ff5661","#008000","#faffff","#1fa3ec","#0e70a4","#d43535","#931f1f","#47c266","#5aaf6f","#faffff","#999","#eaeaea"]}
#define COLOR_TEXT "#eaeaea" // [WebColor1] Global text color - Very light gray
#define COLOR_BACKGROUND "#252525" // [WebColor2] Global background color - Very dark gray (mostly black)
#define COLOR_FORM "#4f4f4f" // [WebColor3] Form background color - Very dark gray
#define COLOR_INPUT_TEXT "#000" // [WebColor4] Input text color - Black
#define COLOR_INPUT "#ddd" // [WebColor5] Input background color - Very light gray
#define COLOR_CONSOLE_TEXT "#65c115" // [WebColor6] Console text color - Strong Green
#define COLOR_CONSOLE "#1f1f1f" // [WebColor7] Console background color - Very dark gray (mostly black)
#define COLOR_TEXT_WARNING "#ff5661" // [WebColor8] Warning text color - Brick Red
#define COLOR_TEXT_SUCCESS "#008000" // [WebColor9] Success text color - Dark lime green
#define COLOR_BUTTON_TEXT "#faffff" // [WebColor10] Button text color - Very pale (mostly white) cyan
#define COLOR_BUTTON "#1fa3ec" // [WebColor11] Button color - Vivid blue
#define COLOR_BUTTON_HOVER "#0e70a4" // [WebColor12] Button color when hovered over - Dark blue
#define COLOR_BUTTON_RESET "#d43535" // [WebColor13] Restart/Reset/Delete button color - Strong red
#define COLOR_BUTTON_RESET_HOVER "#931f1f" // [WebColor14] Restart/Reset/Delete button color when hovered over - Dark red
#define COLOR_BUTTON_SAVE "#47c266" // [WebColor15] Save button color - Moderate lime green
#define COLOR_BUTTON_SAVE_HOVER "#5aaf6f" // [WebColor16] Save button color when hovered over - Dark moderate lime green
#define COLOR_TIMER_TAB_TEXT "#faffff" // [WebColor17] Config timer tab text color - Very pale (mostly white) cyan.
#define COLOR_TIMER_TAB_BACKGROUND "#999" // [WebColor18] Config timer tab background color - Dark gray
#define COLOR_TITLE_TEXT "#eaeaea" // [WebColor19] Title text color - Very light gray
#endif // _USER_CONFIG_OVERRIDE_H_