#ifndef __CONFIG_H__ #define __CONFIG_H__ #define SENSOR_TEMPERATURE 0 #define SENSOR_HUMIDITY 1 #define SENSOR_LIGHT 2 #define SENSOR_WINDSPEED 3 #define SENSOR_PRESSURE 4 #define SENSOR_BAT_VOLTAGE 5 #define SENSOR_ESAVEMODE 6 #define SENSOR_BATCHARGESTATE 7 #define BAT_CHARGE_STATE_CHARGED 2.0 #define BAT_CHARGE_STATE_CHARGING 1.0 #define BAT_CHARGE_STATE_NOTCHARGING 0.0 #define ENERGY_SAVE_MODE_ENABLED 1.0 #define ENERGY_SAVE_MODE_DISABLED 0.0 #define WIFI_AUTOCONNECT_TIMEOUT_S 120 #define WIFI_CONFIG_PORTAL_TIMEOUT_S 120 #define UPDATE_SENSOR_INTERVAL_S 300 #define UPDATE_WEBSERVER_INTVERVAL_S 1 // Do not change, bigger values will prevent using webupdater webinterface #define DELAY_LOOP_MS 50 #define POWERSAVING_SLEEP_S 600 #define EMERGENCY_SLEEP_S 172800 // Sleep for 2 days to recover #define RESET_ESP_TIME_INTERVAL_MS 3600000 #define WIND_SENSOR_MEAS_TIME_S 15.0 #define ENERGY_SAVING_ITERATIONS 30 #define WIFI_MINIMUM_SIGNAL_QUALITY 10 // percent // thingiverse anomometer settings: https://www.thingiverse.com/thing:2559929/files #define ROTOR_LENGTH_CM 8.25 #define ROTOR_LENGTH_M (ROTOR_LENGTH_CM / 100.0) //#define ROTOR_LENGTH_KM (ROTOR_LENGTH_M / 1000.0) // configuration example for generalization //#define SEC_TO_HOUR_FACTOR (60.0 * 60.0) // configuration example for generalization #define MPS_CORRECT_FACT 9.28 //#define COUNT_TO_KMH ((TWO_PI * ROTOR_LENGTH_KM / WIND_SENSOR_MEAS_TIME_S) * SEC_TO_HOUR_FACTOR) // configuration exampe for generalization #define COUNT_TO_MPS (TWO_PI * ROTOR_LENGTH_M / WIND_SENSOR_MEAS_TIME_S) // only this define is used for calculation, all other before are only used to describe the math v_wind = correction_factor * rotations * 2 * pi * radius / time_of_measurement_in_sec // and if required the result has t be multiplied by another factor to convert it from m/s #define WINDSPEED_FACTOR (COUNT_TO_MPS * MPS_CORRECT_FACT) // china aliexpress anemometer settings (calculation unknown) //#define WINDSPEED_FACTOR 2.4 // enable HTTP_CALL_ON_WINDSPEED_EXCEED in config_user.h to enable this feature #define HTTP_CALL_ON_WINDSPEED_EXCEED_MPS 5.0 // 5.0 m/s == 18 km/h #define HTTP_CALL_ON_WINDSPEED_INTERVAL_S 60 // it's required to be bigger than WIND_SENSOR_MEAS_TIME_S #define HTTP_CALL_ON_WINDSPEED_URL "http://192.168.178.100:3001/button-windspeedexceed?event=click" #define BAT_LOW_VOLTAGE 3.6 #define BAT_EMERGENCY_DEEPSLEEP_VOLTAGE 3.5 #define SEALEVELPRESSURE_HPA (1013.25) #define STATUS_LED_PIN LED_BUILTIN #define ANEMOMETER_PIN D7 #ifndef BAT_PINS_D34 #define BAT_CHARGED_PIN D6 #define BAT_CHARGING_PIN D5 #else #define BAT_CHARGED_PIN D3 #define BAT_CHARGING_PIN D4 #endif #define BME_SCK 13 #define BME_MISO 12 #define BME_MOSI 11 #define BME_CS 10 #define BME_ADDRESS 0x76 #define INITIAL_WEBSERVER_TIME 20 #define WEB_UPDATER_HTTP_PORT 8080 #endif