diff --git a/src/core/analogsensor.cpp b/src/core/analogsensor.cpp index 735681aad..2e3ff3dfe 100644 --- a/src/core/analogsensor.cpp +++ b/src/core/analogsensor.cpp @@ -23,6 +23,7 @@ namespace emsesp { uuid::log::Logger AnalogSensor::logger_{F_(analogsensor), uuid::log::Facility::DAEMON}; +#ifndef EMSESP_STANDALONE portMUX_TYPE mux = portMUX_INITIALIZER_UNLOCKED; unsigned long AnalogSensor::edge[] = {0, 0, 0}; unsigned long AnalogSensor::edgecnt[] = {0, 0, 0}; @@ -45,6 +46,7 @@ void IRAM_ATTR AnalogSensor::freqIrq2() { edge[2] = micros(); portEXIT_CRITICAL_ISR(&mux); } +#endif void AnalogSensor::start(const bool factory_settings) { // if (factory_settings && EMSESP::nvs_.getString("boot").equals("E32V2_2") && EMSESP::nvs_.getString("hwrevision").equals("3.0")) { @@ -228,6 +230,7 @@ void AnalogSensor::reload(bool get_nvs) { sensor.set_offset(0); sensor.set_value(0); publish_sensor(sensor); +#ifndef EMSESP_STANDALONE } else if (sensor.type() >= AnalogType::FREQ_0 && sensor.type() <= AnalogType::FREQ_2) { LOG_DEBUG("Frequency on GPIO %02d", sensor.gpio()); pinMode(sensor.gpio(), INPUT_PULLUP); @@ -238,6 +241,7 @@ void AnalogSensor::reload(bool get_nvs) { attachInterrupt(sensor.gpio(), index == 0 ? freqIrq0 : index == 1 ? freqIrq1 : freqIrq2, FALLING); lastedge[index] = edge[index] = micros(); edgecnt[index] = 0; +#endif } else if (sensor.type() == AnalogType::DIGITAL_IN) { LOG_DEBUG("Digital Read on GPIO %02d", sensor.gpio()); pinMode(sensor.gpio(), INPUT_PULLUP); @@ -369,6 +373,7 @@ void AnalogSensor::measure() { changed_ = true; publish_sensor(sensor); } +#ifndef EMSESP_STANDALONE } else if (sensor.type() >= AnalogType::FREQ_0 && sensor.type() <= AnalogType::FREQ_2) { auto index = sensor.type() - AnalogType::FREQ_0; auto oldval = sensor.value(); @@ -386,6 +391,7 @@ void AnalogSensor::measure() { changed_ = true; publish_sensor(sensor); } +#endif } } } diff --git a/src/core/analogsensor.h b/src/core/analogsensor.h index 18b400a1f..7125a2b3b 100644 --- a/src/core/analogsensor.h +++ b/src/core/analogsensor.h @@ -195,12 +195,14 @@ class AnalogSensor { uint32_t sensorfails_ = 0; uint32_t sensorreads_ = 0; +#ifndef EMSESP_STANDALONE static void IRAM_ATTR freqIrq0(); static void IRAM_ATTR freqIrq1(); static void IRAM_ATTR freqIrq2(); static unsigned long edge[3]; static unsigned long edgecnt[3]; unsigned long lastedge[3] = {0, 0, 0}; +#endif }; } // namespace emsesp diff --git a/src/core/shuntingYard.cpp b/src/core/shuntingYard.cpp index 4ee8c30bf..5cb262f50 100644 --- a/src/core/shuntingYard.cpp +++ b/src/core/shuntingYard.cpp @@ -518,7 +518,7 @@ std::string calculate(const std::string & expr) { #ifndef EMSESP_STANDALONE stack.push_back(to_string(rhd * esp_random() / UINT32_MAX)); #else - stack.push_back(to_string(rhd * random())); + stack.push_back(to_string(rhd * rand() / RAND_MAX)); #endif break; }