Skip to content

Commit 1a68d46

Browse files
committed
logging: switch to yal
1 parent 6713be0 commit 1a68d46

23 files changed

+117
-127
lines changed

src/Filesystem.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ void Filesystem::format()
150150
String Filesystem::formatBytes(size_t bytes)
151151
{
152152
static constexpr const auto bitsPerByte = 1024.0;
153-
if (bytes < bitsPerByte) {
153+
if (bytes <bitsPerByte ) {
154154
return String(bytes) + "B";
155155
}
156156
if (bytes < (bitsPerByte * bitsPerByte)) {

src/RTCMemory.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55

66
#include <RTCMemory.hpp>
77
#include <user_interface.h>
8-
#include <yal/yal.hpp>
98
#include <string>
9+
#include <yal/yal.hpp>
1010

1111
namespace open_heat {
1212
namespace rtc {
@@ -57,8 +57,7 @@ Memory readWithoutLock()
5757
{
5858
Memory rtcMemory{};
5959

60-
if (!ESP.rtcUserMemoryRead(
61-
0, reinterpret_cast<uint32_t*>(&rtcMemory), sizeof(Memory))) {
60+
if (!ESP.rtcUserMemoryRead(0, reinterpret_cast<uint32_t*>(&rtcMemory), sizeof(Memory))) {
6261
m_logger.log(yal::Level::ERROR, "Failed to read RTC user memory");
6362
}
6463

@@ -181,7 +180,7 @@ void wifiDeepSleep(uint64_t timeInMs, bool enableRF, Filesystem& filesystem)
181180
pinMode(static_cast<uint8_t>(config.MotorPins.Ground), INPUT);
182181
pinMode(static_cast<uint8_t>(LED_BUILTIN), INPUT);
183182

184-
m_logger.log(yal::Level::INFO, "Sleeping for % ms", timeInMs);
183+
m_logger.log(yal::Level::INFO, "Sleeping for %lu ms", timeInMs);
185184
setMillisOffset(offsetMillis() + timeInMs);
186185

187186
EspClass::deepSleep(timeInMs * 1000, enableRF ? RF_CAL : RF_DISABLED);

src/heating/RadiatorValve.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ uint64_t open_heat::heating::RadiatorValve::loop()
3131
rtc::setValveNextCheckMillis(nextCheck);
3232
rtc::read().mode == OFF ? closeValve(VALVE_FULL_ROTATE_TIME * 2)
3333
: openValve(VALVE_FULL_ROTATE_TIME * 2);
34-
34+
3535
m_logger.log(yal::Level::DEBUG, "Heating is turned off, disabled heating");
3636
return nextCheck;
3737
}
@@ -64,10 +64,10 @@ uint64_t open_heat::heating::RadiatorValve::loop()
6464
m_logger.log(
6565
yal::Level::INFO,
6666
"Valve loop\n"
67-
"\tpredictTemp % in % ms\n"
68-
"\tpredictPart: %, predictionError: %\n"
69-
"\tmeasuredTemp: %, lastMeasuredTemp %, setTemp % \n"
70-
"\ttemperatureChange %, absTempDiff: %",
67+
"\tpredictTemp %.2f in %lu ms\n"
68+
"\tpredictPart: %.2f, predictionError: %.2f\n"
69+
"\tmeasuredTemp: %.2f, lastMeasuredTemp %.2f, setTemp %.2f \n"
70+
"\ttemperatureChange %.2f, absTempDiff: %.2f",
7171
predictTemp,
7272
m_checkIntervalMillis,
7373
predictPart,
@@ -91,7 +91,7 @@ uint64_t open_heat::heating::RadiatorValve::loop()
9191
} else {
9292
m_logger.log(
9393
yal::Level::INFO,
94-
"RISE, NO ADJUST: Temp old %, temp now %, temp change %",
94+
"RISE, NO ADJUST: Temp old %.2f, temp now %.2f, temp change %.2f",
9595
rtcData.lastMeasuredTemp,
9696
measuredTemp,
9797
temperatureChange);
@@ -103,7 +103,7 @@ uint64_t open_heat::heating::RadiatorValve::loop()
103103
} else {
104104
m_logger.log(
105105
yal::Level::INFO,
106-
"SINK, NO ADJUST: Temp old %, temp now %, temp change %",
106+
"SINK, NO ADJUST: Temp old %.2f, temp now %.2f, temp change %.2f",
107107
rtc::read().lastMeasuredTemp,
108108
measuredTemp,
109109
temperatureChange);
@@ -122,7 +122,7 @@ void open_heat::heating::RadiatorValve::handleTempTooHigh(
122122
{
123123
auto closeTime = 200;
124124
const auto predictDiff = rtcData.setTemp - predictTemp - closeHysteresis;
125-
m_logger.log(yal::Level::INFO, "Close predict diff: %", predictDiff);
125+
m_logger.log(yal::Level::INFO, "Close predict diff: %f", predictDiff);
126126
if (predictDiff <= 2) {
127127
closeTime = 5000;
128128
} else if (predictDiff <= 1.5) {
@@ -150,7 +150,7 @@ void open_heat::heating::RadiatorValve::handleTempTooLow(
150150
auto openTime = 350;
151151
const float largeTempDiff = 3;
152152
const auto predictDiff = rtcData.setTemp - predictTemp - openHysteresis;
153-
m_logger.log(yal::Level::INFO, "Open predict diff: %", predictDiff);
153+
m_logger.log(yal::Level::INFO, "Open predict diff: %f", predictDiff);
154154

155155
if (
156156
rtcData.setTemp - predictTemp > largeTempDiff
@@ -190,7 +190,7 @@ void open_heat::heating::RadiatorValve::setConfiguredTemp(float temp)
190190
return;
191191
}
192192

193-
m_logger.log(yal::Level::INFO, "New target temperature %", temp);
193+
m_logger.log(yal::Level::INFO, "New target temperature %f", temp);
194194
rtc::setSetTemp(temp);
195195
setNextCheckTimeNow();
196196

@@ -215,7 +215,7 @@ void open_heat::heating::RadiatorValve::closeValve(unsigned int rotateTime)
215215
if (rtc::read().currentRotateTime <= (-VALVE_FULL_ROTATE_TIME)) {
216216
m_logger.log(
217217
yal::Level::DEBUG,
218-
"Valve already fully closed, current rotate time: %",
218+
"Valve already fully closed, current rotate time: %i",
219219
rtc::read().currentRotateTime);
220220
return;
221221
}
@@ -230,7 +230,7 @@ void open_heat::heating::RadiatorValve::closeValve(unsigned int rotateTime)
230230

231231
m_logger.log(
232232
yal::Level::DEBUG,
233-
"Closing valve for %ms, currentRotateTime: %ms, vin: %, ground: %",
233+
"Closing valve for %ims, currentRotateTime: %ims, vin: %i, ground: %i",
234234
rotateTime,
235235
rtc::read().currentRotateTime,
236236
config.Vin,

src/heating/RadiatorValve.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
#include <Filesystem.hpp>
1010
#include <RTCMemory.hpp>
1111
#include <sensors/Temperature.hpp>
12-
#include <yal/yal.hpp>
1312
#include <chrono>
13+
#include <yal/yal.hpp>
1414

1515
namespace open_heat::heating {
1616

@@ -87,6 +87,6 @@ class RadiatorValve {
8787

8888
yal::Logger m_logger;
8989
};
90-
} // namespace open_heat::heating
90+
} // namespace open_heat
9191

9292
#endif // OPEN_HEAT_RADIATORVALVE_HPP

src/main.cpp

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
#include <sensors/BMP280.hpp>
1818
#include <sensors/WindowSensor.hpp>
1919

20-
#include <yal/appender/ArduinoSerial.hpp>
2120
#include <yal/yal.hpp>
21+
#include <yal/appender/ArduinoSerial.hpp>
2222

2323
// external voltage
2424
ADC_MODE(ADC_TOUT)
@@ -66,23 +66,25 @@ void setupPins()
6666
pinMode(static_cast<uint8_t>(config.MotorPins.Vin), OUTPUT);
6767
digitalWrite(static_cast<uint8_t>(config.MotorPins.Ground), LOW);
6868
} else {
69-
g_logger.log(yal::Level::ERROR, "Motor pin vin invalid: %", config.MotorPins.Vin);
69+
g_logger.log(
70+
yal::Level::ERROR, "Motor pin vin invalid: %i", config.MotorPins.Vin);
7071
}
7172
if (config.MotorPins.Ground > 1) {
7273
pinMode(static_cast<uint8_t>(config.MotorPins.Ground), OUTPUT);
7374
digitalWrite(static_cast<uint8_t>(config.MotorPins.Ground), LOW);
7475

7576
} else {
7677
g_logger.log(
77-
yal::Level::ERROR, "Motor pin ground invalid: %", config.MotorPins.Ground);
78+
yal::Level::ERROR, "Motor pin ground invalid: %i", config.MotorPins.Ground);
7879
}
7980

8081
// enable temp sensor
8182
if (config.TempVin > 0) {
8283
pinMode(static_cast<uint8_t>(config.TempVin), OUTPUT);
8384
digitalWrite(static_cast<uint8_t>(config.TempVin), HIGH);
8485
} else {
85-
g_logger.log(yal::Level::ERROR, "Temp pin vin invalid: %", config.TempVin);
86+
g_logger.log(
87+
yal::Level::ERROR, "Temp pin vin invalid: %i", config.TempVin);
8688
}
8789
}
8890

@@ -117,25 +119,25 @@ void setupTemperatureSensor()
117119

118120
bool isDoubleReset()
119121
{
120-
if (EspClass::getResetInfoPtr()->reason != REASON_EXT_SYS_RST) {
122+
if (ESP.getResetInfoPtr()->reason != REASON_EXT_SYS_RST) {
121123
g_logger.log(
122124
yal::Level::DEBUG,
123-
"no double reset, resetInfo: %",
124-
EspClass::getResetInfo().c_str());
125+
"no double reset, resetInfo: %s",
126+
ESP.getResetInfo().c_str());
125127
open_heat::rtc::setDrdDisabled(true);
126128
return false;
127129
}
128130

129131
const auto drdDetected = g_drd.detectDoubleReset();
130132

131-
g_logger.log(yal::Level::DEBUG, "DRD detected: %", drdDetected);
133+
g_logger.log(yal::Level::DEBUG, "DRD detected: %i", drdDetected);
132134

133135
const auto millisSinceReset
134136
= open_heat::rtc::read().lastResetTime - open_heat::rtc::offsetMillis();
135137

136138
g_logger.log(
137139
yal::Level::DEBUG,
138-
"millis since reset: %, last reset time %, offset millis: %",
140+
"millis since reset: %lu, last reset time %lu, offset millis: %lu",
139141
millisSinceReset,
140142
open_heat::rtc::read().lastResetTime,
141143
open_heat::rtc::offsetMillis());
@@ -169,7 +171,8 @@ void setup()
169171
}
170172

171173
const auto offsetMillis = open_heat::rtc::offsetMillis();
172-
g_logger.log(yal::Level::DEBUG, "Set last reset time to %", offsetMillis);
174+
g_logger.log(
175+
yal::Level::DEBUG, "Set last reset time to %lu", offsetMillis);
173176
open_heat::rtc::setLastResetTime(offsetMillis);
174177

175178
setupPins();
@@ -236,7 +239,7 @@ void loop()
236239
if (nextCheckMillis < (open_heat::rtc::offsetMillis() + minSleepTime)) {
237240
g_logger.log(
238241
yal::Level::DEBUG,
239-
"Minimal sleep or underflow prevented, sleep set to % ms",
242+
"Minimal sleep or underflow prevented, sleep set to %ul ms",
240243
minSleepTime);
241244
idleTime = minSleepTime;
242245
} else {

src/network/MQTT.cpp

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
void open_heat::network::MQTT::setup()
1111
{
1212
m_logger.log(yal::Level::INFO, "Running MQTT setup");
13-
m_mqttClient.onMessage(
14-
[this](String& topic, String& payload) { messageReceivedCallback(topic, payload); });
13+
m_mqttClient.onMessage([this] (String& topic, String& payload) {
14+
messageReceivedCallback(topic, payload);
15+
});
1516

1617
m_valve.registerModeChangedHandler([this](OperationMode mode) {
17-
m_mqttAppender.queue().push(
18-
{m_getModeTopic, heating::RadiatorValve::modeToCharArray(mode)});
18+
m_mqttAppender.queue().push({m_getModeTopic, heating::RadiatorValve::modeToCharArray(mode)});
1919
});
2020

2121
m_valve.registerSetTempChangedHandler([this](float temp) {
@@ -70,6 +70,7 @@ uint64_t open_heat::network::MQTT::loop()
7070
publish(m_getConfiguredTempTopic, String(rtc::read().setTemp));
7171
publish(m_getModeTopic, String(rtc::read().mode));
7272

73+
7374
// drain message queue for new messages
7475
sendMessageQueue();
7576

@@ -161,10 +162,9 @@ void open_heat::network::MQTT::handleSetModemSleep(const String& payload)
161162

162163
void open_heat::network::MQTT::publish(const String& topic, const String& message)
163164
{
164-
m_logger.log(
165-
yal::Level::DEBUG, "MQTT send '%' in topic '%'", message.c_str(), topic.c_str());
165+
m_logger.log(yal::Level::DEBUG, "MQTT send '%' in topic '%'", message.c_str(), topic.c_str());
166166
if (!m_mqttClient.publish(topic, message)) {
167-
m_logger.log(yal::Level::ERROR, "MQTT publish failed: %", m_mqttClient.lastError());
167+
m_logger.log(yal::Level::ERROR,"MQTT publish failed: %", m_mqttClient.lastError());
168168
}
169169
}
170170

@@ -173,8 +173,7 @@ void open_heat::network::MQTT::connect()
173173
const auto& config = m_filesystem.getConfig();
174174
if ((std::strlen(config.MQTT.Server) == 0 || config.MQTT.Port == 0)) {
175175
if (m_configValid) {
176-
m_logger.log(
177-
yal::Level::ERROR,
176+
m_logger.log(yal::Level::ERROR,
178177
"MQTT Server (%) or port (%) not set up",
179178
config.MQTT.Server,
180179
config.MQTT.Port);
@@ -201,8 +200,7 @@ void open_heat::network::MQTT::connect()
201200
}
202201

203202
if (!m_mqttClient.connect(config.Hostname, username, password)) {
204-
m_logger.log(
205-
yal::Level::ERROR,
203+
m_logger.log(yal::Level::ERROR,
206204
"Failed to connect to mqtt server host %, user: %, pw: %",
207205
config.MQTT.Server,
208206
config.MQTT.Username,
@@ -212,8 +210,7 @@ void open_heat::network::MQTT::connect()
212210

213211
setTopic(config.MQTT.Topic, "log", m_logTopic);
214212

215-
m_logger.log(
216-
yal::Level::INFO,
213+
m_logger.log(yal::Level::INFO,
217214
"MQTT topic: %, topic len: %",
218215
config.MQTT.Topic,
219216
std::strlen(config.MQTT.Topic));
@@ -252,12 +249,8 @@ void open_heat::network::MQTT::subscribe(const String& topic)
252249
if (m_mqttClient.subscribe(topic)) {
253250
m_logger.log(yal::Level::INFO, "MQTT subscribed to topic: %", topic.c_str());
254251
} else {
255-
m_logger.log(
256-
yal::Level::ERROR, "MQTT failed to subscribe to topic: %", topic.c_str());
257-
m_logger.log(
258-
yal::Level::ERROR,
259-
"MQTT last error: %",
260-
static_cast<int>(m_mqttClient.lastError()));
252+
m_logger.log(yal::Level::ERROR,"MQTT failed to subscribe to topic: %", topic.c_str());
253+
m_logger.log(yal::Level::ERROR, "MQTT last error: %", static_cast<int>(m_mqttClient.lastError()));
261254
}
262255
}
263256

src/network/MQTT.hpp

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@
88

99
#include "WifiManager.hpp"
1010
#include <Filesystem.hpp>
11+
#include <yal/yal.hpp>
12+
#include <yal/appender/ArduinoMQTT.hpp>
1113
#include <MQTT.h>
1214
#include <heating/RadiatorValve.hpp>
1315
#include <sensors/Battery.hpp>
1416
#include <sensors/Humidity.hpp>
1517
#include <sensors/Temperature.hpp>
16-
#include <yal/appender/ArduinoMQTT.hpp>
17-
#include <yal/yal.hpp>
1818
#include <chrono>
1919
#include <queue>
2020

@@ -35,18 +35,15 @@ class MQTT {
3535
m_filesystem(filesystem),
3636
m_valve(valve),
3737
m_logger(yal::Logger("MQTT")),
38-
m_mqttAppender(yal::appender::ArduinoMQTT<MQTTClient>(
39-
&m_logger,
40-
&m_mqttClient,
41-
s_logTopic.c_str()))
38+
m_mqttAppender(yal::appender::ArduinoMQTT<MQTTClient>(&m_logger, &m_mqttClient, s_logTopic.c_str()))
4239
{
4340
}
4441

4542
~MQTT() = default;
46-
MQTT(const MQTT&) = delete;
47-
MQTT(const MQTT&&) = delete;
48-
MQTT& operator=(MQTT&) = delete;
49-
MQTT& operator=(MQTT&&) = delete;
43+
MQTT(const MQTT &) = delete;
44+
MQTT(const MQTT &&) = delete;
45+
MQTT &operator=(MQTT &) = delete;
46+
MQTT &operator=(MQTT &&) = delete;
5047

5148
void setup();
5249
bool needLoop();

0 commit comments

Comments
 (0)