Thomas Basler
0ec90e0000
webapp: Adjusted radio problem hint in home view to detect problems of nrf and cmt radios
2023-04-15 10:55:47 +02:00
Thomas Basler
c19d2007bd
webapp: Added cmt radio status to system overview
2023-04-15 10:55:47 +02:00
Thomas Basler
de2b7ab2d2
Check that all RF modules as in idle mode before sending mqtt packages
2023-04-15 10:55:47 +02:00
Thomas Basler
b7fb294368
Set DTU serial for CMT modules
2023-04-15 10:55:47 +02:00
Thomas Basler
ef614751b1
webapp: Show CMT pins in device manager
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
Thomas Basler
8404dd57a7
Add a HoymilesRadio base class
...
This enables to have multiple radio implementations while the inverter classes just refere to the base class
2023-04-15 10:55:47 +02:00
Thomas Basler
a7e9aaa862
Move reference to the radio instance into the inverter instance
...
This is required to support different radios for different inverters
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
690025e5fd
fixing a bug from merging and remove a leftover debug message
2023-04-13 10:06:06 +02:00
MalteSchm
be7a43fbfb
Removing un-necessary timestamp, commenting code and cleanups
2023-04-13 09:47:12 +02:00
MalteSchm
01849dc90a
adding Mqtt handling to main.cpp
2023-04-13 09:47:10 +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
MalteSchm
9efe076cc2
resolving merge conflict
...
adding missing statement from merge
fixing a bug introduced in merge
2023-04-13 09:39:04 +02:00
MalteSchm
fc5089e70b
resolving merge conflict
2023-04-13 09:36:00 +02:00
qubeck
b79619bf8b
add explicit checks to avoid potential div. by zero on application of artificially increased power limit if channel power becomes zero
2023-04-12 20:44:38 +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
0db4b5f226
Fix: src/WebApi_mqtt.cpp: typos in error messages
...
Signed-off-by: Martin Dummer <martin.dummer@gmx.net>
2023-04-12 08:37:49 +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
2d7115e1e8
typo
2023-04-11 18:58:18 +02:00
MalteSchm
f6d0b0997f
typo
2023-04-11 18:57:57 +02:00
berni2288
19b2dd4c7a
PowerMeter: Whitespace and {} fixes
2023-04-07 20:22:35 +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
helgeerbe
e29708f871
fix infinite state switch if battery is above
...
startThreshold and solar passtrhough is enabled
2023-04-06 18:32:50 +02:00
helgeerbe
ef51d75f2c
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-04-06 10:46:02 +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
Thomas Basler
ca0b8e9afc
Remove not required F() macro. Frees ~20kb flash.
2023-04-05 11:54:50 +02:00
Thomas Basler
dab5b4d723
webapp: Show inverter status in grey if polling is disabled (e.g. at night)
2023-04-05 11:52:35 +02:00
Thomas Basler
d501c4b836
Uses VSPI instead of HSPI and compatibility for C3, S2 and S3 MCUs
2023-04-05 11:51:09 +02:00
Thomas Basler
7d50fa373e
Allow use GPIO0 as NRF pins
2023-04-05 11:51:09 +02:00
MalteSchm
801ad469c5
corrected day yield
2023-04-05 10:51:07 +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
helgeerbe
c0dff1e7df
catch bad_alloc for Huawei and Pylontech WebApi_ws
2023-04-05 09:48:38 +02:00
MalteSchm
459f9ffc2c
merging branches
2023-04-04 21:43:24 +02:00
MalteSchm
169ea3d5d5
Api extensions
2023-04-04 21:31:32 +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
Thomas Basler
d6028cbd50
Remove not required F() macro. Frees ~20kb flash.
2023-04-04 18:51:18 +02:00
helgeerbe
0c34554b9c
don't set newPowerlimit if newLimit AND lastLimit in target window
2023-04-04 18:20:06 +02:00
helgeerbe
160b5b5b01
handle bad_alloc for vedirect status
2023-04-04 18:17:53 +02:00
qubeck
cd4a327671
limiting the artificialy increased power limit to inverter maximum power
2023-04-04 17:11:59 +02:00
Thomas Basler
acf413b616
webapp: Show inverter status in grey if polling is disabled (e.g. at night)
2023-04-03 22:25:32 +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
qubeck
bd57d0f19a
fixed casting issues
2023-04-02 22:26:44 +02:00
qubeck
a1da3f9842
producing DC channel aware artificial increase of applied power limit to mitigate fixed distribution of applied power limit across all channels
2023-04-02 22:13:43 +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
78838585f7
fixed bug due to naming inconsistencies
2023-04-02 14:17:23 +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
a0bbf61db2
Add battery enabled flag
2023-04-02 10:11:48 +02:00
MalteSchm
e514ef744b
adding data age to battery data
2023-04-01 15:34:32 +02:00
MalteSchm
d1e43c11b9
Run Huawei code only when enabled
2023-04-01 14:43:24 +02:00
MalteSchm
1f6301c2c0
Check for empty MQTT topic
...
Please enter the commit message for your changes. Lines starting
2023-04-01 14:02:09 +02:00
MalteSchm
f4455ccb93
reverting
2023-04-01 13:50:04 +02:00
Thomas Basler
9b74badda8
Uses VSPI instead of HSPI and compatibility for C3, S2 and S3 MCUs
2023-03-30 23:24:11 +02:00
Thomas Basler
fe5d3e29e3
Allow use GPIO0 as NRF pins
2023-03-30 23:19:29 +02:00
MalteSchm
a091e80ed0
deal with un-initialized values
2023-03-29 19:07:16 +02:00
MalteSchm
a968f09d73
Pin config
2023-03-29 19:06:41 +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
helgeerbe
e0a80734f3
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-03-27 21:10:03 +02:00
MalteSchm
2aad13dc72
Changing SPI interface
2023-03-27 20:47:35 +02:00
MalteSchm
07ea03d12b
fixing linting issue
2023-03-26 15:46:33 +02:00
MalteSchm
06d5da50a2
the implementation has used HSPI with the default VSPI pins for a long time. Change VSPI and HSPI to use the right pins in order to avoid confusing
2023-03-26 12:36:21 +02:00
MalteSchm
d80f62d1b9
disable Mqtt output when disabled
2023-03-26 12:13:06 +02:00
MalteSchm
26eedc9701
align mqtt format with the other sources
2023-03-26 11:56:41 +02:00
MalteSchm
89be653a51
inverse logic for power pin (active high)
2023-03-26 11:56:11 +02:00
MalteSchm
a4767827b4
merging master
2023-03-26 11:25:08 +02:00
MalteSchm
3b57550ead
adding basic mqtt support
2023-03-26 11:02:40 +02:00
MalteSchm
bbf3d44d69
working with a reference
2023-03-26 11:01:32 +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
helgeerbe
7d48e426dc
free JsonDocument for livedata as soon as possible
2023-03-24 15:39:03 +01: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
Thomas Basler
8d8c7f8a71
Fixed typo: Successfull --> Successful
2023-03-23 23:30:55 +01:00
Thomas Basler
21718a9e8f
Fix #736 : Check for payloads < 0 and ignore them
2023-03-23 21:18:00 +01:00
helgeerbe
3f8226c36c
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-03-23 19:14:14 +01:00
helgeerbe
0832ef86e4
reboot after power meter settings
2023-03-23 19:10:29 +01:00
helgeerbe
55dc4dbdfc
reinitialize mqqt subscription after reconnect
2023-03-22 17:47:15 +01:00
helgeerbe
5d5124dd5b
fix last power meter update time
2023-03-22 14:53:36 +01:00
helgeerbe
a441a6eaf7
fix mqqt supscibe in power meter
2023-03-22 14:11:55 +01:00
helgeerbe
aaa9f5cd98
power meter settings were not restored. On reboot only default were set
2023-03-22 12:34:47 +01:00
helgeerbe
41da6d489d
add missing webapi init for powermeter
2023-03-22 11:34:55 +01:00
Eugen
effd4e89ab
BF: get powerTotal from PowerMeter
2023-03-22 08:21:34 +01:00
Adminius
05a5b2367b
PowerMeter Class + SDM PowerMeter support
2023-03-21 23:46:54 +01:00
Thomas Basler
ac73747a29
Fix #723 : For some reason, a space was added before 1 digit numbers
2023-03-20 18:05:43 +01:00
helgeerbe
19252629cb
minimum panel DC power 20W
2023-03-20 15:17:07 +01:00
helgeerbe
a6c852a82c
if new limit too low, turn inverter off
...
within state
2023-03-20 12:35:29 +01:00
helgeerbe
2dc7089aa6
Start at night
2023-03-19 22:53:24 +01:00
helgeerbe
b9acbe6f2c
off when newPowerLimit < lowerLimit
2023-03-18 23:50:34 +01:00
helgeerbe
06370baa0e
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-03-18 22:42:05 +01:00
helgeerbe
c95468f972
fix comparison between int and double
2023-03-18 14:44:28 +01:00
Thomas Basler
75364f89cb
Publish all valid digits via mqtt
2023-03-16 19:29:37 +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
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
Bernhard Kaszt
e95acbec46
PylontechCanReceiver.cpp: Cosmetic changes
2023-03-12 18:47:29 +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
helgeerbe
418fea2cfc
fix veStruct
...
* PPV is int not double
* fix: initialize veStruct to 0 to avoid random data on startup
2023-03-09 10:16:55 +01:00
helgeerbe
6f3e33c0b1
exit loop after turn inverter on or off
2023-03-08 22:11:01 +01:00
Bernhard Kaszt
a66f818e75
Hide Victron Ve.direct UI elements from Live page when disabled
...
Resolves #91
2023-03-08 19:54:19 +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
06a0f76fed
Fix local build working but Github build failing
2023-03-05 20:45:27 +01:00
Bernhard Kaszt
06fbdf1f12
Add Pylontech battery to device pin manager
2023-03-05 19:55:56 +01:00
Bernhard Kaszt
304d90062d
Revert broken change in condition that sets _consumeSolarPowerOnly
...
6709338dbd
2023-03-05 16:30:53 +01:00
Bernhard Kaszt
a6e720f154
Powerlimiter: Remove MQTT Topic debug message
2023-03-05 15:41:21 +01:00
Bernhard Kaszt
804f225908
Fix _consumeSolarPowerOnly sometimes being set to false when it shouldn't
2023-03-05 13:32:18 +01:00
helgeerbe
b70407d7fe
Initilise variables
2023-03-04 13:02:30 +01:00
helgeerbe
9391b11403
fix start inverter
2023-03-04 11:59:10 +01:00
helgeerbe
b7dda83545
use efficiency factor if limit is set to
...
victronChargePower
2023-03-03 20:34:11 +01:00
helgeerbe
cf4a35e148
fix starting and stopping inverter
2023-03-03 19:51:04 +01:00
helgeerbe
6709338dbd
fix setting consumeSolarPowerOnly
2023-03-02 16:18:44 +01:00
helgeerbe
67a5217482
start inverter if power consumption greater or equal lower power limit
2023-03-02 14:27:42 +01:00
helgeerbe
3e38941b57
start inverter only if not exporting to grid
2023-03-01 13:34:27 +01:00
helgeerbe
6241a31e8c
comment out full wifi scan
2023-03-01 12:09:53 +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
3b62d5708a
Merge remote-tracking branch 'tbnobody/OpenDTU/master' into development
2023-02-27 07:42:46 +01:00
Thomas Basler
4d18ccf01d
Prometheus API: Only output the channels if they where read at least once
2023-02-26 19:31:37 +01:00
helgeerbe
e9fce49fee
fix lint error
2023-02-25 22:23:05 +01:00
helgeerbe
32342dcd5d
fix voltage threshhold to 2 decimal digits
2023-02-25 22:12:44 +01:00
helgeerbe
17dd9db946
set min target power consumption to 0
2023-02-25 20:17:25 +01:00
helgeerbe
3ed61319ad
fix config read for power consumption
2023-02-25 18:58:41 +01:00
helgeerbe
1e968a1713
Add target for power consumption
2023-02-25 16:28:21 +01:00
helgeerbe
3f3540bd33
print ve.direct rx, tx pins on init
2023-02-25 15:29:00 +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
cd7ece7caf
fix hard coded channel settings
2023-02-24 10:45:59 +01:00
helgeerbe
10f907477d
fix name for inverter id and channel id
2023-02-23 22:41:37 +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
1caeb1d88b
fix logging for out of ressources
2023-02-23 09:46:24 +01:00
helgeerbe
a758d894f6
LiveService if out of ressources close websocket
2023-02-22 15:46:52 +01:00
helgeerbe
0f80a25937
send http 429 "Too Many Requets",
...
if prometheus api is out of resources
2023-02-22 14:13:17 +01:00
helgeerbe
1e7f6b8f0f
first version
2023-02-21 22:06:47 +01:00
helgeerbe
30440472f7
fix lint errors
2023-02-20 21:04:43 +01:00
helgeerbe
f973de4ab6
aktivate prometheus interface
2023-02-20 21:00:07 +01:00
Thomas Basler
97bc964b6c
Fix lint errors
2023-02-20 20:19:23 +01:00