diff --git a/charger/charger.go b/charger/charger.go index 4b1676831b..a8ff914ea1 100644 --- a/charger/charger.go +++ b/charger/charger.go @@ -24,7 +24,7 @@ func init() { registry.AddCtx(api.Custom, NewConfigurableFromConfig) } -//go:generate decorate -f decorateCustom -b *Charger -r api.Charger -t "api.ChargerEx,MaxCurrentMillis,func(float64) error" -t "api.Identifier,Identify,func() (string, error)" -t "api.PhaseSwitcher,Phases1p3p,func(int) error" -t "api.Resurrector,WakeUp,func() error" -t "api.Battery,Soc,func() (float64, error)" -t "api.Meter,CurrentPower,func() (float64, error)" -t "api.EnergyImport,EnergyImport,func() (float64, error)" -t "api.PhaseCurrents,Currents,func() (float64, float64, float64, error)" -t "api.PhaseVoltages,Voltages,func() (float64, float64, float64, error)" +//go:generate decorate -f decorateCustom -b *Charger -r api.Charger -t "api.ChargerEx,MaxCurrentMillis,func(float64) error" -t "api.Identifier,Identify,func() (string, error)" -t "api.PhaseSwitcher,Phases1p3p,func(int) error" -t "api.Resurrector,WakeUp,func() error" -t "api.Battery,Soc,func() (float64, error)" -t "api.Meter,CurrentPower,func() (float64, error)" -t "api.ImportImport,ImportImport,func() (float64, error)" -t "api.PhaseCurrents,Currents,func() (float64, float64, float64, error)" -t "api.PhaseVoltages,Voltages,func() (float64, float64, float64, error)" // NewConfigurableFromConfig creates a new configurable charger func NewConfigurableFromConfig(ctx context.Context, other map[string]interface{}) (api.Charger, error) { @@ -39,7 +39,7 @@ func NewConfigurableFromConfig(ctx context.Context, other map[string]interface{} // optional measurements Power *provider.Config - Energy *provider.Config + Import *provider.Config Currents, Voltages []provider.Config } @@ -132,7 +132,7 @@ func NewConfigurableFromConfig(ctx context.Context, other map[string]interface{} } // decorate measurements - powerG, energyG, err := meter.BuildMeasurements(ctx, cc.Power, cc.Energy) + powerG, importG, _, err := meter.BuildMeasurements(ctx, cc.Power, cc.Import, nil) if err != nil { return nil, err } @@ -142,7 +142,7 @@ func NewConfigurableFromConfig(ctx context.Context, other map[string]interface{} return nil, err } - return decorateCustom(c, maxcurrentmillis, identify, phases1p3p, wakeup, soc, powerG, energyG, currentsG, voltagesG), nil + return decorateCustom(c, maxcurrentmillis, identify, phases1p3p, wakeup, soc, powerG, importG, currentsG, voltagesG), nil } // NewConfigurable creates a new charger diff --git a/evcc.dist.yaml b/evcc.dist.yaml index 08bb751296..aa4a06652d 100644 --- a/evcc.dist.yaml +++ b/evcc.dist.yaml @@ -62,7 +62,7 @@ meters: rtu: true # rs485 device connected using ethernet adapter id: 2 power: Power # default value, optionally override - energy: Sum # default value, optionally override + import: Sum # default value, optionally override - name: pv type: ... - name: battery diff --git a/templates/definition/meter/abb-ab.yaml b/templates/definition/meter/abb-ab.yaml index 8831966df4..941f07de97 100644 --- a/templates/definition/meter/abb-ab.yaml +++ b/templates/definition/meter/abb-ab.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: abb power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/acrel-adw300.yaml b/templates/definition/meter/acrel-adw300.yaml index 16a2e54cfd..7b03e0ddf4 100644 --- a/templates/definition/meter/acrel-adw300.yaml +++ b/templates/definition/meter/acrel-adw300.yaml @@ -21,7 +21,7 @@ render: | {{- if eq .usage "pv" }} scale: -1 {{- end }} - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/alpha-ess-smile.yaml b/templates/definition/meter/alpha-ess-smile.yaml index 564caa1a72..7365ab5d3e 100644 --- a/templates/definition/meter/alpha-ess-smile.yaml +++ b/templates/definition/meter/alpha-ess-smile.yaml @@ -38,7 +38,7 @@ render: | address: 33 # 0x21 Total Active power (Grid Meter) type: holding decode: int32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -115,7 +115,7 @@ render: | address: 1075 # 0x433 PV6 power type: holding decode: uint32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -132,7 +132,7 @@ render: | address: 294 # 0x126 Battery Power type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/apsystems-ez1.yaml b/templates/definition/meter/apsystems-ez1.yaml index b35eb26266..948a7a36e5 100644 --- a/templates/definition/meter/apsystems-ez1.yaml +++ b/templates/definition/meter/apsystems-ez1.yaml @@ -14,7 +14,7 @@ render: | source: http uri: http://{{ .host }}:8050/getOutputData jq: .data.p1+.data.p2 - energy: + import: source: http uri: http://{{ .host }}:8050/getOutputData jq: .data.te1+.data.te2 diff --git a/templates/definition/meter/be-mpm3pm.yaml b/templates/definition/meter/be-mpm3pm.yaml index 1235496823..4ffdab2c66 100644 --- a/templates/definition/meter/be-mpm3pm.yaml +++ b/templates/definition/meter/be-mpm3pm.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: MPM power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/bge_tech_ds100.yaml b/templates/definition/meter/bge_tech_ds100.yaml index 9293f62a23..30ab4f0c1c 100644 --- a/templates/definition/meter/bge_tech_ds100.yaml +++ b/templates/definition/meter/bge_tech_ds100.yaml @@ -21,7 +21,7 @@ render: | {{- if eq .usage "pv" }} scale: -1 {{- end }} - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/bge_tech_ws100.yaml b/templates/definition/meter/bge_tech_ws100.yaml index 82c592bde8..07badcfb76 100644 --- a/templates/definition/meter/bge_tech_ws100.yaml +++ b/templates/definition/meter/bge_tech_ws100.yaml @@ -21,7 +21,7 @@ render: | {{- if eq .usage "pv" }} scale: -1 {{- end }} - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/cg-em24.yaml b/templates/definition/meter/cg-em24.yaml index 47616409ae..817037d845 100644 --- a/templates/definition/meter/cg-em24.yaml +++ b/templates/definition/meter/cg-em24.yaml @@ -16,7 +16,7 @@ render: | {{- include "modbus" . }} model: cgem24 power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/cg-emt1xx.yaml b/templates/definition/meter/cg-emt1xx.yaml index c37cda9d87..1a7b43c8fc 100644 --- a/templates/definition/meter/cg-emt1xx.yaml +++ b/templates/definition/meter/cg-emt1xx.yaml @@ -21,7 +21,7 @@ render: | type: input decode: int32 scale: {{ if eq .usage "pv" }}-{{ end }}0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/cg-emt3xx.yaml b/templates/definition/meter/cg-emt3xx.yaml index b146494b1c..cdc9e86896 100644 --- a/templates/definition/meter/cg-emt3xx.yaml +++ b/templates/definition/meter/cg-emt3xx.yaml @@ -28,7 +28,7 @@ render: | {{- include "modbus" . }} model: cgex3x0 power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/demo-battery.yaml b/templates/definition/meter/demo-battery.yaml index 9265a38747..38192888a3 100644 --- a/templates/definition/meter/demo-battery.yaml +++ b/templates/definition/meter/demo-battery.yaml @@ -60,7 +60,7 @@ render: | source: const value: {{ .power }} {{- if .energy }} - energy: + import: source: const value: {{ .energy}} {{- end }} diff --git a/templates/definition/meter/demo-meter.yaml b/templates/definition/meter/demo-meter.yaml index 6129f62818..8323f4fd01 100644 --- a/templates/definition/meter/demo-meter.yaml +++ b/templates/definition/meter/demo-meter.yaml @@ -47,7 +47,7 @@ render: | source: const value: {{ .power }} {{- if .energy }} - energy: + import: source: const value: {{ .energy}} {{- end }} diff --git a/templates/definition/meter/deye-hybrid-3p.yaml b/templates/definition/meter/deye-hybrid-3p.yaml index 2b2c09ef5e..408c9dc114 100644 --- a/templates/definition/meter/deye-hybrid-3p.yaml +++ b/templates/definition/meter/deye-hybrid-3p.yaml @@ -36,7 +36,7 @@ render: | address: 625 # Grid side total power type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -95,7 +95,7 @@ render: | address: 675 # "PV4 input power" type: holding decode: uint16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -112,7 +112,7 @@ render: | address: 590 # "Battery output power" type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/deye-hybrid-hp3.yaml b/templates/definition/meter/deye-hybrid-hp3.yaml index fb5dcd0e31..cbfa1b6096 100644 --- a/templates/definition/meter/deye-hybrid-hp3.yaml +++ b/templates/definition/meter/deye-hybrid-hp3.yaml @@ -35,7 +35,7 @@ render: | address: 625 # Grid side total power type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -98,7 +98,7 @@ render: | type: holding decode: uint16 scale: 10 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -116,7 +116,7 @@ render: | type: holding decode: int16 scale: 10 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/deye-mi.yaml b/templates/definition/meter/deye-mi.yaml index 00f9ee0035..3df5fd25b2 100644 --- a/templates/definition/meter/deye-mi.yaml +++ b/templates/definition/meter/deye-mi.yaml @@ -31,7 +31,7 @@ render: | type: holding decode: uint32 scale: 0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/deye-storage.yaml b/templates/definition/meter/deye-storage.yaml index 94a3828990..dd8670252c 100644 --- a/templates/definition/meter/deye-storage.yaml +++ b/templates/definition/meter/deye-storage.yaml @@ -25,7 +25,7 @@ render: | address: 169 # "Total grid power" type: holding decode: int16 - energy: + import: source: calc add: - source: modbus @@ -71,7 +71,7 @@ render: | address: 189 # "PV4 input power" type: holding decode: uint16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -88,7 +88,7 @@ render: | address: 190 # "Battery output power" type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/deye-string.yaml b/templates/definition/meter/deye-string.yaml index 393e8759dd..fcd4b9ddec 100644 --- a/templates/definition/meter/deye-string.yaml +++ b/templates/definition/meter/deye-string.yaml @@ -24,7 +24,7 @@ render: | type: holding decode: uint32 scale: 0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/dsmr.yaml b/templates/definition/meter/dsmr.yaml index ff60c547bb..110fb91019 100644 --- a/templates/definition/meter/dsmr.yaml +++ b/templates/definition/meter/dsmr.yaml @@ -20,5 +20,5 @@ render: | type: dsmr uri: {{ .host }}:{{ .port }} {{- if .energy }} - energy: {{ .energy }} + import: {{ .energy }} {{- end }} diff --git a/templates/definition/meter/dzg.yaml b/templates/definition/meter/dzg.yaml index b8020c551d..22051d6d3e 100644 --- a/templates/definition/meter/dzg.yaml +++ b/templates/definition/meter/dzg.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: dzg power: ImportPower - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/eastron-sdm120.yaml b/templates/definition/meter/eastron-sdm120.yaml index d457e57c99..b34ea7e005 100644 --- a/templates/definition/meter/eastron-sdm120.yaml +++ b/templates/definition/meter/eastron-sdm120.yaml @@ -20,7 +20,7 @@ render: | {{- if eq .usage "pv" }} scale: -1 {{- end }} - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/eastron-sdm220_230.yaml b/templates/definition/meter/eastron-sdm220_230.yaml index a2539593d9..282d397faf 100644 --- a/templates/definition/meter/eastron-sdm220_230.yaml +++ b/templates/definition/meter/eastron-sdm220_230.yaml @@ -19,4 +19,4 @@ render: | {{- include "modbus" . }} model: sdm220 power: Power - energy: Import + import: Import diff --git a/templates/definition/meter/eastron-sdm72.yaml b/templates/definition/meter/eastron-sdm72.yaml index 79635c6791..7298b7cb08 100644 --- a/templates/definition/meter/eastron-sdm72.yaml +++ b/templates/definition/meter/eastron-sdm72.yaml @@ -13,4 +13,4 @@ render: | {{- include "modbus" . }} model: sdm72 power: Power - energy: Import + import: Import diff --git a/templates/definition/meter/eastron-sdm72v2_630.yaml b/templates/definition/meter/eastron-sdm72v2_630.yaml index 31e5452daa..6c0d8a85d1 100644 --- a/templates/definition/meter/eastron-sdm72v2_630.yaml +++ b/templates/definition/meter/eastron-sdm72v2_630.yaml @@ -25,7 +25,7 @@ render: | {{- include "modbus" . }} model: sdm power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/enphase.yaml b/templates/definition/meter/enphase.yaml index dbb9f6b1ad..e4aa0ea3c2 100644 --- a/templates/definition/meter/enphase.yaml +++ b/templates/definition/meter/enphase.yaml @@ -42,7 +42,7 @@ render: | insecure: true {{- end }} jq: if .production[] | select(.measurementType == "production").activeCount >= 1 then .production[] | select(.measurementType == "production").wNow else .production[] | select(.type == "inverters").wNow end - energy: + import: source: http uri: http://{{ .host }}/production.json {{- if .token }} diff --git a/templates/definition/meter/fox-ess-h3.yaml b/templates/definition/meter/fox-ess-h3.yaml index e9ddc36d92..2f0832410b 100644 --- a/templates/definition/meter/fox-ess-h3.yaml +++ b/templates/definition/meter/fox-ess-h3.yaml @@ -46,7 +46,7 @@ render: | type: holding decode: int16 scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/fronius-gen24.yaml b/templates/definition/meter/fronius-gen24.yaml index 447c65f17f..ad12b5ddae 100644 --- a/templates/definition/meter/fronius-gen24.yaml +++ b/templates/definition/meter/fronius-gen24.yaml @@ -32,7 +32,7 @@ render: | value: - 203:W - 213:W - energy: + import: source: sunspec uri: {{ .host }}:{{ .port }} id: 200 @@ -125,7 +125,7 @@ render: | uri: {{ .host }}:{{ .port }} id: 1 value: 160:4:DCW # mppt 4 discharge - energy: + import: source: sunspec uri: {{ .host }}:{{ .port }} id: 1 diff --git a/templates/definition/meter/go-e-controller.yaml b/templates/definition/meter/go-e-controller.yaml index 5eb1efb39b..3cda5e1ef6 100644 --- a/templates/definition/meter/go-e-controller.yaml +++ b/templates/definition/meter/go-e-controller.yaml @@ -14,7 +14,7 @@ render: | source: http uri: http://{{ .host }}/api/status?filter=ccp jq: .ccp[1] - energy: + import: source: http uri: http://{{ .host }}/api/status?filter=cec jq: .cec[1][0]/1000 @@ -24,7 +24,7 @@ render: | source: http uri: http://{{ .host }}/api/status?filter=ccp jq: .ccp[4] - energy: + import: source: http uri: http://{{ .host }}/api/status?filter=cec jq: .cec[4][0]/1000 diff --git a/templates/definition/meter/goodwe-dt.yaml b/templates/definition/meter/goodwe-dt.yaml index 8ca3d5fd02..5f2b03d392 100644 --- a/templates/definition/meter/goodwe-dt.yaml +++ b/templates/definition/meter/goodwe-dt.yaml @@ -20,7 +20,7 @@ render: | address: 781 # Actual Power type: holding decode: uint16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration diff --git a/templates/definition/meter/goodwe-hybrid.yaml b/templates/definition/meter/goodwe-hybrid.yaml index de984aa8cc..18616c6fbd 100644 --- a/templates/definition/meter/goodwe-hybrid.yaml +++ b/templates/definition/meter/goodwe-hybrid.yaml @@ -29,7 +29,7 @@ render: | type: holding decode: int32 scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration @@ -66,7 +66,7 @@ render: | address: 35117 # Ppv4 PV4 Power type: holding decode: uint32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration @@ -92,7 +92,7 @@ render: | type: holding decode: uint16 {{- if eq .battery "1" }} - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration diff --git a/templates/definition/meter/growatt-hybrid-tlxh.yaml b/templates/definition/meter/growatt-hybrid-tlxh.yaml index 367ba34c56..632bc74b23 100644 --- a/templates/definition/meter/growatt-hybrid-tlxh.yaml +++ b/templates/definition/meter/growatt-hybrid-tlxh.yaml @@ -34,7 +34,7 @@ render: | type: input decode: uint32 scale: -0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -75,7 +75,7 @@ render: | type: input decode: uint32 scale: 0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -103,7 +103,7 @@ render: | type: input decode: uint32 scale: -0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/growatt-hybrid.yaml b/templates/definition/meter/growatt-hybrid.yaml index b53a7fc8ef..4df2a755f3 100644 --- a/templates/definition/meter/growatt-hybrid.yaml +++ b/templates/definition/meter/growatt-hybrid.yaml @@ -46,7 +46,7 @@ render: | type: input decode: uint32 scale: -0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration @@ -64,7 +64,7 @@ render: | type: input decode: uint32 scale: 0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration @@ -92,7 +92,7 @@ render: | type: input decode: uint32 scale: -0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration diff --git a/templates/definition/meter/hoymiles-ahoydtu.yaml b/templates/definition/meter/hoymiles-ahoydtu.yaml index 5d39c11a69..dfa3154913 100644 --- a/templates/definition/meter/hoymiles-ahoydtu.yaml +++ b/templates/definition/meter/hoymiles-ahoydtu.yaml @@ -19,7 +19,7 @@ render: | source: http uri: http://{{ .host }}/api/inverter/id/{{ .id }} jq: .ch[0][2] - energy: + import: source: http uri: http://{{ .host }}/api/inverter/id/{{ .id }} jq: .ch[0][6] diff --git a/templates/definition/meter/hoymiles-opendtu.yaml b/templates/definition/meter/hoymiles-opendtu.yaml index 3d86d6e922..e48d4bc07d 100644 --- a/templates/definition/meter/hoymiles-opendtu.yaml +++ b/templates/definition/meter/hoymiles-opendtu.yaml @@ -13,7 +13,7 @@ render: | source: http uri: http://{{ .host }}/api/livedata/status jq: .total.Power.v - energy: + import: source: http uri: http://{{ .host }}/api/livedata/status jq: .total.YieldTotal.v diff --git a/templates/definition/meter/huawei-emma.yaml b/templates/definition/meter/huawei-emma.yaml index 2172e4c1f7..9996694ec0 100644 --- a/templates/definition/meter/huawei-emma.yaml +++ b/templates/definition/meter/huawei-emma.yaml @@ -22,7 +22,7 @@ render: | address: 31657 # Active power of built-in electric energy sensor type: holding decode: int32 - energy: + import: source: modbus id: 0 uri: {{ .host }}:{{ .port }} @@ -66,7 +66,7 @@ render: | address: 30354 # Active power type: holding decode: int32 - energy: + import: source: modbus id: 0 uri: {{ .host }}:{{ .port }} @@ -86,7 +86,7 @@ render: | type: holding decode: int32nan scale: -1 - energy: + import: source: modbus id: 0 uri: {{ .host }}:{{ .port }} diff --git a/templates/definition/meter/huawei-smartlogger.yaml b/templates/definition/meter/huawei-smartlogger.yaml index ffafd9869d..6d0094f13e 100644 --- a/templates/definition/meter/huawei-smartlogger.yaml +++ b/templates/definition/meter/huawei-smartlogger.yaml @@ -31,7 +31,7 @@ render: | type: holding decode: int32 scale: 1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} @@ -75,7 +75,7 @@ render: | address: 40521 # Active power type: holding decode: int32 - energy: + import: source: modbus id: 0 uri: {{ .host }}:{{ .port }} @@ -101,7 +101,7 @@ render: | type: holding decode: int32nan scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} diff --git a/templates/definition/meter/huawei-sun2000-dongle.yaml b/templates/definition/meter/huawei-sun2000-dongle.yaml index 4c76c55cc3..e09d4f9e25 100644 --- a/templates/definition/meter/huawei-sun2000-dongle.yaml +++ b/templates/definition/meter/huawei-sun2000-dongle.yaml @@ -29,7 +29,7 @@ render: | address: 32080 # Active generation power AC type: holding decode: int32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} diff --git a/templates/definition/meter/huawei-sun2000.yaml b/templates/definition/meter/huawei-sun2000.yaml index a51725c914..e257ee81b0 100644 --- a/templates/definition/meter/huawei-sun2000.yaml +++ b/templates/definition/meter/huawei-sun2000.yaml @@ -56,7 +56,7 @@ render: | type: holding decode: int32nan scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} @@ -101,7 +101,7 @@ render: | address: 32064 # Input power DC (if no battery in your system - for more precise readings use 32080 # Active generation power AC) type: holding decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} @@ -127,7 +127,7 @@ render: | type: holding decode: int32nan scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} diff --git a/templates/definition/meter/inepro.yaml b/templates/definition/meter/inepro.yaml index 8af19f7763..655a71a33c 100644 --- a/templates/definition/meter/inepro.yaml +++ b/templates/definition/meter/inepro.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: inepro power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/janitza.yaml b/templates/definition/meter/janitza.yaml index b0d4cece13..a8d0e19f1a 100644 --- a/templates/definition/meter/janitza.yaml +++ b/templates/definition/meter/janitza.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: janitza power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/keba-kecontact.yaml b/templates/definition/meter/keba-kecontact.yaml index 25c7bc01d2..dc124824dd 100644 --- a/templates/definition/meter/keba-kecontact.yaml +++ b/templates/definition/meter/keba-kecontact.yaml @@ -19,7 +19,7 @@ render: | value: - 203:W - 213:W - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: diff --git a/templates/definition/meter/kostal-ksem.yaml b/templates/definition/meter/kostal-ksem.yaml index a6fe5a328b..d3f68df3c1 100644 --- a/templates/definition/meter/kostal-ksem.yaml +++ b/templates/definition/meter/kostal-ksem.yaml @@ -18,7 +18,7 @@ render: | value: - 203:W - 213:W - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: diff --git a/templates/definition/meter/kostal-piko-hybrid.yaml b/templates/definition/meter/kostal-piko-hybrid.yaml index c9a6808961..af10f72285 100644 --- a/templates/definition/meter/kostal-piko-hybrid.yaml +++ b/templates/definition/meter/kostal-piko-hybrid.yaml @@ -29,7 +29,7 @@ render: | uri: http://{{ .host }}/api/dxs.json?dxsEntries=33556736 # PV Power (all strings) # | ----------------------------- PV W ------------- | jq: (.dxsEntries[] | select(.dxsId==33556736) | .value ) - energy: + import: source: http uri: http://{{ .host }}/api/dxs.json?dxsEntries=251658753 # total yield # | ----------------------Total Yield W ------------- | diff --git a/templates/definition/meter/kostal-piko-pv.yaml b/templates/definition/meter/kostal-piko-pv.yaml index 8744ab699c..4c6f646bb1 100644 --- a/templates/definition/meter/kostal-piko-pv.yaml +++ b/templates/definition/meter/kostal-piko-pv.yaml @@ -25,7 +25,7 @@ render: | uri: http://{{ .host }}/api/dxs.json?dxsEntries=67109120 # total AC output # | ---------------------------- PAC W ------------- | jq: (.dxsEntries[] | select(.dxsId==67109120) | .value ) - energy: + import: source: http uri: http://{{ .host }}/api/dxs.json?dxsEntries=251658753 # total yield # | --------------------- Total Yield W ------------- | diff --git a/templates/definition/meter/kostal-plenticore-gen2.yaml b/templates/definition/meter/kostal-plenticore-gen2.yaml index 4319a41794..9d7d695cc9 100644 --- a/templates/definition/meter/kostal-plenticore-gen2.yaml +++ b/templates/definition/meter/kostal-plenticore-gen2.yaml @@ -62,7 +62,7 @@ render: | - source: sunspec {{- include "modbus" . | indent 4 }} value: 160:3:DCW # string 3 - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: 103:WH # total yield diff --git a/templates/definition/meter/kostal-plenticore.yaml b/templates/definition/meter/kostal-plenticore.yaml index caac55c6dd..6c90f9eb00 100644 --- a/templates/definition/meter/kostal-plenticore.yaml +++ b/templates/definition/meter/kostal-plenticore.yaml @@ -62,7 +62,7 @@ render: | - source: sunspec {{- include "modbus" . | indent 4 }} value: 160:3:DCW # string 3 - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: 103:WH # total yield diff --git a/templates/definition/meter/loxone.yaml b/templates/definition/meter/loxone.yaml index ff9c209e91..3c860f4243 100644 --- a/templates/definition/meter/loxone.yaml +++ b/templates/definition/meter/loxone.yaml @@ -36,7 +36,7 @@ render: | password: {{ .password }} jq: .LL.value scale: 1000 - energy: + import: source: http uri: http://{{ .host }}/jdev/sps/io/{{ .meterblock }}/all auth: diff --git a/templates/definition/meter/mypv-wifi-meter.yaml b/templates/definition/meter/mypv-wifi-meter.yaml index 9b639bd27d..4928d17e1e 100644 --- a/templates/definition/meter/mypv-wifi-meter.yaml +++ b/templates/definition/meter/mypv-wifi-meter.yaml @@ -19,7 +19,7 @@ render: | address: 32 # 0x0020 sum of power, signed, value=data, unit: W type: holding decode: int32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/orno.yaml b/templates/definition/meter/orno.yaml index 670be49e90..a6678314e2 100644 --- a/templates/definition/meter/orno.yaml +++ b/templates/definition/meter/orno.yaml @@ -14,7 +14,7 @@ render: | {{- include "modbus" . }} model: orno3p power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/p1monitor.yaml b/templates/definition/meter/p1monitor.yaml index 6992e1d242..71c165973f 100644 --- a/templates/definition/meter/p1monitor.yaml +++ b/templates/definition/meter/p1monitor.yaml @@ -39,7 +39,7 @@ render: | uri: {{ include "uri" . }}/status/79 jq: .[0].[1] scale: -1000 - energy: + import: source: calc add: - source: http diff --git a/templates/definition/meter/saj-h2.yaml b/templates/definition/meter/saj-h2.yaml index 1c6d3d97b7..8a5207f0b8 100644 --- a/templates/definition/meter/saj-h2.yaml +++ b/templates/definition/meter/saj-h2.yaml @@ -59,7 +59,7 @@ render: | type: holding decode: int16 scale: 0.01 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -76,7 +76,7 @@ render: | address: 0x40A5 # TotalPVPower type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -93,7 +93,7 @@ render: | address: 0x40A6 # TotalBatteryPower type: holding decode: int16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sbc-axx3.yaml b/templates/definition/meter/sbc-axx3.yaml index 9aca36bb8e..5a9171fa20 100644 --- a/templates/definition/meter/sbc-axx3.yaml +++ b/templates/definition/meter/sbc-axx3.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: sbc power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/schneider-iem3000.yaml b/templates/definition/meter/schneider-iem3000.yaml index 50941a6916..86101d6b2b 100644 --- a/templates/definition/meter/schneider-iem3000.yaml +++ b/templates/definition/meter/schneider-iem3000.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: iem3000 power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/senergy.yaml b/templates/definition/meter/senergy.yaml index 4df2617c83..d50a4d02a8 100644 --- a/templates/definition/meter/senergy.yaml +++ b/templates/definition/meter/senergy.yaml @@ -22,7 +22,7 @@ render: | address: 4151 # PAC type: holding decode: uint32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/shelly-3em.yaml b/templates/definition/meter/shelly-3em.yaml index 0db4d96db0..ee465f7dad 100644 --- a/templates/definition/meter/shelly-3em.yaml +++ b/templates/definition/meter/shelly-3em.yaml @@ -20,7 +20,7 @@ render: | source: http uri: {{ include "uri" . }}/status jq: .emeters | map(.power) | add - energy: + import: source: http uri: {{ include "uri" . }}/status jq: .emeters | map(.total) | add diff --git a/templates/definition/meter/siemens-7kt1665.yaml b/templates/definition/meter/siemens-7kt1665.yaml index 8751e08a5c..831013bede 100644 --- a/templates/definition/meter/siemens-7kt1665.yaml +++ b/templates/definition/meter/siemens-7kt1665.yaml @@ -19,7 +19,7 @@ render: | decode: int32 scale: 0.01 timeout: 5s - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/siemens-pac2200.yaml b/templates/definition/meter/siemens-pac2200.yaml index 8f0fb719fd..94e74db0fb 100644 --- a/templates/definition/meter/siemens-pac2200.yaml +++ b/templates/definition/meter/siemens-pac2200.yaml @@ -13,7 +13,7 @@ render: | {{- include "modbus" . }} model: pac2200 power: Power - energy: Import + import: Import currents: - CurrentL1 - CurrentL2 diff --git a/templates/definition/meter/slimmelezer-luxembourg.yaml b/templates/definition/meter/slimmelezer-luxembourg.yaml index 0411a58dfa..36b31df67a 100644 --- a/templates/definition/meter/slimmelezer-luxembourg.yaml +++ b/templates/definition/meter/slimmelezer-luxembourg.yaml @@ -28,7 +28,7 @@ render: | - content-type: application/json jq: .value scale: -1000 - energy: + import: source: http uri: http://{{ .host }}/sensor/energy_produced_luxembourg headers: diff --git a/templates/definition/meter/slimmelezer-v2.yaml b/templates/definition/meter/slimmelezer-v2.yaml index be70febb6e..28214ac624 100644 --- a/templates/definition/meter/slimmelezer-v2.yaml +++ b/templates/definition/meter/slimmelezer-v2.yaml @@ -28,7 +28,7 @@ render: | - content-type: application/json jq: .value scale: -1000 - energy: + import: source: calc add: - source: http diff --git a/templates/definition/meter/slimmelezer.yaml b/templates/definition/meter/slimmelezer.yaml index c0bf3d5d08..0b0a6ca310 100644 --- a/templates/definition/meter/slimmelezer.yaml +++ b/templates/definition/meter/slimmelezer.yaml @@ -41,7 +41,7 @@ render: | - content-type: application/json jq: .value scale: -{{ .scale }} - energy: + import: source: calc add: - source: http diff --git a/templates/definition/meter/sma-datamanager.yaml b/templates/definition/meter/sma-datamanager.yaml index ddbfd6be5b..9f428926dc 100644 --- a/templates/definition/meter/sma-datamanager.yaml +++ b/templates/definition/meter/sma-datamanager.yaml @@ -27,7 +27,7 @@ render: | address: 30775 # Aktuelle PV-Einspeisewirkleistung über alle Außenleiter, W type: holding decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -85,7 +85,7 @@ render: | address: 31395 # Momentane Batterieentladung, W type: holding decode: uint32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sma-hybrid.yaml b/templates/definition/meter/sma-hybrid.yaml index 3443c11267..6f07cd4eae 100644 --- a/templates/definition/meter/sma-hybrid.yaml +++ b/templates/definition/meter/sma-hybrid.yaml @@ -41,7 +41,7 @@ render: | address: 30865 # SMA Modbus Profile: Metering.GridMs.TotWIn type: input decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -88,7 +88,7 @@ render: | address: 30961 # SMA Modbus Profile: DcMs.Watt [2] type: holding decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -115,7 +115,7 @@ render: | type: input decode: uint32nan scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sma-inverter-modbus.yaml b/templates/definition/meter/sma-inverter-modbus.yaml index 6073ae1af0..c6429261d0 100644 --- a/templates/definition/meter/sma-inverter-modbus.yaml +++ b/templates/definition/meter/sma-inverter-modbus.yaml @@ -22,7 +22,7 @@ render: | address: 30775 # SMA Modbus Profile: GridMs.TotW type: input decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sma-sbs-15-25-modbus.yaml b/templates/definition/meter/sma-sbs-15-25-modbus.yaml index 0cbcbdb994..b7dbe4e1b3 100644 --- a/templates/definition/meter/sma-sbs-15-25-modbus.yaml +++ b/templates/definition/meter/sma-sbs-15-25-modbus.yaml @@ -35,7 +35,7 @@ render: | address: 30775 type: input decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sma-sbs-modbus.yaml b/templates/definition/meter/sma-sbs-modbus.yaml index 23b7d470a0..52f08d356f 100644 --- a/templates/definition/meter/sma-sbs-modbus.yaml +++ b/templates/definition/meter/sma-sbs-modbus.yaml @@ -35,7 +35,7 @@ render: | address: 30775 # SMA Modbus Profile: GridMs.TotW type: input decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sma-si-modbus.yaml b/templates/definition/meter/sma-si-modbus.yaml index c9496837a9..0f3781d88a 100644 --- a/templates/definition/meter/sma-si-modbus.yaml +++ b/templates/definition/meter/sma-si-modbus.yaml @@ -35,7 +35,7 @@ render: | address: 30775 # SMA Modbus Profile: GridMs.TotW type: input decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sma-webbox.yaml b/templates/definition/meter/sma-webbox.yaml index 76892c3a8b..5439e846ba 100644 --- a/templates/definition/meter/sma-webbox.yaml +++ b/templates/definition/meter/sma-webbox.yaml @@ -24,7 +24,7 @@ render: | address: 30775 # Pac type: holding decode: int32nan - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration diff --git a/templates/definition/meter/smartfox-em2.yaml b/templates/definition/meter/smartfox-em2.yaml index 705face03b..e9f66e05d0 100644 --- a/templates/definition/meter/smartfox-em2.yaml +++ b/templates/definition/meter/smartfox-em2.yaml @@ -24,7 +24,7 @@ render: | source: http uri: {{ include "uri" . }} jq: .values.value[] | select(.attrid=="detailsPowerValue")."#content" | rtrimstr(" W") - energy: # grid energy in kWh + import: # grid energy in kWh source: http uri: {{ include "uri" . }} jq: .values.value[] | select(.attrid=="energyValue")."#content" | rtrimstr(" kWh") @@ -66,7 +66,7 @@ render: | uri: {{ include "uri" . }} jq: '[.values.value[] | select(.attrid|test("wr\\d+PowerValue"))."#content" | rtrimstr(" kW") | tonumber] | add' scale: 1000 # wr1PowerValue, ..., wr5PowerValue are in kW - energy: # PV energy in kWh + import: # PV energy in kWh source: http uri: {{ include "uri" . }} jq: '[.values.value[] | select(.attrid|test("wr\\d+EnergyValue"))."#content" | rtrimstr(" kWh") | tonumber] | add' diff --git a/templates/definition/meter/smartfox.yaml b/templates/definition/meter/smartfox.yaml index fdf2c8e9d2..bdd9abec63 100644 --- a/templates/definition/meter/smartfox.yaml +++ b/templates/definition/meter/smartfox.yaml @@ -23,7 +23,7 @@ render: | source: http uri: {{ include "uri" . }} jq: .power_io - energy: + import: source: http uri: {{ include "uri" . }} jq: .energy_in @@ -64,7 +64,7 @@ render: | source: http uri: {{ include "uri" . }} jq: .PvPower[0] - energy: + import: source: http uri: {{ include "uri" . }} jq: .PvEnergy[0] @@ -75,7 +75,7 @@ render: | source: http uri: {{ include "uri" . }} jq: .power_sf - energy: + import: source: http uri: {{ include "uri" . }} jq: .day_energy_sf diff --git a/templates/definition/meter/sofarsolar-g3.yaml b/templates/definition/meter/sofarsolar-g3.yaml index baac1cd66a..4aa5f7d9b2 100644 --- a/templates/definition/meter/sofarsolar-g3.yaml +++ b/templates/definition/meter/sofarsolar-g3.yaml @@ -99,7 +99,7 @@ render: | type: holding decode: int16 scale: -10 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -117,7 +117,7 @@ render: | type: holding decode: uint16 scale: 100 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -135,7 +135,7 @@ render: | type: holding decode: int16 scale: -10 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sofarsolar.yaml b/templates/definition/meter/sofarsolar.yaml index 0a3bc552a8..bf15716b16 100644 --- a/templates/definition/meter/sofarsolar.yaml +++ b/templates/definition/meter/sofarsolar.yaml @@ -50,7 +50,7 @@ render: | type: holding decode: int16 scale: 0.01 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -67,7 +67,7 @@ render: | type: holding decode: uint16 scale: 0.01 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/solaredge-hybrid.yaml b/templates/definition/meter/solaredge-hybrid.yaml index 6600189f3f..90046859da 100644 --- a/templates/definition/meter/solaredge-hybrid.yaml +++ b/templates/definition/meter/solaredge-hybrid.yaml @@ -38,7 +38,7 @@ render: | subdevice: 1 # Metering device value: 203:W scale: -1 - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} diff --git a/templates/definition/meter/solaredge-inverter.yaml b/templates/definition/meter/solaredge-inverter.yaml index 3bf5f179da..3122f02adf 100644 --- a/templates/definition/meter/solaredge-inverter.yaml +++ b/templates/definition/meter/solaredge-inverter.yaml @@ -27,7 +27,7 @@ render: | subdevice: 1 # Metering device value: 203:W # sunspec 3-phase meter power reading scale: -1 - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} @@ -94,7 +94,7 @@ render: | value: - 101:W - 103:W - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} timeout: {{ .timeout }} diff --git a/templates/definition/meter/solarlog.yaml b/templates/definition/meter/solarlog.yaml index 0491f54b0f..aab18f821f 100644 --- a/templates/definition/meter/solarlog.yaml +++ b/templates/definition/meter/solarlog.yaml @@ -48,7 +48,7 @@ render: | address: 3502 # Pac type: input decode: uint32s - energy: + import: source: modbus uri: {{ .host }}:{{ .port }} id: 1 diff --git a/templates/definition/meter/solarman.yaml b/templates/definition/meter/solarman.yaml index 55afbcf969..9d4ab050fa 100644 --- a/templates/definition/meter/solarman.yaml +++ b/templates/definition/meter/solarman.yaml @@ -22,7 +22,7 @@ render: | user: {{ .user }} password: {{ .password }} regex: webdata_now_p\s*=\s*\"(\d+)\" - energy: + import: source: http uri: http://{{ .host }}/status.html auth: # basic authorization diff --git a/templates/definition/meter/solarmax-inverter-smt.yaml b/templates/definition/meter/solarmax-inverter-smt.yaml index ec54ecfe1d..d0f5943993 100644 --- a/templates/definition/meter/solarmax-inverter-smt.yaml +++ b/templates/definition/meter/solarmax-inverter-smt.yaml @@ -19,7 +19,7 @@ render: | type: holding decode: uint32 scale: 0.1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/solarwatt.yaml b/templates/definition/meter/solarwatt.yaml index 529601226b..24dc1f36b0 100644 --- a/templates/definition/meter/solarwatt.yaml +++ b/templates/definition/meter/solarwatt.yaml @@ -21,7 +21,7 @@ render: | source: http uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.PowerIn.value - .tagValues.PowerOut.value - energy: + import: source: http uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.WorkIn.value / 1000 @@ -31,7 +31,7 @@ render: | source: http uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.PowerProduced.value - energy: + import: source: http uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.WorkProduced.value / 1000 @@ -45,7 +45,7 @@ render: | source: http uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.batteryconverter.BatteryConverter") | (.tagValues.StateOfCharge.value // 0) - energy: + import: source: http uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | (.tagValues.WorkReleased.value // 0) / 1000 diff --git a/templates/definition/meter/solax.yaml b/templates/definition/meter/solax.yaml index 66e6eb05fb..5dbf0d1613 100644 --- a/templates/definition/meter/solax.yaml +++ b/templates/definition/meter/solax.yaml @@ -32,7 +32,7 @@ render: | type: input decode: int32s scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration @@ -56,7 +56,7 @@ render: | address: 11 # 0x000B Powerdc2 type: input decode: uint16 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: # manual non-sunspec register configuration diff --git a/templates/definition/meter/solis-hybrid.yaml b/templates/definition/meter/solis-hybrid.yaml index 03e477e63a..d42ff08b5c 100644 --- a/templates/definition/meter/solis-hybrid.yaml +++ b/templates/definition/meter/solis-hybrid.yaml @@ -26,7 +26,7 @@ render: | type: input decode: int32 scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -87,7 +87,7 @@ render: | type: input address: 33057 # Total DC output power (PV Power) decode: uint32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -117,7 +117,7 @@ render: | scale: 2 - source: const value: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/solis.yaml b/templates/definition/meter/solis.yaml index a34a9f282a..d7f51e5eeb 100644 --- a/templates/definition/meter/solis.yaml +++ b/templates/definition/meter/solis.yaml @@ -21,7 +21,7 @@ render: | type: input decode: int32 scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -38,7 +38,7 @@ render: | type: input address: 3004 # Active power decode: uint32 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sonnenbatterie_eco56.yaml b/templates/definition/meter/sonnenbatterie_eco56.yaml index a5c7d550a9..bd109f533f 100644 --- a/templates/definition/meter/sonnenbatterie_eco56.yaml +++ b/templates/definition/meter/sonnenbatterie_eco56.yaml @@ -18,7 +18,7 @@ render: | source: http uri: http://{{ .host }}:{{ .port }}/rest/devices/battery jq: .M39 - .M38 # current purchase - current feed-in at the interconnection point - energy: + import: source: http uri: http://{{ .host }}:{{ .port }}/rest/devices/battery jq: .M41 # cumulated purchase since installation @@ -28,7 +28,7 @@ render: | source: http uri: http://{{ .host }}:{{ .port }}/rest/devices/battery jq: .M03 # current pv power - energy: + import: source: http uri: http://{{ .host }}:{{ .port }}/rest/devices/battery jq: .M37 # cumulated pv production since installation of Sonnenbatterie @@ -40,7 +40,7 @@ render: | # M34 current discharging power, S65 max inverter power # M35 current charging power, S65 max inverter power jq: (if .M34 <= .S65 then .M34 else 0 end) - (if .M35 <= .S65 then .M35 else 0 end) - energy: + import: source: http uri: http://{{ .host }}:{{ .port }}/rest/devices/battery jq: .M31 # total stored energy over lifetime diff --git a/templates/definition/meter/storaxe.yaml b/templates/definition/meter/storaxe.yaml index f70460967a..fac2d7863b 100644 --- a/templates/definition/meter/storaxe.yaml +++ b/templates/definition/meter/storaxe.yaml @@ -21,7 +21,7 @@ render: | type: input decode: int16 scale: 100 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sungrow-hybrid.yaml b/templates/definition/meter/sungrow-hybrid.yaml index 32fcd8ad5d..b428b31af2 100644 --- a/templates/definition/meter/sungrow-hybrid.yaml +++ b/templates/definition/meter/sungrow-hybrid.yaml @@ -33,7 +33,7 @@ render: | address: 13009 # Export power decode: int32s scale: -1 - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -96,7 +96,7 @@ render: | address: 5016 # Total DC power type: input decode: uint32s - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -135,7 +135,7 @@ render: | address: 13000 # Battery running state decode: bool16 bitmask: 4 # Discharging - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sungrow-inverter.yaml b/templates/definition/meter/sungrow-inverter.yaml index df452681fe..7f4ab4620f 100644 --- a/templates/definition/meter/sungrow-inverter.yaml +++ b/templates/definition/meter/sungrow-inverter.yaml @@ -20,7 +20,7 @@ render: | type: input address: 5082 # Meter power decode: int32s - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: @@ -37,7 +37,7 @@ render: | address: 5030 # Total Active Power type: input decode: uint32s - energy: + import: source: modbus {{- include "modbus" . | indent 2 }} register: diff --git a/templates/definition/meter/sunspec-hybrid.yaml b/templates/definition/meter/sunspec-hybrid.yaml index ab133be041..170f7f8682 100644 --- a/templates/definition/meter/sunspec-hybrid.yaml +++ b/templates/definition/meter/sunspec-hybrid.yaml @@ -24,7 +24,7 @@ render: | value: - 203:W - 213:W - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: @@ -90,7 +90,7 @@ render: | - source: sunspec {{- include "modbus" . | indent 6 }} value: 160:2:DCW # mppt 2 - energy: + import: source: calc add: - source: sunspec @@ -114,7 +114,7 @@ render: | - source: sunspec {{- include "modbus" . | indent 6 }} value: 160:4:DCW # mppt 4 (discharge) - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: 160:4:DCWH # mppt 4 (discharge) diff --git a/templates/definition/meter/sunspec-inverter-control.yaml b/templates/definition/meter/sunspec-inverter-control.yaml index 8a597fc064..5c69cdb0b1 100644 --- a/templates/definition/meter/sunspec-inverter-control.yaml +++ b/templates/definition/meter/sunspec-inverter-control.yaml @@ -25,7 +25,7 @@ render: | - source: sunspec {{- include "modbus" . | indent 4 }} value: 160:4:DCW # mppt 4 (discharge) - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: 160:4:DCWH # mppt 4 (discharge) diff --git a/templates/definition/meter/sunspec-inverter.yaml b/templates/definition/meter/sunspec-inverter.yaml index 229b806f06..e06939956d 100644 --- a/templates/definition/meter/sunspec-inverter.yaml +++ b/templates/definition/meter/sunspec-inverter.yaml @@ -23,7 +23,7 @@ render: | - 211:W - 203:W - 213:W - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: @@ -96,7 +96,7 @@ render: | - 111:W - 103:W - 113:W - energy: + import: source: sunspec {{- include "modbus" . | indent 2 }} value: diff --git a/templates/definition/meter/youless.yaml b/templates/definition/meter/youless.yaml index 65f820bc77..74048b347d 100644 --- a/templates/definition/meter/youless.yaml +++ b/templates/definition/meter/youless.yaml @@ -20,7 +20,7 @@ render: | source: http uri: http://{{ .host }}/e jq: .[0]|.pwr - energy: + import: source: http uri: http://{{ .host }}/e jq: .[0]|.p1+.p2 @@ -30,7 +30,7 @@ render: | source: http uri: http://{{ .host }}/e jq: .[0].ps0 - energy: + import: source: http uri: http://{{ .host }}/e jq: .[0].cs0 diff --git a/tests/simulator.evcc.yaml b/tests/simulator.evcc.yaml index 06935f9804..a9c3bb0a57 100755 --- a/tests/simulator.evcc.yaml +++ b/tests/simulator.evcc.yaml @@ -38,7 +38,7 @@ meters: source: http uri: http://localhost:7072/api/state jq: .loadpoints[0].power - energy: + import: source: http uri: http://localhost:7072/api/state jq: .loadpoints[0].energy