6#define STATUS_LED_PIN 2
19#define LED_FAST_BLINK_MS 100
20#define LED_SLOW_BLINK_MS 500
21#define WIFI_MAX_ATTEMPTS 20
22#define WIFI_RETRY_DELAY_MS 500
23#define BUTTON_HOLD_TIME_MS 2000
24#define CONFIG_SAVE_DELAY_MS 2000
25#define WATCHDOG_TIMEOUT_SEC 30
26#define OTA_WATCHDOG_TIMEOUT_SEC 60
39#define JXCT_MODBUS_ID 1
42#define WIFI_AP_SSID "JXCT-Setup"
43#define WIFI_AP_PASS "12345678"
46#include <Preferences.h>
59 char mqttPassword[24];
60 char mqttTopicPrefix[48];
61 char mqttDeviceName[24];
65 char thingSpeakApiKey[24];
66 char thingSpeakChannelId[12];
67 uint16_t thingspeakInterval;
70 char manufacturer[24];
76 uint32_t ntpUpdateInterval;
85 uint32_t sensorReadInterval;
86 uint32_t mqttPublishInterval;
87 uint32_t thingSpeakInterval;
88 uint32_t webUpdateInterval;
91 float deltaTemperature;
98 uint8_t movingAverageWindow;
99 uint8_t forcePublishCycles;
100 uint8_t filterAlgorithm;
101 uint8_t outlierFilterEnabled;
112 float irrigationSpikeThreshold;
113 uint16_t irrigationHoldMinutes;
114 uint16_t postIrrigationHoldMinutes;
117 uint8_t environmentType;
120 float exponentialAlpha;
121 float outlierThreshold;
122 uint8_t kalmanEnabled;
123 uint8_t adaptiveFiltering;
126 float temperatureOffset;
127 float humidityOffset;
138 uint8_t hassEnabled : 1;
139 uint8_t useRealSensor : 1;
140 uint8_t mqttEnabled : 1;
141 uint8_t thingSpeakEnabled : 1;
142 uint8_t compensationEnabled : 1;
143 uint8_t isGreenhouse : 1;
144 uint8_t seasonalAdjustEnabled : 1;
145 uint8_t autoOtaEnabled : 1;
constexpr unsigned char FORCE_PUBLISH_CYCLES
Definition jxct_config_vars.h:35
constexpr float DELTA_HUMIDITY
Definition jxct_config_vars.h:31
constexpr float DELTA_PH
Definition jxct_config_vars.h:32
constexpr unsigned long WEB_UPDATE_INTERVAL
Definition jxct_config_vars.h:14
struct __attribute__((packed)) Config
Definition jxct_config_vars.h:49
Config config
Definition config.cpp:38
constexpr float DELTA_EC
Definition jxct_config_vars.h:33
constexpr float DELTA_NPK
Definition jxct_config_vars.h:34
void saveConfig()
Definition config.cpp:234
Preferences preferences
Definition config.cpp:39
void resetConfig()
Definition config.cpp:334
constexpr unsigned long SENSOR_READ_INTERVAL
Definition jxct_config_vars.h:10
constexpr unsigned long MQTT_PUBLISH_INTERVAL
Definition jxct_config_vars.h:12
constexpr unsigned long THINGSPEAK_INTERVAL
Definition jxct_config_vars.h:13
constexpr float DELTA_TEMPERATURE
Definition jxct_config_vars.h:30
void loadConfig()
Definition config.cpp:43
bool isConfigValid()
Definition config.cpp:432