diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 7b2fb744b..00cb1420a 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -80,6 +80,7 @@ The following binary downloads have been compiled with ESP32/Arduino library cor - **tasmota32.bin** = The Tasmota version with most drivers including additional sensors and KNX for 4M+ flash. **RECOMMENDED RELEASE BINARY** - **tasmota32c3.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-C3 and 4M+ flash. +- **tasmota32s2.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-S2 and 4M+ flash. - **tasmota32solo1.bin** = The Tasmota version with most drivers including additional sensors and KNX for single core ESP32 and 4M+ flash. - **tasmota32-AF.bin** to **tasmota32-VN.bin** = The Tasmota version in different languages for 4M+ flash. - **tasmota32-ir.bin** = The InfraRed Receiver and transmitter version allowing all available protocols provided by library IRremoteESP8266 but without most other features for 4M+ flash. diff --git a/platformio_tasmota_env.ini b/platformio_tasmota_env.ini index e2ce02124..68d4b17e4 100644 --- a/platformio_tasmota_env.ini +++ b/platformio_tasmota_env.ini @@ -68,12 +68,6 @@ build_flags = ${env.build_flags} -DUSE_ZIGBEE -DUSE_CCLOADER -DUSE_U board = esp8266_4M2M board_build.f_cpu = 160000000L -[env:tasmota3] -platform = espressif8266 -platform_packages = framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git - mcspr/toolchain-xtensa @ ~5.100300.211127 - platformio/tool-esptoolpy @ ~1.30100 - [env:tasmota-AF] build_flags = ${env.build_flags} -DMY_LANGUAGE=af_AF diff --git a/tasmota/xdrv_86_esp32_sonoff_spm.ino b/tasmota/xdrv_86_esp32_sonoff_spm.ino index 4274c296f..6a5d2d086 100644 --- a/tasmota/xdrv_86_esp32_sonoff_spm.ino +++ b/tasmota/xdrv_86_esp32_sonoff_spm.ino @@ -435,7 +435,7 @@ uint16_t SSPMCalculateCRC(uint8_t *frame, uint32_t num) { } float SSPMGetValue(uint8_t *buffer) { - // return floast from three bytes in buffer + // return float from three bytes in buffer float value = (buffer[0] << 8) + buffer[1] + (float)buffer[2] / 100; return value; } @@ -1136,7 +1136,7 @@ void SSPMHandleReceivedData(void) { energy_total += energy; } } - if (0 == Sspm->Settings.energy_total[module][channel]) { + if ((0 == Sspm->Settings.energy_total[module][channel]) && energy_total) { Sspm->Settings.energy_yesterday[module][channel] = energy_yesterday; // Inital setting Sspm->Settings.energy_total[module][channel] = energy_total; // Initial setting if (Settings->save_data) { @@ -1145,7 +1145,7 @@ void SSPMHandleReceivedData(void) { } // If received daily energy is below last daily energy then update total energy // This happens around midnight in normal situations - if (Sspm->energy_today[module][channel] < last_energy_today) { + else if (Sspm->energy_today[module][channel] < last_energy_today) { Sspm->Settings.energy_yesterday[module][channel] = last_energy_today; // Daily save Sspm->Settings.energy_total[module][channel] += last_energy_today; // Daily incremental save if (Settings->save_data) {