fredlcore / BSB-LAN

LAN/WiFi interface for Boiler-System-Bus (BSB) and Local Process Bus (LPB) and Punkt-zu-Punkt Schnittstelle (PPS) with a Siemens® controller used by Elco®, Brötje® and similar heating systems
222 stars 84 forks source link

/DG improvements (introducing /Dn) #499

Closed DE-cr closed 1 year ago

DE-cr commented 1 year ago

P.S. 2023-02-25: Original intent of this pr, as given in the following quote, has been removed!

Write averages to SD card only when CF_LOGMODE_SD_CARD is enabled

Reasons for this change proposal:

  1. CF_LOGMODE_SD_CARD suggests that without it, no log values will be written to the card.
  2. It isn't obvious from the config GUI that setting CF_LOGMODE_24AVG implies SD card writing.
  3. "SD card" for ESP32 means EEPROM. Frequent writes to it w/o the user's "permission" should be avoided.
  4. How often is this protection from power off needed anyway, and how essential is it?

P.S. 2022-12-21: This PR now also includes a fix for https://github.com/fredlcore/BSB-LAN/issues/533 P.S. 2023-02-16: FYI @fredlcore, this PR now also includes /DG improvements, c.f. https://github.com/DE-cr/BSB-LAN/commit/849a379e491c2f4ee6c314ad6abf52388ddb6cf0 P.S. 2023-02-21: This PR now also includes /Dn and /DG performance improvements for large datasets, c.f. https://github.com/fredlcore/BSB-LAN/issues/539 P.S. 2023-03-03: As I still haven't figured out how to separate PRs for a repo in which I don't have write access, this PR now also includes https://github.com/DE-cr/BSB-LAN/pull/1/commits/f30acd8e24a5e8b3a684b89fbfc2bc18cd7e3794 (update of screenshots used in README.md, to reflect current implementation) FYI @fredlcore P.S. 2023-03-03: Now also included in this PR: https://github.com/DE-cr/BSB-LAN/commit/2a936cd97a59f8cf941aa3e559b0391d8f8d9768 (788 bytes code size reduction for svg_favicon)

DE-cr commented 1 year ago

These changes increase bsb-lan's code size by 1728 bytes on my system, and use an additional 8 bytes for global variables.

DE-cr commented 1 year ago

Seems I've eventually figured out how to separate changes into different pull requests, so I'll change this compilation PR now and open individual ones instead.