From 7aece2e143ab4191c5724f6b9cd8c223e974d146 Mon Sep 17 00:00:00 2001 From: Stefan Oberhumer Date: Tue, 23 Jan 2024 09:31:05 +0100 Subject: [PATCH] Call SunPosition.isDayPeriod() once --- src/InverterSettings.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/InverterSettings.cpp b/src/InverterSettings.cpp index a52cdc0..7daad4d 100644 --- a/src/InverterSettings.cpp +++ b/src/InverterSettings.cpp @@ -106,6 +106,7 @@ void InverterSettingsClass::init(Scheduler& scheduler) void InverterSettingsClass::settingsLoop() { const CONFIG_T& config = Configuration.get(); + const bool isDayPeriod = SunPosition.isDayPeriod(); for (uint8_t i = 0; i < INV_MAX_COUNT; i++) { auto const& inv_cfg = config.Inverter[i]; @@ -117,8 +118,8 @@ void InverterSettingsClass::settingsLoop() continue; } - inv->setEnablePolling(inv_cfg.Poll_Enable && (SunPosition.isDayPeriod() || inv_cfg.Poll_Enable_Night)); - inv->setEnableCommands(inv_cfg.Command_Enable && (SunPosition.isDayPeriod() || inv_cfg.Command_Enable_Night)); + inv->setEnablePolling(inv_cfg.Poll_Enable && (isDayPeriod || inv_cfg.Poll_Enable_Night)); + inv->setEnableCommands(inv_cfg.Command_Enable && (isDayPeriod || inv_cfg.Command_Enable_Night)); } }