mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-23 18:56:38 +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);
|
||||
}
|
||||
|
||||
// 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)
|
||||
{
|
||||
float dewpoint = CalcTempHumToDew(f_temperature, f_humidity);
|
||||
|
||||
return ResponseAppend_P(PSTR("\"" D_JSON_TEMPERATURE "\":%*_f,\"" D_JSON_HUMIDITY "\":%*_f,\"" D_JSON_DEWPOINT "\":%*_f"),
|
||||
Settings.flag2.temperature_resolution, &f_temperature,
|
||||
Settings.flag2.humidity_resolution, &f_humidity,
|
||||
Settings.flag2.temperature_resolution, &dewpoint);
|
||||
}
|
||||
|
||||
|
||||
int ResponseJsonEnd(void)
|
||||
{
|
||||
return ResponseAppend_P(PSTR("}"));
|
||||
|
@ -225,9 +225,7 @@ void EnergyUpdateToday(void)
|
||||
|
||||
void EnergyUpdateTotal(float value, bool kwh)
|
||||
{
|
||||
// char energy_total_chr[FLOATSZ];
|
||||
// dtostrfd(value, 4, energy_total_chr);
|
||||
// AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: Energy Total %s %sWh"), energy_total_chr, (kwh) ? "k" : "");
|
||||
// AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: Energy Total %4_f %sWh"), &value, (kwh) ? "k" : "");
|
||||
|
||||
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)) {
|
||||
Energy.max_energy_state = 2;
|
||||
char stemp[FLOATSZ];
|
||||
dtostrfd(Energy.daily, 3, stemp);
|
||||
ResponseTime_P(PSTR(",\"" D_JSON_MAXENERGYREACHED "\":%s}"), stemp);
|
||||
ResponseTime_P(PSTR(",\"" D_JSON_MAXENERGYREACHED "\":%3_f}"), &Energy.daily);
|
||||
MqttPublishPrefixTopic_P(STAT, S_RSLT_WARNING);
|
||||
EnergyMqttShow();
|
||||
SetAllPower(POWER_ALL_OFF, SRC_MAXENERGY);
|
||||
@ -507,9 +503,7 @@ void EnergyEverySecond(void)
|
||||
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
|
||||
|
||||
char temperature[33];
|
||||
dtostrfd(TasmotaGlobal.temperature_celsius, 1, temperature);
|
||||
AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: GlobTemp %s"), temperature);
|
||||
AddLog(LOG_LEVEL_DEBUG, PSTR("NRG: GlobTemp %1_f"), &TasmotaGlobal.temperature_celsius);
|
||||
|
||||
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;
|
||||
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];
|
||||
dtostrfd(Energy.total, Settings.flag2.energy_resolution, energy_total_chr);
|
||||
char energy_daily_chr[FLOATSZ];
|
||||
dtostrfd(Energy.daily, Settings.flag2.energy_resolution, energy_daily_chr);
|
||||
char energy_yesterday_chr[FLOATSZ];
|
||||
dtostrfd((float)Settings.energy_kWhyesterday / 100000, Settings.flag2.energy_resolution, energy_yesterday_chr);
|
||||
|
||||
char energy_usage1_chr[FLOATSZ];
|
||||
dtostrfd((float)Settings.energy_usage.usage1_kWhtotal / 100000, Settings.flag2.energy_resolution, energy_usage1_chr);
|
||||
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);
|
||||
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]}}"),
|
||||
XdrvMailbox.command,
|
||||
Settings.flag2.energy_resolution, &Energy.total,
|
||||
Settings.flag2.energy_resolution, &energy_kWhyesterday,
|
||||
Settings.flag2.energy_resolution, &Energy.daily,
|
||||
Settings.flag2.energy_resolution, &usage1_kWhtotal,
|
||||
Settings.flag2.energy_resolution, &usage2_kWhtotal,
|
||||
Settings.flag2.energy_resolution, &return1_kWhtotal,
|
||||
Settings.flag2.energy_resolution, &return2_kWhtotal);
|
||||
}
|
||||
|
||||
void CmndTariff(void)
|
||||
|
Loading…
x
Reference in New Issue
Block a user