helgeerbe
47f81f2579
breaking change: Reduce maximum number of invertes to 5 to keep livedata working
...
livedata json is now calculated as 4096 * MaxInvertes
2023-05-23 10:15:37 +02:00
helgeerbe
b7ac70b1ca
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-05-23 09:19:57 +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
MalteSchm
065c169b20
Set initial PL state in init() to avoid inverter shutdown on reboot... ( #224 )
2023-05-08 13:25:02 +02:00
MalteSchm
70060559da
Bring back the sun indicator ( #195 )
...
* Adding states to display in UI
* Adding states to display in UI
2023-04-27 19:10:12 +02:00
MalteSchm
6b437b5ea1
Inverter toggle fix ( #196 )
...
* updating the interface to calcPowerLimit to include both energy sources
* Fixing definition
2023-04-27 19:09:48 +02:00
helgeerbe
c337df605c
Merge branch 'pr/MalteSchm/172' into development
2023-04-26 12:37:31 +02:00
helgeerbe
e91935ab38
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-04-26 11:47:19 +02:00
helgeerbe
37b5edb010
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-04-25 18:51:18 +02:00
Thomas Basler
98da2b64e2
Rename FLD_PRA to FLD_Q
2023-04-24 22:29:59 +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
helgeerbe
40cee1f9ca
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-04-17 11:08:55 +02:00
Thomas Basler
371e405eed
Added configuration of CMT modules frequency to webapp
2023-04-15 10:55:48 +02:00
Thomas Basler
996404ceed
Introduce gpio2 for the CMT2300A module
...
This implements the sending interrupt instead of polling. On the other hand, gpio3 is made optional.
2023-04-15 10:55:48 +02:00
Thomas Basler
854fcdaeae
Allow configuration of the TX PA Level of the CMT2300A module
2023-04-15 10:55:48 +02:00
Thomas Basler
dc91929d6e
First rough implementation of HMT inverters
2023-04-15 10:55:47 +02:00
Thomas Basler
45882543b6
Allow dynamic pin mapping for CMT module
2023-04-15 10:55:47 +02:00
helgeerbe
1dc73f91ee
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-04-13 10:18:49 +02:00
MalteSchm
be7a43fbfb
Removing un-necessary timestamp, commenting code and cleanups
2023-04-13 09:47:12 +02:00
MalteSchm
ee376827fd
merging functionality from PL refactor
2023-04-13 09:47:07 +02:00
MalteSchm
9999fa28e8
refactor state machine
...
merging
2023-04-13 09:46:35 +02:00
MalteSchm
ee82c8c9b8
adding option to disable power limiter via mqtt
...
adding option to disable power limiter via mqtt - adding missing file
2023-04-13 09:44:48 +02:00
Martin Dummer
bea0a738c1
include/Configuration.h: rename MQTT_MAX_ROOT_CA_CERT_STRLEN
...
rename const MQTT_MAX_ROOT_CA_CERT_STRLEN to more generic name MQTT_MAX_CERT_STRLEN
Signed-off-by: Martin Dummer <martin.dummer@gmx.net>
2023-04-12 11:58:27 +02:00
Martin Dummer
d920726a76
src/WebApi_mqtt.cpp: rename function getRootCaCertInfo
...
rename function WebApiMqttClass::getRootCaCertInfo to more generic
name WebApiMqttClass::getTlsCertInfo
Signed-off-by: Martin Dummer <martin.dummer@gmx.net>
2023-04-12 08:47:24 +02:00
Martin Dummer
971ae6d1be
Feature: MQTT add TLS authentication
...
User asked for TLS client certificate based login from DTU to MQTT
server. This PR implements storage and use of x509 client certificate
and private key.
Signed-off-by: Martin Dummer <martin.dummer@gmx.net>
2023-04-12 08:33:10 +02:00
MalteSchm
f6d0b0997f
typo
2023-04-11 18:57:57 +02:00
qubeck
00def1d8d1
Generic SML based power meters support ( #146 )
...
* add support for energy & power readings on SML based power meters, taking OBIS 16.7.1 for power (using mod. SML Parser lib. by olliiiver)
* switched SML read to use software serial
* made total power meter response controled by meter source to obtain either the sum of phase powers or explicit total power provided by meter
* made mqtt subscriptions to power meter topics meter source dependend
* simplified SML read loop and OBIS handler registration, + minor refactoring
* minor cleanup/style changes and optim. PowerMeter
* fixed build, add SOURCE_SML == 4
* removed optional usage of HW serial for SML power meter
* switched to usage of _powerMeter1Power for SML power reading to allign better with existing code
---------
Co-authored-by: helgeerbe <helge@erbehome.de>
2023-04-07 20:20:00 +02:00
berni2288
09fb0618b4
Merge branch 'MalteSchm-webinterface_summary_updates' into development
2023-04-05 22:27:17 +02:00
Thomas Basler
ede572f6e3
Status LED's: Implemented
...
They can be activated using device profiles.
2023-04-05 11:56:59 +02:00
Bernhard Kaszt
8ca664a8fe
Use AC power for limit calculation (= Support directly connected PV panels with Power Limiter) ( #154 )
...
* Power limiter: Use the actual AC power for limit calculation
instead of the last set limit.
In order support setups without battery connected (sources that don't exhaust the limit)
2023-04-05 10:30:03 +02:00
MalteSchm
459f9ffc2c
merging branches
2023-04-04 21:43:24 +02:00
MalteSchm
abffc38c11
fixing typos
2023-04-04 21:30:53 +02:00
Thomas Basler
ae323cd26f
Status LED's: Implemented
...
They can be activated using device profiles.
2023-04-04 18:53:23 +02:00
Bernhard Kaszt
e35254c8f2
New Power meter support: HTTP(S) + JSON (Shelly 3EM, Tasmota, Volkszähler etc.) ( #153 )
...
* Implement HTTP(s) + JSON type Power Meter support
---------
Co-authored-by: Bernhard Kaszt <berni@bcserv.eu>
2023-04-03 21:36:20 +02:00
MalteSchm
20bb7fc372
Show (Pylontech) battery infos in Live View
...
* adding data age to battery data
* Add battery enabled flag
* Webapi and websocket api for Battery
* Webinterface for battery
* fixed bug due to naming inconsistencies
* cleaned up rounding
* dist update
* change typename to uppercase
* reverting to original file
2023-04-02 20:58:28 +02:00
MalteSchm
6b85b8d4a2
Merge remote-tracking branch 'upstream/development' into battery_webinterface
2023-04-02 14:28:37 +02:00
MalteSchm
59c84bcb85
Webapi and websocket api for Battery
2023-04-02 13:00:46 +02:00
Bernhard Kaszt
4de043f3d4
Fix crash when AC charger is enabled but initialization fails
2023-04-02 10:46:07 +02:00
Bernhard Kaszt
c86c5133f0
Fix code style in Huawei files
2023-04-02 10:42:36 +02:00
MalteSchm
e514ef744b
adding data age to battery data
2023-04-01 15:34:32 +02:00
MalteSchm
ece131995a
linting errors
2023-03-29 19:04:41 +02:00
helgeerbe
b3c17c8ee8
Merge branch 'pr/MalteSchm/144' into development
2023-03-27 22:16:53 +02:00
MalteSchm
2aad13dc72
Changing SPI interface
2023-03-27 20:47:35 +02:00
MalteSchm
a4767827b4
merging master
2023-03-26 11:25:08 +02:00
MalteSchm
0b5c47cd2e
Adding enable/disable option and pin to control a switch/relais to power the Huawei PSU
2023-03-26 11:00:37 +02:00
MalteSchm
8576034b77
Adding Huawei CAN interface, web-api, websocket and Mqtt extensions to access the data
2023-03-24 10:03:22 +01:00
helgeerbe
0832ef86e4
reboot after power meter settings
2023-03-23 19:10:29 +01:00
helgeerbe
5d5124dd5b
fix last power meter update time
2023-03-22 14:53:36 +01:00
helgeerbe
41da6d489d
add missing webapi init for powermeter
2023-03-22 11:34:55 +01:00
Adminius
05a5b2367b
PowerMeter Class + SDM PowerMeter support
2023-03-21 23:46:54 +01:00
helgeerbe
06370baa0e
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-03-18 22:42:05 +01:00
helgeerbe
46ce6ad50f
Implement battery drain strategies:
...
- empty when full
- empty at night
2023-03-16 17:48:22 +01:00
helgeerbe
32a96bbd06
change all watt related vars to
...
int32_t to avoid cast problems with negativ values.
2023-03-16 12:34:14 +01:00
helgeerbe
04c7e4fa01
fix cast error with unsigned int
...
which results in wrong power limit settings if values become < 0 due
to power export to the grid.
2023-03-16 12:17:14 +01:00
Thomas Basler
2e33f5cd51
Display: Implement rotation setting and removed icons
2023-03-15 20:20:14 +01:00
Thomas Basler
c0b5049a74
Auto format: Reorder includes
2023-03-14 18:45:39 +01:00
helgeerbe
9214897245
for watt use uint32_t as std type to
...
avoid cast problems to uint16_t
2023-03-13 11:38:26 +01:00
MalteSchm
63c956af15
swap can library to better support newer ESPs
2023-03-12 17:27:41 +01:00
helgeerbe
01a2ffaed5
[Request] Show actual power limiter state in live view helgeerbe/OpenDTU-OnBattery#134
2023-03-10 16:29:00 +01:00
helgeerbe
43dc10b868
Merge branch 'inverter-settings' into development
2023-03-09 12:43:03 +01:00
helgeerbe
8df2c16cce
ensure STATE_DISCOVER if PowerLimter is enabled
2023-03-09 10:22:08 +01:00
Markus Dobel
9eff5f228b
feat: export panel settings (name, max power, offset) as prometheus metrics
2023-03-08 09:11:25 +01:00
helgeerbe
716fc867a1
powerLimiter with state machine
2023-03-07 21:04:19 +01:00
Bernhard Kaszt
06fbdf1f12
Add Pylontech battery to device pin manager
2023-03-05 19:55:56 +01:00
helgeerbe
4a51ae5038
victron charge power is integer
2023-03-01 10:23:37 +01:00
helgeerbe
26a8809121
stop inverter, if exporting power to grid
2023-02-28 13:09:10 +01:00
helgeerbe
4feaa1db98
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-02-27 20:11:06 +01:00
Thomas Basler
f36a31723a
Fix #636 : Allow full SSID length of 32 characters
2023-02-27 14:32:55 +01:00
helgeerbe
3b62d5708a
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-02-27 07:42:46 +01:00
Thomas Basler
c67b3e3cbd
Prometheus API: Set correct metrics type
2023-02-24 19:10:35 +01:00
helgeerbe
28b24d01ad
implement UI for target power consumption
2023-02-24 16:13:32 +01:00
helgeerbe
56151b0d12
make inverter and channel selectable
2023-02-23 21:46:59 +01:00
Thomas Basler
759f8b7208
Log errors if too less memory for webapi is available
2023-02-23 21:10:00 +01:00
helgeerbe
a2473645a5
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-02-23 12:01:34 +01:00
helgeerbe
9e1df83a87
remove map.h include
2023-02-21 22:12:15 +01:00
helgeerbe
1e7f6b8f0f
first version
2023-02-21 22:06:47 +01:00
helgeerbe
f560f25302
initial merge of power_limiter * missing is inverter and channel setting in gui
...
* due to bug _webApiPrometheus.init is commented out
2023-02-20 15:56:02 +01:00
Thomas Basler
dc66a82695
Fix typo in configuration. Relates to #603
...
Also increase buffer size to read whole config
2023-02-19 22:33:35 +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
19a1c0aa54
Added config parameters to set longitude and latitude
2023-02-18 16:53:28 +01:00
helgeerbe
6e0ae6d152
Extent JSON_BUFFER_SIZE 7000
2023-02-17 15:06:43 +01:00
helgeerbe
27f20a76f0
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-02-16 12:35:18 +01:00
helgeerbe
a529c91254
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-02-14 10:10:10 +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
helgeerbe
997023e52f
Add Hass sensors Battery voltage and Current
2023-02-07 16:51:30 +01:00
Thomas Basler
d4c838a16e
BREAKING CHANGE: Prometheus API!
...
Added additional field to the prometheus api which identifies a channel by it's type. That means that e.g. channel 0 exists for type AC and DC.
This commit also introduces a additional field in the statistics byte assignment table. This field identifies whether a channel is on the AC or DC side. MQTT and WebAPI is still compatible with the previous design.
2023-02-06 19:51:10 +01:00
helgeerbe
37d3bb0eb0
vedirect hass autodiscovery:
...
load output state as binary sensor
2023-02-06 17:35:01 +01:00
helgeerbe
1c01e927f9
Add victron pins to device manager
2023-02-02 23:01:22 +01:00
helgeerbe
bec6c20531
Merge remote-tracking branch 'tbnobody/OpenDTU/master'
2023-01-26 10:30:55 +01:00
Thomas Basler
2288a193e7
Extend pin mapping name to 63 characters
2023-01-20 18:28:35 +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
f7fb9a2bd6
Display: Add property to enable or disable the screensaver
2023-01-20 18:28:34 +01:00
Thomas Basler
d1483468c6
Rename Display properties and apply power safe immediatly
2023-01-20 18:28:33 +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
Thomas Basler
592dd73fca
Implement _dispX as function local variable
2023-01-20 18:28:23 +01:00
helgeerbe
9a7a0d293e
Merge remote-tracking branch 'tbnobody/OpenDTU/master'
2023-01-20 14:54:04 +01:00
Thomas Basler
1d07574f8a
Rename _lastPublish to _lastDisplayUpdate
2023-01-18 23:22:36 +01:00
Thomas Basler
e572e711a4
Code Style Changes
...
* Add License Identifier
* Move non public required includes to cpp
* Add curly brackets
2023-01-18 23:22:36 +01:00