Commit Graph

505 Commits

Author SHA1 Message Date
Thomas Basler
a54b19bf5b Feature: Inverter radio statistics (rx/tx statistics)
The  statistics are shown in the WebApp and published via MQTT.
Statistics are reset at midnight.
2024-09-22 18:51:07 +02:00
Thomas Basler
1115418ce1 Publish temperature only if its not NAN 2024-09-22 18:51:07 +02:00
Thomas Basler
84e5c0821c Fix: Saving DTU config values just returned "Values are missing" 2024-09-22 13:16:34 +02:00
Thomas Basler
0c5e702a28 Fix: Wrong topic in home assistant auto discovery for maxalloc and minfree 2024-09-22 13:01:34 +02:00
Tobias Diedrich
fdcbf9de95 Publish ESP heap and temperature details on MQTT
I noticed that some useful ESP stats are missing on the MQTT feed, so this adds:

- ESP temperature
- ESP heap stats (size, free, minFree, maxAlloc)
2024-09-21 22:39:48 +02:00
Thomas Basler
2f41f43d49 Update bblanchon/ArduinoJson from 7.1.0 to 7.2.0 2024-09-21 00:12:15 +02:00
Thomas Basler
3b3e6995c2 Fix: WebApp was not reloaded after firmware update
With the upgrade from ESPAsyncWebServer to 3.3.1 it seems that something has changed. Have to trigger the reboot from the main context.
2024-09-21 00:04:27 +02:00
Thomas Basler
b52cd31309 Output WiFi disconnect reason in console 2024-09-02 20:16:03 +02:00
Thomas Basler
cdaf10a92a Fix: Wifi reconnect issue introduced with #2117 and discussed in #2185 was fixed 2024-08-05 18:31:21 +02:00
Thomas Basler
03137e15dd Upgrade ESPAsyncWebServer from 2.10.8 to 3.1.2 2024-08-01 18:11:39 +02:00
Thomas Basler
70dacb5ea6 Merge branch 'pr2168' into dev 2024-08-01 17:53:53 +02:00
jstammi
1eab3ae773 Fix: explicitly disconnect prior connecting to wifi
to prevent from invalid association packets exchange
#618

(cherry picked from commit b6c320d481eb77b4f4e0407237917d2d897bfd9d)
2024-06-30 20:20:05 +02:00
Thomas Basler
4640ddfba0 Better handling of empty MQTT client id
If the configured client id is empty, the default value (auto generated) will be used
2024-06-29 11:05:04 +02:00
Thomas Basler
ba95f99e03 Feature: Allow custom MQTT Client ID 2024-06-29 00:28:21 +02:00
Thomas Basler
b27a476507 Fix: Apply inverter settings only once and not for each channel 2024-05-31 00:56:15 +02:00
Thomas Basler
35aa835891 Merge branch 'pr2022' into dev 2024-05-31 00:52:28 +02:00
Stefan Oberhumer
8e8c463849 NFC: Includes list: Remove unneeded PinMapping.h 2024-05-31 00:30:15 +02:00
Thomas Basler
6e607f7f67 Feature: Add option to clear eventlog at midnight 2024-05-31 00:07:28 +02:00
Thomas Basler
6ce474053e Feature: Show MCU temperature in system info 2024-05-28 23:24:08 +02:00
Thomas Basler
24983acf17 Merge branch 'pr2015' into dev 2024-05-28 20:13:22 +02:00
Bernhard Kirchen
4972892d9a Feature: show ESP32 flash memory size in system info 2024-05-27 21:52:49 +02:00
Thomas Basler
918c3449da Fix #2000: MQTT subscriptions where not updated if MQTT base was changed 2024-05-20 17:56:59 +02:00
Thomas Basler
7d2fb3490e Fix #1960: Prometheus API return wrong information in function addPanelInfo 2024-05-04 22:24:40 +02:00
Thomas Basler
d5a24906fa Merge branch 'pr1920' into dev 2024-05-02 20:59:26 +02:00
Thomas Basler
f8cc171e4a Fix: Return 404 (and nothing else) if file not found 2024-04-24 22:15:25 +02:00
Stefan Oberhumer
97800434c4 Prevent compiling the whole project on each commit.
Putting the git information into a generated sourcefile prevents
recompiling the whole project after each commit.
2024-04-18 09:02:57 +02:00
Thomas Basler
bf49410f6d Merge branch 'pr1909' into dev 2024-04-12 17:05:51 +02:00
Bernhard Kirchen
153293e1c7 remove remaining usage of F() macro 2024-04-12 15:28:26 +02:00
Thomas Basler
ea28903761 Move parsing of serial from web request to separate method 2024-04-05 19:14:56 +02:00
Thomas Basler
980e847ccb Feature: Check for out of memory situations when sending json responses
Also shows a nice message in the frontend if an internal error occours
2024-04-05 19:14:56 +02:00
Thomas Basler
2e3125fe8d Feature: Migrated ArduinoJson 6 to 7 2024-04-05 19:14:56 +02:00
Thomas Basler
b55ca53d1d Fix: Setting DTU options was only possible once without reboot
Fix #1884
2024-04-03 18:35:27 +02:00
Thomas Basler
8add226a7c Save flash: Move WebApi json parsing to separate method to prevent a lot of redundant code 2024-04-01 13:52:09 +02:00
Thomas Basler
6f3b8fb8e1 Fix: Change default NTP server
Fixes #1877
2024-03-31 12:27:27 +02:00
Thomas Basler
33bf2117c6 Fix: Set all settings to default when deleting an inverters
Previously some old settings from previous inverters could have been shown in a new inverter
2024-03-13 18:47:28 +01:00
Thomas Basler
f995287a6e Feature: Add support for HERF inverters 2024-03-06 21:57:18 +01:00
Thomas Basler
50abcd1061 Fix: Prevent hiding text on display if it's too long
Fixes: #1797
2024-03-01 19:30:24 +01:00
Thomas Basler
d26333dd76 Apply automatic code formatting 2024-02-10 23:37:44 +01:00
Thomas Basler
1d2055cc89 Merge branch 'pr1732' into dev 2024-02-10 23:37:09 +01:00
Thomas Basler
1973cb986c Merge branch 'pr1731' into dev 2024-02-10 23:37:03 +01:00
Thomas Basler
d635a9babd Merge branch 'pr1729' into dev 2024-02-10 23:36:47 +01:00
Bernhard Kirchen
6036d8efea implement oscillating screensaver
this implementation avoids the display content jumping the full
screensaver offset from right to left when the modulo operator
wraps. this change makes the display content walk from right to
left as it did walk from left to right.
2024-02-10 18:41:47 +01:00
Bernhard Kirchen
5f51c80022 Fix: make text of total production fit displays
in case the total production is larger than 1 MWh, i.e., 1000 kWh, the
text on the respective line becomes too large such that it reaches out
of the display when the screensaver is enabled.

this happens on the small and large displays.

this change switches the number format to a float without decimal places
if the total production is larger or equal to 1000 kWh. this saves a dot
and a digit, making the text short enough to fit the display even when
the screensaver moved the display contents as far to the right as it
does.
2024-02-10 17:38:32 +01:00
Bernhard Kirchen
25a66a1722 make efficient use of available display area
fix calculation of the text baselines, using getAscent() in favor of
getMaxCharHeight(), which includes ascent and descent. this moves the
first text up and allows to insert margin between the lines until the
display area is fully utilized.

on large displays, if the small diagram is selected, keep the first line
rather low to avoid collision with the diagram y-axis label. in this mode,
there is still more space between the text lines as before, allowing for
improved readability.
2024-02-10 13:33:51 +01:00
Thomas Basler
7e2064e264 Feature: Added support for boards with 16MB flash and PSRAM 2024-02-02 20:33:42 +01:00
Thomas Basler
1b637f0870 BREAKING CHANGE: Web API Endpoint /api/livedata/status and /api/prometheus/metrics
Yield total and Yield day where moved from the AC section to the INV section
2024-01-30 22:29:25 +01:00
Thomas Basler
e1564780d6 BREAKING CHANGE: Web API Endpoint /api/livedata/status and /api/prometheus/metrics
Power DC was moved from the AC section to the INV section
2024-01-30 22:29:25 +01:00
Thomas Basler
c27ecc3620 BREAKING CHANGE: Web API Endpoint /api/livedata/status
To reduce the heap usage it is necessary to send the inverters one by one instead of a huge response. A simple call to `/api/livedata/status` returns just some very general information. If detailed inverter information are required the inverter serial number has to appended `?inv=<serial number>`.
The websocket also returns only one inverter at a time. It as to be assembled at client side.
2024-01-30 22:29:25 +01:00
Thomas Basler
557c5d645e Remove all files but the pin_mapping.json from filesystem on factory reset
This allows to create more user defined files and get them deleted on factory reset.
2024-01-30 22:29:12 +01:00
Thomas Basler
48a722f826 Merge branch 'pr1642' into dev 2024-01-30 20:47:45 +01:00