Skip to content

Commit 25c64ef

Browse files
committed
chore: simplify
1 parent 1b6065b commit 25c64ef

File tree

2 files changed

+8
-59
lines changed

2 files changed

+8
-59
lines changed

charger/em2go.go

Lines changed: 7 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -71,26 +71,13 @@ const (
7171
func init() {
7272
registry.AddCtx("em2go", NewEm2GoFromConfig)
7373
registry.AddCtx("em2go-home", NewEm2GoFromConfig)
74-
registry.AddCtx("em2go-duo-power", NewEm2GoDuoPowerFromConfig)
74+
registry.AddCtx("em2go-duo", NewEm2GoFromConfig)
7575
}
7676

7777
//go:generate go tool decorate -f decorateEm2Go -b *Em2Go -r api.Charger -t "api.ChargerEx,MaxCurrentMillis,func(float64) error" -t "api.PhaseSwitcher,Phases1p3p,func(int) error" -t "api.PhaseGetter,GetPhases,func() (int, error)"
7878

7979
// NewEm2GoFromConfig creates a Em2Go charger from generic config
8080
func NewEm2GoFromConfig(ctx context.Context, other map[string]interface{}) (api.Charger, error) {
81-
cc := modbus.TcpSettings{
82-
ID: 255,
83-
}
84-
85-
if err := util.DecodeOther(other, &cc); err != nil {
86-
return nil, err
87-
}
88-
89-
return NewEm2Go(ctx, cc.URI, cc.ID)
90-
}
91-
92-
// NewEm2GoDuoPowerFromConfig creates a Em2Go Duo Power charger from generic config
93-
func NewEm2GoDuoPowerFromConfig(ctx context.Context, other map[string]interface{}) (api.Charger, error) {
9481
cc := struct {
9582
modbus.TcpSettings `mapstructure:",squash"`
9683
Connector int
@@ -103,11 +90,11 @@ func NewEm2GoDuoPowerFromConfig(ctx context.Context, other map[string]interface{
10390
return nil, err
10491
}
10592

106-
return NewEm2GoDuoPower(ctx, cc.URI, cc.ID, cc.Connector)
93+
return NewEm2Go(ctx, cc.URI, cc.ID, cc.Connector)
10794
}
10895

10996
// NewEm2Go creates Em2Go charger
110-
func NewEm2Go(ctx context.Context, uri string, slaveID uint8) (api.Charger, error) {
97+
func NewEm2Go(ctx context.Context, uri string, slaveID uint8, connector int) (api.Charger, error) {
11198
uri = util.DefaultPort(uri, 502)
11299

113100
conn, err := modbus.NewConnection(ctx, uri, "", "", 0, modbus.Tcp, slaveID)
@@ -122,41 +109,10 @@ func NewEm2Go(ctx context.Context, uri string, slaveID uint8) (api.Charger, erro
122109
conn.Logger(log.TRACE)
123110

124111
wb := &Em2Go{
125-
log: log,
126-
conn: conn,
127-
current: 60,
128-
workaround: false,
129-
base: 0, // single connector, no offset
130-
}
131-
132-
return wb.initialize()
133-
}
134-
135-
// NewEm2GoDuoPower creates Em2Go Duo Power charger
136-
func NewEm2GoDuoPower(ctx context.Context, uri string, slaveID uint8, connector int) (api.Charger, error) {
137-
if connector < 1 || connector > 2 {
138-
return nil, fmt.Errorf("invalid connector: %d", connector)
139-
}
140-
141-
uri = util.DefaultPort(uri, 502)
142-
143-
conn, err := modbus.NewConnection(ctx, uri, "", "", 0, modbus.Tcp, slaveID)
144-
if err != nil {
145-
return nil, err
146-
}
147-
148-
// Add delay of 60 milliseconds between requests
149-
conn.Delay(60 * time.Millisecond)
150-
151-
log := util.NewLogger("em2go-duo-power")
152-
conn.Logger(log.TRACE)
153-
154-
wb := &Em2Go{
155-
log: log,
156-
conn: conn,
157-
current: 60,
158-
workaround: false,
159-
base: uint16((connector - 1) * em2GoDuoPowerOffset),
112+
log: log,
113+
conn: conn,
114+
current: 60,
115+
base: uint16((connector - 1) * em2GoDuoPowerOffset),
160116
}
161117

162118
return wb.initialize()

templates/definition/charger/em2go-duo-power.yaml

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,13 @@ template: em2go-duo-power
22
products:
33
- brand: EM2GO
44
description:
5-
generic: AC WALLBOX DUO POWER 2X 22KW
5+
generic: Duo Power
66
capabilities: ["mA"]
7-
requirements:
8-
description:
9-
de: "Aktuelle Firmware mit Modbus-Unterstützung notwendig. Mögliche Verbindungsprobleme - Device ID muss bei jeder Verbindung inkrementiert werden."
10-
en: "Recent firmware with Modbus support required. Possible connection issues - Device ID needs to be incremented for each connection attempt."
117
params:
128
- name: modbus
139
choice: ["tcpip"]
1410
id: 255
1511
- name: connector
16-
description:
17-
de: "Anschluss (1 oder 2 für Duo Power)"
18-
en: "Connector (1 or 2 for Duo Power)"
1912
default: 1
2013
render: |
2114
type: em2go-duo-power

0 commit comments

Comments
 (0)