Skip to content

Commit

Permalink
Merge pull request #1530 from proddy/dev
Browse files Browse the repository at this point in the history
minor changes
  • Loading branch information
proddy authored Dec 28, 2023
2 parents 62b341a + 3a92d69 commit 0fce450
Show file tree
Hide file tree
Showing 13 changed files with 80 additions and 68 deletions.
56 changes: 29 additions & 27 deletions interface/src/project/DashboardDevices.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -420,33 +420,35 @@ const DashboardDevices: FC = () => {
<MessageBox my={2} level="warning" message={LL.EMS_BUS_SCANNING()} />
)}

<Table data={{ nodes: coreData.devices }} select={device_select} theme={device_theme} layout={{ custom: true }}>
{(tableList: any) => (
<>
<Header>
<HeaderRow>
<HeaderCell stiff />
<HeaderCell resize>{LL.DESCRIPTION()}</HeaderCell>
<HeaderCell stiff>{LL.TYPE(0)}</HeaderCell>
</HeaderRow>
</Header>
<Body>
{tableList.map((device: Device) => (
<Row key={device.id} item={device}>
<Cell stiff>
<DeviceIcon type_id={device.t} />
</Cell>
<Cell>
{device.n}
<span style={{ color: 'lightblue' }}>&nbsp;&nbsp;({device.e})</span>
</Cell>
<Cell stiff>{device.tn}</Cell>
</Row>
))}
</Body>
</>
)}
</Table>
{coreData.connected && (
<Table data={{ nodes: coreData.devices }} select={device_select} theme={device_theme} layout={{ custom: true }}>
{(tableList: any) => (
<>
<Header>
<HeaderRow>
<HeaderCell stiff />
<HeaderCell resize>{LL.DESCRIPTION()}</HeaderCell>
<HeaderCell stiff>{LL.TYPE(0)}</HeaderCell>
</HeaderRow>
</Header>
<Body>
{tableList.map((device: Device) => (
<Row key={device.id} item={device}>
<Cell stiff>
<DeviceIcon type_id={device.t} />
</Cell>
<Cell>
{device.n}
<span style={{ color: 'lightblue' }}>&nbsp;&nbsp;({device.e})</span>
</Cell>
<Cell stiff>{device.tn}</Cell>
</Row>
))}
</Body>
</>
)}
</Table>
)}
</IconContext.Provider>
);

Expand Down
2 changes: 1 addition & 1 deletion interface/src/project/Help.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ const Help: FC = () => {
{'github.com/emsesp/EMS-ESP32'}
</Link>
</Typography>
<Typography color="white" align="center">
<Typography color="white" variant="subtitle2" align="center">
@proddy @MichaelDvP
</Typography>
</Box>
Expand Down
5 changes: 4 additions & 1 deletion lib/framework/FSPersistence.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,10 @@ class FSPersistence {
return false;
}

// serialize the data to the file
// serialize the data to the file
#ifdef EMSESP_DEBUG
Serial.println("Writing settings to " + String(_filePath));
#endif
serializeJson(jsonDocument, settingsFile);
settingsFile.close();
return true;
Expand Down
2 changes: 1 addition & 1 deletion src/devices/thermostat.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4226,7 +4226,7 @@ void Thermostat::register_device_values() {

#if defined(EMSESP_STANDALONE_DUMP)
// if we're just dumping out values, create a single dummy hc
register_device_values_hc(std::make_shared<emsesp::Thermostat::HeatingCircuit>(1, this->model())); // hc=1
register_device_values_hc(std::make_shared<Thermostat::HeatingCircuit>(1, this->model())); // hc=1
#endif
}

Expand Down
2 changes: 1 addition & 1 deletion src/emsdevice.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1755,7 +1755,7 @@ void EMSdevice::mqtt_ha_entity_config_create() {
}
#ifndef EMSESP_STANDALONE
// always create minimum one config
if (ESP.getMaxAllocHeap() < (6 * 1024) || (!emsesp::EMSESP::system_.PSram() && ESP.getFreeHeap() < (65 * 1024))) {
if (ESP.getMaxAllocHeap() < (6 * 1024) || (!EMSESP::system_.PSram() && ESP.getFreeHeap() < (65 * 1024))) {
break;
}
#endif
Expand Down
6 changes: 3 additions & 3 deletions src/emsesp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1153,7 +1153,7 @@ bool EMSESP::add_device(const uint8_t device_id, const uint8_t product_id, const
emsdevices.back()->unique_id(++unique_id_count_);

// sort devices based on type
std::sort(emsdevices.begin(), emsdevices.end(), [](const std::unique_ptr<emsesp::EMSdevice> & a, const std::unique_ptr<emsesp::EMSdevice> & b) {
std::sort(emsdevices.begin(), emsdevices.end(), [](const std::unique_ptr<EMSdevice> & a, const std::unique_ptr<EMSdevice> & b) {
return a->device_type() < b->device_type();
});

Expand Down Expand Up @@ -1394,7 +1394,7 @@ void EMSESP::scheduled_fetch_values() {
EMSESP::EMSESP()
#ifndef EMSESP_STANDALONE
: telnet_([this](Stream & stream, const IPAddress & addr, uint16_t port) -> std::shared_ptr<uuid::console::Shell> {
return std::make_shared<emsesp::EMSESPConsole>(*this, stream, addr, port);
return std::make_shared<EMSESPConsole>(*this, stream, addr, port);
})
#endif
{
Expand All @@ -1421,7 +1421,7 @@ void EMSESP::start() {
// start the file system
#ifndef EMSESP_STANDALONE
if (!LittleFS.begin(true)) {
Serial.println("LittleFS Mount Failed. EMS-ESP stopped.");
Serial.println("LittleFS Mount Failed. Using default settings.");
return;
}
#endif
Expand Down
12 changes: 6 additions & 6 deletions src/emsesp.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*
* EMS-ESP - https://github.com/emsesp/EMS-ESP
* Copyright 2020-2023 Paul Derbyshire
*
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
Expand Down Expand Up @@ -83,11 +83,11 @@

namespace emsesp {

using DeviceValueUOM = emsesp::DeviceValue::DeviceValueUOM;
using DeviceValueType = emsesp::DeviceValue::DeviceValueType;
using DeviceValueState = emsesp::DeviceValue::DeviceValueState;
using DeviceValueTAG = emsesp::DeviceValue::DeviceValueTAG;
using DeviceValueNumOp = emsesp::DeviceValue::DeviceValueNumOp;
using DeviceValueUOM = DeviceValue::DeviceValueUOM;
using DeviceValueType = DeviceValue::DeviceValueType;
using DeviceValueState = DeviceValue::DeviceValueState;
using DeviceValueTAG = DeviceValue::DeviceValueTAG;
using DeviceValueNumOp = DeviceValue::DeviceValueNumOp;

// forward declarations for compiler
class EMSESPShell;
Expand Down
6 changes: 4 additions & 2 deletions src/main.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*
* EMS-ESP - https://github.com/emsesp/EMS-ESP
* Copyright 2020-2023 Paul Derbyshire
*
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
Expand All @@ -18,7 +18,9 @@

#include "emsesp.h"

static emsesp::EMSESP application;
using namespace emsesp;

static EMSESP application; // the main application

void setup() {
application.start();
Expand Down
12 changes: 6 additions & 6 deletions src/shower.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -211,9 +211,9 @@ void Shower::set_shower_state(bool state, bool force) {
}

JsonObject dev = doc.createNestedObject("dev");
dev["name"] = "EMS-ESP";
dev["name"] = "EMS-ESP Shower";
JsonArray ids = dev.createNestedArray("ids");
ids.add(Mqtt::basename());
ids.add(Mqtt::basename() + "-shower");

Mqtt::add_avty_to_doc(stat_t, doc.as<JsonObject>()); // add "availability" section

Expand Down Expand Up @@ -241,9 +241,9 @@ void Shower::set_shower_state(bool state, bool force) {
// doc["ent_cat"] = "diagnostic";

JsonObject dev2 = doc.createNestedObject("dev");
dev2["name"] = "EMS-ESP";
dev2["name"] = "EMS-ESP Shower";
JsonArray ids2 = dev2.createNestedArray("ids");
ids2.add(Mqtt::basename());
ids2.add(Mqtt::basename() + "-shower");

Mqtt::add_avty_to_doc(stat_t, doc.as<JsonObject>(), "value_json.duration is defined"); // add "availability" section

Expand All @@ -268,9 +268,9 @@ void Shower::set_shower_state(bool state, bool force) {
// doc["ent_cat"] = "diagnostic";

JsonObject dev3 = doc.createNestedObject("dev");
dev3["name"] = "EMS-ESP";
dev3["name"] = "EMS-ESP Shower";
JsonArray ids3 = dev3.createNestedArray("ids");
ids3.add(Mqtt::basename());
ids3.add(Mqtt::basename() + "-shower");

Mqtt::add_avty_to_doc(stat_t, doc.as<JsonObject>(), "value_json.timestamp is defined"); // add "availability" section

Expand Down
33 changes: 19 additions & 14 deletions src/system.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1111,34 +1111,28 @@ bool System::check_upgrade(bool factory_settings) {

#if defined(EMSESP_DEBUG)
if (!missing_version) {
LOG_INFO("Current version from settings is %d.%d.%d-%s",
LOG_INFO("Checking version (settings has %d.%d.%d-%s)...",
settings_version.major(),
settings_version.minor(),
settings_version.patch(),
settings_version.prerelease().c_str());
}
#endif

// always save the new version to the settings
EMSESP::webSettingsService.update(
[&](WebSettings & settings) {
settings.version = EMSESP_APP_VERSION;
return StateUpdateResult::CHANGED;
},
"local");

if (factory_settings) {
return false; // fresh install, do nothing
}

version::Semver200_version this_version(EMSESP_APP_VERSION);

bool save_version = true;

// compare versions
bool reboot_required = false;
if (this_version > settings_version) {
// need upgrade
LOG_NOTICE("Upgrading to version %d.%d.%d-%s", this_version.major(), this_version.minor(), this_version.patch(), this_version.prerelease().c_str());

// if we're coming from 3.4.4 or 3.5.0b14 then we need to apply new settings
// if we're coming from 3.4.4 or 3.5.0b14 which had no version stored then we need to apply new settings
if (missing_version) {
LOG_DEBUG("Setting MQTT Entity ID format to v3.4 format");
EMSESP::esp8266React.getMqttSettingsService()->update(
Expand All @@ -1148,15 +1142,26 @@ bool System::check_upgrade(bool factory_settings) {
},
"local");
}

} else if (this_version < settings_version) {
// need downgrade
LOG_NOTICE("Downgrading to version %d.%d.%d-%s", this_version.major(), this_version.minor(), this_version.patch(), this_version.prerelease().c_str());
} else {
// same version, do nothing
return false;
save_version = false;
}

return reboot_required;
// if we did a change, set the new version and reboot
if (save_version) {
EMSESP::webSettingsService.update(
[&](WebSettings & settings) {
settings.version = EMSESP_APP_VERSION;
return StateUpdateResult::CHANGED;
},
"local");
return true; // need reboot
}

return false;
}

// list commands
Expand Down
4 changes: 2 additions & 2 deletions src/temperaturesensor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -544,9 +544,9 @@ void TemperatureSensor::publish_values(const bool force) {
config["name"] = name;

JsonObject dev = config.createNestedObject("dev");
dev["name"] = Mqtt::basename();
dev["name"] = Mqtt::basename() + " Temperature";
JsonArray ids = dev.createNestedArray("ids");
ids.add(Mqtt::basename());
ids.add(Mqtt::basename() + "-temperature");

// add "availability" section
Mqtt::add_avty_to_doc(stat_t, config.as<JsonObject>(), val_cond);
Expand Down
4 changes: 2 additions & 2 deletions src/web/WebCustomEntityService.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -427,9 +427,9 @@ void WebCustomEntityService::publish(const bool force) {
}
}
JsonObject dev = config.createNestedObject("dev");
dev["name"] = Mqtt::basename();
dev["name"] = Mqtt::basename() + " Custom";
JsonArray ids = dev.createNestedArray("ids");
ids.add(Mqtt::basename());
ids.add(Mqtt::basename() + "-custom");

// add "availability" section
Mqtt::add_avty_to_doc(stat_t, config.as<JsonObject>(), val_cond);
Expand Down
4 changes: 2 additions & 2 deletions src/web/WebSchedulerService.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -288,9 +288,9 @@ void WebSchedulerService::publish(const bool force) {
}

JsonObject dev = config.createNestedObject("dev");
dev["name"] = Mqtt::basename();
dev["name"] = Mqtt::basename() + " Scheduler";
JsonArray ids = dev.createNestedArray("ids");
ids.add(Mqtt::basename());
ids.add(Mqtt::basename() + "-scheduler");

// add "availability" section
Mqtt::add_avty_to_doc(stat_t, config.as<JsonObject>(), val_cond);
Expand Down

0 comments on commit 0fce450

Please sign in to comment.