mirror of
https://github.com/Laxilef/OTGateway.git
synced 2025-12-27 10:33:37 +05:00
Compare commits
2 Commits
1.5.3
...
80b91d9a01
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
80b91d9a01 | ||
|
|
25b70e4db5 |
@@ -55,7 +55,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef DEFAULT_HOSTNAME
|
#ifndef DEFAULT_HOSTNAME
|
||||||
#define DEFAULT_HOSTNAME "opentherm"
|
#define DEFAULT_HOSTNAME ""
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef DEFAULT_AP_SSID
|
#ifndef DEFAULT_AP_SSID
|
||||||
@@ -111,7 +111,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef DEFAULT_MQTT_PREFIX
|
#ifndef DEFAULT_MQTT_PREFIX
|
||||||
#define DEFAULT_MQTT_PREFIX "opentherm"
|
#define DEFAULT_MQTT_PREFIX ""
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef DEFAULT_OT_IN_GPIO
|
#ifndef DEFAULT_OT_IN_GPIO
|
||||||
|
|||||||
12
src/main.cpp
12
src/main.cpp
@@ -102,6 +102,12 @@ void setup() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// generate hostname if it is empty
|
||||||
|
if (!strlen(networkSettings.hostname)) {
|
||||||
|
strcpy(networkSettings.hostname, getChipId("otgateway-").c_str());
|
||||||
|
fsNetworkSettings.update();
|
||||||
|
}
|
||||||
|
|
||||||
network = (new NetworkMgr)
|
network = (new NetworkMgr)
|
||||||
->setHostname(networkSettings.hostname)
|
->setHostname(networkSettings.hostname)
|
||||||
->setStaCredentials(
|
->setStaCredentials(
|
||||||
@@ -148,6 +154,12 @@ void setup() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// generate mqtt prefix if it is empty
|
||||||
|
if (!strlen(settings.mqtt.prefix)) {
|
||||||
|
strcpy(settings.mqtt.prefix, getChipId("otgateway_").c_str());
|
||||||
|
fsSettings.update();
|
||||||
|
}
|
||||||
|
|
||||||
// Logs settings
|
// Logs settings
|
||||||
if (!settings.system.serial.enabled) {
|
if (!settings.system.serial.enabled) {
|
||||||
Serial.end();
|
Serial.end();
|
||||||
|
|||||||
34
src/utils.h
34
src/utils.h
@@ -1,5 +1,37 @@
|
|||||||
#include <Arduino.h>
|
#include <Arduino.h>
|
||||||
|
|
||||||
|
String getChipId(const char* prefix = nullptr, const char* suffix = nullptr) {
|
||||||
|
String chipId;
|
||||||
|
chipId.reserve(
|
||||||
|
6
|
||||||
|
+ (prefix != nullptr ? strlen(prefix) : 0)
|
||||||
|
+ (suffix != nullptr ? strlen(suffix) : 0)
|
||||||
|
);
|
||||||
|
|
||||||
|
if (prefix != nullptr) {
|
||||||
|
chipId.concat(prefix);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t cid = 0;
|
||||||
|
#if defined(ARDUINO_ARCH_ESP8266)
|
||||||
|
cid = ESP.getChipId();
|
||||||
|
#elif defined(ARDUINO_ARCH_ESP32)
|
||||||
|
// https://github.com/espressif/arduino-esp32/blob/master/libraries/ESP32/examples/ChipID/GetChipID/GetChipID.ino
|
||||||
|
for (uint8_t i = 0; i < 17; i = i + 8) {
|
||||||
|
cid |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
chipId += String(cid, HEX);
|
||||||
|
|
||||||
|
if (suffix != nullptr) {
|
||||||
|
chipId.concat(suffix);
|
||||||
|
}
|
||||||
|
|
||||||
|
chipId.trim();
|
||||||
|
return chipId;
|
||||||
|
}
|
||||||
|
|
||||||
bool isLeapYear(short year) {
|
bool isLeapYear(short year) {
|
||||||
if (year % 4 != 0) {
|
if (year % 4 != 0) {
|
||||||
return false;
|
return false;
|
||||||
@@ -1791,7 +1823,7 @@ bool jsonToSensorSettings(const uint8_t sensorId, const JsonVariantConst src, Se
|
|||||||
if (!src[FPSTR(S_FACTOR)].isNull()) {
|
if (!src[FPSTR(S_FACTOR)].isNull()) {
|
||||||
float value = src[FPSTR(S_FACTOR)].as<float>();
|
float value = src[FPSTR(S_FACTOR)].as<float>();
|
||||||
|
|
||||||
if (value > 0.09f && value <= 10.0f && fabsf(value - dst.factor) > 0.0001f) {
|
if (value > 0.09f && value <= 100.0f && fabsf(value - dst.factor) > 0.0001f) {
|
||||||
dst.factor = roundf(value, 3);
|
dst.factor = roundf(value, 3);
|
||||||
changed = true;
|
changed = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -140,7 +140,7 @@
|
|||||||
|
|
||||||
<label>
|
<label>
|
||||||
<span data-i18n>sensors.correction.factor</span>
|
<span data-i18n>sensors.correction.factor</span>
|
||||||
<input type="number" inputmode="decimal" name="factor" min="0.01" max="10" step="0.01" required>
|
<input type="number" inputmode="decimal" name="factor" min="0.01" max="100" step="0.01" required>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</details>
|
</details>
|
||||||
|
|||||||
Reference in New Issue
Block a user