Commit graph

44 commits

Author SHA1 Message Date
andig
84f5c56dca
chore: return to sprig (#16482) 2024-10-04 08:10:56 +02:00
andig
500a8b5258 chore: fix sprout 2024-08-25 16:28:00 +02:00
andig
ac5e68648d Revert "chore: upgrade libraries"
This reverts commit 92bacbdce7.
2024-08-18 19:51:19 +02:00
andig
92bacbdce7 chore: upgrade libraries 2024-08-18 18:32:33 +02:00
andig
8958b6ecd7
Fix case-insensitively merging template maps (#15351) 2024-08-11 21:49:34 +02:00
andig
c04f52f851 chore: deprecate TxtFuncMap 2024-06-26 10:20:20 +02:00
andig
b5afd2d2ce chore: simplify 2024-05-18 11:54:08 +02:00
andig
940ce81a84
chore: upgrade go-sprout (#13841) 2024-05-15 22:14:44 +02:00
andig
9241cb919e
chore: migrate to sprout (#13477) 2024-04-18 08:37:14 +02:00
andig
f6f4e30fb5 chore: simplify render mode 2024-01-27 18:18:13 +01:00
andig
789497d94c
chore: simplify usage logic (#11895) 2024-01-27 18:02:07 +01:00
andig
58e2421a5b
chore: fix linter (#11028) 2023-12-06 18:29:32 +01:00
andig
2022247fd1
Vzlogger: fix yaml quoting not matching uuid (#10777) 2023-11-14 16:46:10 +01:00
andig
e14fdf6822
Require Go 1.21 (#9244) 2023-08-17 21:41:44 +02:00
andig
3f88c56b0b
Simplify template handling and trim trailing spaces (#7144)
Some checks failed
Release / call-build-workflow (push) Has been cancelled
Release / Publish Docker :release (push) Has been cancelled
Release / Github & APT (push) Has been cancelled
Release / Demo (push) Has been cancelled
Release / Hassio Addon (push) Has been cancelled
2023-04-01 10:32:49 +02:00
andig
85c7126bbd Fix rendering nil interfaces as "<nil>" string 2023-03-02 15:51:19 +01:00
andig
c0d76a7918 chore: minor cleanup 2023-02-27 16:15:03 +01:00
andig
7412b0a4a9
Templates: remove per-template config defaults (#6465) 2023-02-26 17:57:05 +01:00
andig
06a68d8c40
Switch sockets: allow removing vehicle selection for integrated devices (#6368) 2023-02-26 13:40:15 +01:00
andig
af883a4b3f
chore: remove template languague (#6245) 2023-02-15 22:30:01 +01:00
andig
54321c0cf7
Add configuration api (#6035)
Co-authored-by: Michael Geers <michael@geers.tv>
2023-02-08 11:29:27 +01:00
Andreas Linde
28d60a5993
Honor advanced setting in templates defaults.yaml (#5965) 2023-01-31 22:44:40 +01:00
Andreas Linde
d408767b2d
Configure: fix handling of PV systems (#4806)
- The configure intents to present devices that implement multiple usages in a single device or have linked templates and provide an easier step by step configuration experience e.g. by not asking for the same data for different usages over and over again
- Commit 880557594f changes this behaviour and now presents all devices that have multiple usages, e.g. meters that could be used as battery or pv meter
- This change introduces a new property `allineone` that should be used with the `usage` `param` the identify a device that implements multiple usages in the same device
- The filter to present these devices is extended by checking for this property
2022-10-13 13:57:15 +02:00
andig
cb3f393572
Templates: remove unused parameter dependencies (#4699) 2022-10-02 19:51:08 +02:00
andig
b5b73bd107 Templates: simplify language handling 2022-10-02 19:42:26 +02:00
andig
880557594f
Templates: simplify guided setup (#4698) 2022-10-02 19:09:30 +02:00
andig
f06922b298
Fronius Gen24: fix integer deprecated (#4602) 2022-09-27 17:43:27 +02:00
andig
cd906fd8e1
Templates: allow keys in arbitrary case (#4499)
Some checks failed
Release / call-build-workflow (push) Has been cancelled
Release / Publish Docker :release (push) Has been cancelled
Release / Github & APT (push) Has been cancelled
Release / Hassio Addon (push) Has been cancelled
2022-09-17 19:25:31 +02:00
andig
5662d0e55b Fix defaults not applied and improve testability (#3777) 2022-07-22 11:00:33 +02:00
andig
7335af2543
Templates: fix modbus defaults not applied to configuration (#3635) 2022-06-16 17:26:49 +02:00
andig
69bdae685c Yaml: selectively quote leading zeros (#3595) 2022-06-06 14:23:15 +02:00
andig
bc4545e173 chore: fix linter 2022-04-17 22:36:22 +02:00
andig
2211582db3 Introduce covers attribute for obsolete templates (#3070) 2022-04-03 16:51:58 +02:00
andig
1bfd0f6355 Require Go 1.18 and use generics (#2116) 2022-04-02 12:47:26 +02:00
andig
6fe0331f38 chore: simplify 2022-03-02 18:55:13 +01:00
Andreas Linde
a83d696926
Fix template handling with modbus params 2022-01-29 16:30:11 +01:00
Andreas Linde
a52f52b406
Template enhancements (#2274)
- Only add SMA HEMS Setup, if required values exist (e.g. machine-id). Also asks the user if this should be added
- New templates: Alfen, PC Electric Garo, go-e V3 (moved into separate template), Tasmota meter, Huawei inverter with Sdongle
- Updated templates: SolarEdge Inverter, Sunspec
- New capabilities can be assigned: 1p3p, RFID
- Added group information instead of `generic` flag. Used e.g. for marking power plugs or generic devices
- Requirement description text can now be markdown text (required for documentation page)
- Replaced `description` with product list, separating brand from description (required for documentation page)
- Generate newly structured documentation yaml files
- Fix https://github.com/evcc-io/evcc/issues/2385
2022-01-23 15:21:13 +01:00
Andreas Linde
cfb174f9f5
More template stuff (#2164)
Some checks failed
Default / Build (push) Failing after 2m0s
Default / Build UI (push) Failing after 13s
Release / Publish Docker :release (push) Has been cancelled
Release / call-build-workflow (push) Has been cancelled
Release / Publish Github & APT release (push) Has been cancelled
- Configure now asks for the users knowledge level, so advanced mode can be reached without calling with `--advanced`
- Add template for solaredge inverter
- Add beta template for sungrow inverter
- Add template for MQTT based meter
- Add more template documentation
- Add check and error message for invalid config properties when using templates
- Option to specify language specific template descriptions
- Option to make params dependent on values of other params 
- Option to add sponsortoken in advanced mode
- Option to set minCurrent in advanced mode
- Remove sponsorship requirement from Daheimladen wallbox
- Multiple fixes (FritzDect meter, Kostsal Piko meter, ...)
2022-01-09 12:59:54 +01:00
Andreas Linde
bfb61c4965
Various template improvements (#2119)
- Remove unused port param in senec-home template
- Support for multiple predefined param sets, also adds identifier params to Tesla, Tronity, OVMS, ...
- Properly handle optional number/float checks
- Add Dacia vehicle template
2021-12-26 17:33:32 +01:00
Andreas Linde
0c4e338c22
Fix identifiers in templates not working (#2037)
Fixes #2036
2021-12-13 18:06:16 +01:00
Andreas Linde
96a0475390
Template improvements (#2019)
Fix #2018

- Update go-e firmware requirements
- Change cfos devices not to use modbus config schema
- Add support for `onIdentify` params of vehicles
- Add support for `resetOnDisconnect` for loadpoints
- Add support for defining device specific modbus port, baudrate and comset defaults
- Handle fatal error when `evcc.yaml` exists and the process doesn't have write permissions
- Some bug fixes
2021-12-12 19:56:28 +01:00
Andreas Linde
984392d047
More configure flow improvements (#2005)
- Added Tinkerforge Warp help texts to make it clear that the MQTT host and port need to be added
- Allow to define linked templates in guided setup to be added multiple times, e.g. multiple SMA PV or Battery inverters with an SMA Home Manager setup
- Allow to exclude a linked template, if devices are added of another linked template, e.g. don't ask for SMA PV inverters if an SMA Energy Meter is added
- Various other changes
2021-12-09 22:29:41 +01:00
Andreas Linde
4e119e8f6d
cli configure updates (#1966)
- Add `--advanced` mode, where params defined as `advanced: true` will be asked
- Add support for handling user input for lists, e.g. `identifiers`
- Bool values are now a No/Yes selection instead of text input
- Common definitions (params and render) are moved into single `parambaselist.yaml` file
- Some refactoring
2021-12-02 14:31:31 +01:00
Andreas Linde
7e41a970d5
Experimentelle geführte Erstellung der Konfigurationsdatei (#1888)
Dies ist eine experimentelle Umsetzung im folgenden aufgeführten Ziele.

Wie es verwendet:
- Start über `evcc configure`
- Die Konfiguration wird in evcc.yaml geschrieben. Falls diese existiert kann ein alternativer Dateiname angegeben werden

Was es kann:
- Eine geführte Erstellung der Konfigurationsdatei
- Direktes Testen ob die Konfiguration jedes Gerätes auch funktioniert
- Konfigurationsabhängigkeiten durch direkte Konfiguration der Abhängigkeit lösen (z.B. Sponsorshipt required)
- Konfiguration in für Anwender bekannte Informationen und möglichst wenig Informationseingabe zu ermöglichen, z.B. anhand von Produkten anstatt aus der Implementierungssicht
- Bisherige Konfiguration funktioniert weiter
2021-11-30 14:29:09 +01:00