mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-26 04:06:34 +00:00
refactor dtostrfd
This commit is contained in:
parent
a3f5d5ce2c
commit
5b375acdd2
@ -1219,29 +1219,15 @@ int ResponseAppendTime(void)
|
|||||||
return ResponseAppendTimeFormat(Settings.flag2.time_format);
|
return ResponseAppendTimeFormat(Settings.flag2.time_format);
|
||||||
}
|
}
|
||||||
|
|
||||||
// int ResponseAppendTHD(float f_temperature, float f_humidity)
|
|
||||||
// {
|
|
||||||
// char temperature[FLOATSZ];
|
|
||||||
// dtostrfd(f_temperature, Settings.flag2.temperature_resolution, temperature);
|
|
||||||
// char humidity[FLOATSZ];
|
|
||||||
// dtostrfd(f_humidity, Settings.flag2.humidity_resolution, humidity);
|
|
||||||
// char dewpoint[FLOATSZ];
|
|
||||||
// dtostrfd(CalcTempHumToDew(f_temperature, f_humidity), Settings.flag2.temperature_resolution, dewpoint);
|
|
||||||
|
|
||||||
// return ResponseAppend_P(PSTR("\"" D_JSON_TEMPERATURE "\":%s,\"" D_JSON_HUMIDITY "\":%s,\"" D_JSON_DEWPOINT "\":%s"), temperature, humidity, dewpoint);
|
|
||||||
// }
|
|
||||||
|
|
||||||
int ResponseAppendTHD(float f_temperature, float f_humidity)
|
int ResponseAppendTHD(float f_temperature, float f_humidity)
|
||||||
{
|
{
|
||||||
float dewpoint = CalcTempHumToDew(f_temperature, f_humidity);
|
float dewpoint = CalcTempHumToDew(f_temperature, f_humidity);
|
||||||
|
|
||||||
return ResponseAppend_P(PSTR("\"" D_JSON_TEMPERATURE "\":%*_f,\"" D_JSON_HUMIDITY "\":%*_f,\"" D_JSON_DEWPOINT "\":%*_f"),
|
return ResponseAppend_P(PSTR("\"" D_JSON_TEMPERATURE "\":%*_f,\"" D_JSON_HUMIDITY "\":%*_f,\"" D_JSON_DEWPOINT "\":%*_f"),
|
||||||
Settings.flag2.temperature_resolution, &f_temperature,
|
Settings.flag2.temperature_resolution, &f_temperature,
|
||||||
Settings.flag2.humidity_resolution, &f_humidity,
|
Settings.flag2.humidity_resolution, &f_humidity,
|
||||||
Settings.flag2.temperature_resolution, &dewpoint);
|
Settings.flag2.temperature_resolution, &dewpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int ResponseJsonEnd(void)
|
int ResponseJsonEnd(void)
|
||||||
{
|
{
|
||||||
return ResponseAppend_P(PSTR("}"));
|
return ResponseAppend_P(PSTR("}"));
|
||||||
|
@ -225,9 +225,7 @@ void EnergyUpdateToday(void)
|
|||||||
|
|
||||||
void EnergyUpdateTotal(float value, bool kwh)
|
void EnergyUpdateTotal(float value, bool kwh)
|
||||||
{
|
{
|
||||||
// char energy_total_chr[FLOATSZ];
|
// AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: Energy Total %4_f %sWh"), &value, (kwh) ? "k" : "");
|
||||||
// dtostrfd(value, 4, energy_total_chr);
|
|
||||||
// AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: Energy Total %s %sWh"), energy_total_chr, (kwh) ? "k" : "");
|
|
||||||
|
|
||||||
uint32_t multiplier = (kwh) ? 100000 : 100; // kWh or Wh to deca milli Wh
|
uint32_t multiplier = (kwh) ? 100000 : 100; // kWh or Wh to deca milli Wh
|
||||||
|
|
||||||
@ -476,9 +474,7 @@ void EnergyMarginCheck(void)
|
|||||||
}
|
}
|
||||||
else if ((1 == Energy.max_energy_state ) && (energy_daily_u >= Settings.energy_max_energy)) {
|
else if ((1 == Energy.max_energy_state ) && (energy_daily_u >= Settings.energy_max_energy)) {
|
||||||
Energy.max_energy_state = 2;
|
Energy.max_energy_state = 2;
|
||||||
char stemp[FLOATSZ];
|
ResponseTime_P(PSTR(",\"" D_JSON_MAXENERGYREACHED "\":%3_f}"), &Energy.daily);
|
||||||
dtostrfd(Energy.daily, 3, stemp);
|
|
||||||
ResponseTime_P(PSTR(",\"" D_JSON_MAXENERGYREACHED "\":%s}"), stemp);
|
|
||||||
MqttPublishPrefixTopic_P(STAT, S_RSLT_WARNING);
|
MqttPublishPrefixTopic_P(STAT, S_RSLT_WARNING);
|
||||||
EnergyMqttShow();
|
EnergyMqttShow();
|
||||||
SetAllPower(POWER_ALL_OFF, SRC_MAXENERGY);
|
SetAllPower(POWER_ALL_OFF, SRC_MAXENERGY);
|
||||||
@ -507,9 +503,7 @@ void EnergyEverySecond(void)
|
|||||||
if (TasmotaGlobal.global_update) {
|
if (TasmotaGlobal.global_update) {
|
||||||
if (TasmotaGlobal.power && !isnan(TasmotaGlobal.temperature_celsius) && (TasmotaGlobal.temperature_celsius > (float)Settings.param[P_OVER_TEMP])) { // Device overtemp, turn off relays
|
if (TasmotaGlobal.power && !isnan(TasmotaGlobal.temperature_celsius) && (TasmotaGlobal.temperature_celsius > (float)Settings.param[P_OVER_TEMP])) { // Device overtemp, turn off relays
|
||||||
|
|
||||||
char temperature[33];
|
AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: GlobTemp %1_f"), &TasmotaGlobal.temperature_celsius);
|
||||||
dtostrfd(TasmotaGlobal.temperature_celsius, 1, temperature);
|
|
||||||
AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: GlobTemp %s"), temperature);
|
|
||||||
|
|
||||||
SetAllPower(POWER_ALL_OFF, SRC_OVERTEMP);
|
SetAllPower(POWER_ALL_OFF, SRC_OVERTEMP);
|
||||||
}
|
}
|
||||||
@ -628,25 +622,21 @@ void CmndEnergyReset(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
Energy.total = (float)(RtcSettings.energy_kWhtotal + Energy.kWhtoday_offset + Energy.kWhtoday) / 100000;
|
Energy.total = (float)(RtcSettings.energy_kWhtotal + Energy.kWhtoday_offset + Energy.kWhtoday) / 100000;
|
||||||
|
float energy_kWhyesterday = (float)Settings.energy_kWhyesterday / 100000;
|
||||||
|
float usage1_kWhtotal = (float)Settings.energy_usage.usage1_kWhtotal / 100000;
|
||||||
|
float usage2_kWhtotal = (float)Settings.energy_usage.usage2_kWhtotal / 100000;
|
||||||
|
float return1_kWhtotal = (float)Settings.energy_usage.return1_kWhtotal / 100000;
|
||||||
|
float return2_kWhtotal = (float)Settings.energy_usage.return2_kWhtotal / 100000;
|
||||||
|
|
||||||
char energy_total_chr[FLOATSZ];
|
Response_P(PSTR("{\"%s\":{\"" D_JSON_TOTAL "\":%*_f,\"" D_JSON_YESTERDAY "\":%*_f,\"" D_JSON_TODAY "\":%*_f,\"" D_JSON_USAGE "\":[%*_f,%*_f],\"" D_JSON_EXPORT "\":[%*_f,%*_f]}}"),
|
||||||
dtostrfd(Energy.total, Settings.flag2.energy_resolution, energy_total_chr);
|
XdrvMailbox.command,
|
||||||
char energy_daily_chr[FLOATSZ];
|
Settings.flag2.energy_resolution, &Energy.total,
|
||||||
dtostrfd(Energy.daily, Settings.flag2.energy_resolution, energy_daily_chr);
|
Settings.flag2.energy_resolution, &energy_kWhyesterday,
|
||||||
char energy_yesterday_chr[FLOATSZ];
|
Settings.flag2.energy_resolution, &Energy.daily,
|
||||||
dtostrfd((float)Settings.energy_kWhyesterday / 100000, Settings.flag2.energy_resolution, energy_yesterday_chr);
|
Settings.flag2.energy_resolution, &usage1_kWhtotal,
|
||||||
|
Settings.flag2.energy_resolution, &usage2_kWhtotal,
|
||||||
char energy_usage1_chr[FLOATSZ];
|
Settings.flag2.energy_resolution, &return1_kWhtotal,
|
||||||
dtostrfd((float)Settings.energy_usage.usage1_kWhtotal / 100000, Settings.flag2.energy_resolution, energy_usage1_chr);
|
Settings.flag2.energy_resolution, &return2_kWhtotal);
|
||||||
char energy_usage2_chr[FLOATSZ];
|
|
||||||
dtostrfd((float)Settings.energy_usage.usage2_kWhtotal / 100000, Settings.flag2.energy_resolution, energy_usage2_chr);
|
|
||||||
char energy_return1_chr[FLOATSZ];
|
|
||||||
dtostrfd((float)Settings.energy_usage.return1_kWhtotal / 100000, Settings.flag2.energy_resolution, energy_return1_chr);
|
|
||||||
char energy_return2_chr[FLOATSZ];
|
|
||||||
dtostrfd((float)Settings.energy_usage.return2_kWhtotal / 100000, Settings.flag2.energy_resolution, energy_return2_chr);
|
|
||||||
|
|
||||||
Response_P(PSTR("{\"%s\":{\"" D_JSON_TOTAL "\":%s,\"" D_JSON_YESTERDAY "\":%s,\"" D_JSON_TODAY "\":%s,\"" D_JSON_USAGE "\":[%s,%s],\"" D_JSON_EXPORT "\":[%s,%s]}}"),
|
|
||||||
XdrvMailbox.command, energy_total_chr, energy_yesterday_chr, energy_daily_chr, energy_usage1_chr, energy_usage2_chr, energy_return1_chr, energy_return2_chr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CmndTariff(void)
|
void CmndTariff(void)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user