iot-heater/lib/settings/settings.cpp

79 lines
1.4 KiB
C++
Raw Permalink Normal View History

2023-02-19 13:16:00 +00:00
#include "settings.h"
#include <EEPROM.h>
Settings::Settings() {
refreshInterval = 1000;
sensorPin = 26;
2023-03-27 12:50:35 +00:00
onTemp = 26.0;
onHum = 60.0;
tempOffset = 2.0;
humOffset = -2.0;
heaterOn = false;
dehumOn = false;
2023-02-19 13:16:00 +00:00
}
void Settings::load() {
EEPROM.begin(sizeof(Settings));
EEPROM.get(0, *this);
}
void Settings::save() {
EEPROM.put(0, *this);
EEPROM.commit();
}
void Settings::setRefreshInterval(unsigned long refreshInterval) {
this->refreshInterval = refreshInterval;
save();
}
long Settings::getRefreshInterval() { return refreshInterval; }
void Settings::setSensorPin(unsigned int sensorPin) {
this->sensorPin = sensorPin;
save();
}
2023-03-27 12:50:35 +00:00
unsigned int Settings::getSensorPin() { return sensorPin; }
void Settings::setOnTemp(float temp) {
onTemp = temp;
save();
}
float Settings::getOnTemp() { return onTemp; }
void Settings::setOnHum(float hum) {
onHum = hum;
save();
}
float Settings::getOnHum() { return onHum; }
void Settings::setTempOffset(float temp) {
tempOffset = temp;
save();
}
float Settings::getTempOffset() { return tempOffset; }
void Settings::setHumOffset(float hum) {
humOffset = hum;
save();
}
float Settings::getHumOffset() { return humOffset; }
void Settings::setHeaterOn(bool on) {
heaterOn = on;
save();
}
bool Settings::getHeaterOn() { return heaterOn; }
void Settings::setDehumOn(bool on) {
dehumOn = on;
save();
}
bool Settings::getDehumOn() { return dehumOn; }