Thomas Basler
d259042542
Rewrite display language handling to work with locale strings instead of magic numbers.
...
This is required to implement further i18n functions using the language packs
2024-10-25 21:43:29 +02:00
Thomas Basler
e29b86e4dc
Add API endpoint to retrieve custom languages and complete language pack
2024-10-21 19:02:50 +02:00
Thomas Basler
bcf4b70dc9
Fix: cpplint errors
2024-10-15 19:11:17 +02:00
LennartF22
6297ae3428
Don't set TX timeout to 0 anymore for HW/USB CDC
...
Due to a change in the Espressif Arduino core, the TX timeout for the HW CDC
(used in the ESP32-S3, for example) must not be set to 0, as otherwise, an
integer underflow occurs.
Removing the TX timeout is not necessary anymore anyways, because it is now
detected when CDC is not active, and attempts to write will return immediately
until the host read something again. Only when the transmit buffer becomes
full initially, the default timeout of just 100ms takes effect once.
For USB CDC (used with the ESP32-S2, for example), the timeout is not relevant
either.
2024-10-09 02:36:37 +02:00
Thomas Basler
8f4b89a193
Replace format strings by platform independent macros
2024-10-05 00:50:13 +02:00
LennartF22
5457db269c
Use SpiManager for nRF, CMT and W5500
2024-09-25 00:37:06 +02:00
Thomas Basler
e785904fca
Fix: Restart was triggered before all website data was sent
...
This led to the effect that e.g. the confirmation messages where not shown.
It is somehow related to ESPAsyncWebServer 3.3.0
2024-09-23 18:11:52 +02:00
Thomas Basler
d635a9babd
Merge branch 'pr1729' into dev
2024-02-10 23:36:47 +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
637d4f06a3
Feature: Added option to disable the diagram at the display
2024-01-08 14:19:26 +01:00
Thomas Basler
e95afbf2cc
Use references instead of pointers whenver possible
2023-12-12 13:26:07 +01:00
Thomas Basler
8b5d406a4f
Introduce several const statements
2023-12-07 15:19:04 +01:00
Thomas Basler
80d534e045
Migrate WebApi to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
ab8679e7b9
Migrate Display_Graphic to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
ad1f1b690c
Migrate MessageOutput to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
77779a1ed9
Migrate InverterSettings to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
1501411037
Migrate NetworkSettings to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
7881d955bd
Migrate LedSingle to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
524483451f
Migrate MqttHandleInverter to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
5c501f879f
Migrate MqttHandleDtu to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
48a27fbfad
Migrate MqttHandleHass to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
98c30d1042
Migrate MqttHandleInverterTotal to TaskSchedule
2023-11-23 22:35:05 +01:00
Thomas Basler
c045b5df48
Migrate Datastore to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
12031ed09e
Migrate SunPosition to TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
a7c9c2df1a
Initialize TaskScheduler
2023-11-23 22:35:05 +01:00
Thomas Basler
b85c53f476
Split config struct into different sub structs
2023-11-19 14:53:26 +01:00
Thomas Basler
752362d2df
Feature: Added localization setting to display
...
Its possible to change the language of the display
2023-05-23 18:25:12 +02:00
Thomas Basler
cd98941c5d
Implement global data store to handle all invert total values
...
Use the new values in the LED, MQTT and Web interface.
2023-05-21 22:37:33 +02:00
Thomas Basler
65b728eebb
Fix: No OpenDTU startup of CDC (like Pico or ESP32-S3) devices if no usb host is connected
...
Should also fix #826
2023-05-03 21:16:27 +02:00
Thomas Basler
26cbc496a7
Feature: Implemented MQTT publishing of total values
...
If one or more inverter is not reachable the flag is_valid changes to zero. Disabled inverters are ignored.
2023-04-24 18:51:30 +02:00
Thomas Basler
ae323cd26f
Status LED's: Implemented
...
They can be activated using device profiles.
2023-04-04 18:53:23 +02:00
Thomas Basler
d6028cbd50
Remove not required F() macro. Frees ~20kb flash.
2023-04-04 18:51:18 +02:00
Thomas Basler
2e33f5cd51
Display: Implement rotation setting and removed icons
2023-03-15 20:20:14 +01:00
Thomas Basler
cd99ab8e42
Added settings to pause polling/sending commands in general and at night
2023-02-18 19:44:16 +01:00
Thomas Basler
b319c78dc1
Added methods to calculate and show sunrise and sunset times
2023-02-18 18:15:48 +01:00
Thomas Basler
8cbae76797
Implement offsets for YieldTotal ( #549 )
...
This allows to enter a offset in kWh in the inverter properties which will be applied to the read Yield Total value of the inverter. Using this can set your total production to zero if you e.g. are using a used device.
2023-02-13 20:25:00 +01:00
Thomas Basler
ceaf08c1a0
Hoymiles Lib: Rename ChannelMaxPower to StringMaxPower
2023-02-06 19:56:12 +01:00
Thomas Basler
e89fd64439
Added WebAPI to setup display settings. Also reboot only if device profile was changed.
2023-01-20 18:28:34 +01:00
Thomas Basler
b96d87b933
Read display pinmapping from json file
2023-01-20 18:28:33 +01:00
Thomas Basler
bb3e12814d
Move display pin assignment to main function
2023-01-20 18:28:32 +01:00
dAjaY85
7074dd5757
Display init zum Zweiten
...
chango to full Buffer Mode, remove picture loop,
because it's not worked.
look: https://github.com/olikraus/u8glib/wiki/tpictureloop
snprintf + public vars
- dispPowerSafe => true: PowerSafe Mode on
- dispLogo => true: showing Logo upper right corner
- dispContrast => possible to adjust the Display Contrast
change in date time, buffer deleted
Display-Constructor changed, reset goes to front
Arrow and Logo only shown, when production is on
Refactor OLEDDisplayClass to DisplayGraphicClass
2023-01-18 23:22:36 +01:00
Thomas Basler
5f699f4927
Added Device Profiles
...
Allows the pin assignment during runtime.
Pin settings will be read from a json file called "pin_mapping.json"
2023-01-16 21:09:24 +01:00
Thomas Basler
8b60c29667
Replace all Serial by MessageOutput
2022-12-19 21:38:39 +01:00
Thomas Basler
54d94af487
Cleanup includes
2022-12-14 22:13:03 +01:00
Thomas Basler
aab72fd0d8
Move mqtt dtu topic publishing to separate class
2022-12-14 19:32:24 +01:00
Thomas Basler
723a2c6dbe
Rename MqttPublishing to MqttHandleInverter
2022-12-14 19:13:34 +01:00
Thomas Basler
5dde17c56b
Renamed MqttHassPublishing to MqttHandleHass
2022-12-14 19:07:11 +01:00
Thomas Basler
36abaeee12
Moved pin assignment outside the hoymiles library
...
Allows setting the pins during runtime and not just using the defines
2022-11-27 12:07:25 +01:00
Thomas Basler
d28fadbdac
Extended configuration to allow string names
...
* Current config will be migrated to new format
* Already extended web API to get/post new format
2022-11-15 22:31:04 +01:00