charger

package
v0.0.0-...-2371aa5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 16, 2024 License: MIT Imports: 93 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewABB

func NewABB(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (api.Charger, error)

NewABB creates ABB charger

func NewABBFromConfig

func NewABBFromConfig(other map[string]interface{}) (api.Charger, error)

NewABBFromConfig creates a ABB charger from generic config

func NewABLeMH

func NewABLeMH(uri, device, comset string, baudrate int, slaveID uint8, timeout time.Duration) (api.Charger, error)

NewABLeMH creates ABLeMH charger

func NewABLeMHFromConfig

func NewABLeMHFromConfig(other map[string]interface{}) (api.Charger, error)

NewABLeMHFromConfig creates a ABLeMH charger from generic config

func NewAblEm4FromConfig

func NewAblEm4FromConfig(other map[string]interface{}) (api.Charger, error)

NewAblEm4FromConfig creates an ABL eM4 charger from generic config

func NewAlfen

func NewAlfen(uri string, slaveID uint8) (api.Charger, error)

NewAlfen creates Alfen charger

func NewAlfenFromConfig

func NewAlfenFromConfig(other map[string]interface{}) (api.Charger, error)

NewAlfenFromConfig creates a Alfen charger from generic config

func NewAlphatec

func NewAlphatec(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (api.Charger, error)

NewAlphatec creates Alphatec charger

func NewAlphatecFromConfig

func NewAlphatecFromConfig(other map[string]interface{}) (api.Charger, error)

NewAlphatecFromConfig creates a Alphatec charger from generic config

func NewAmperfied

func NewAmperfied(uri string, slaveID uint8, phases bool) (api.Charger, error)

NewAmperfied creates Amperfied charger

func NewAmperfiedFromConfig

func NewAmperfiedFromConfig(other map[string]interface{}) (api.Charger, error)

NewAmperfiedFromConfig creates a Amperfied charger from generic config

func NewBenderCC

func NewBenderCC(uri string, id uint8) (api.Charger, error)

NewBenderCC creates BenderCC charger

func NewBenderCCFromConfig

func NewBenderCCFromConfig(other map[string]interface{}) (api.Charger, error)

NewBenderCCFromConfig creates a BenderCC charger from generic config

func NewCCUFromConfig

func NewCCUFromConfig(other map[string]interface{}) (api.Charger, error)

NewCCUFromConfig creates a Homematic charger from generic config

func NewCfosPowerBrain

func NewCfosPowerBrain(uri string, id uint8) (api.Charger, error)

NewCfosPowerBrain creates a cFos charger

func NewCfosPowerBrainFromConfig

func NewCfosPowerBrainFromConfig(other map[string]interface{}) (api.Charger, error)

NewCfosPowerBrainFromConfig creates a cFos charger from generic config

func NewChargerFromTemplateConfig

func NewChargerFromTemplateConfig(other map[string]interface{}) (api.Charger, error)

func NewConfigurableFromConfig

func NewConfigurableFromConfig(other map[string]interface{}) (api.Charger, error)

NewConfigurableFromConfig creates a new configurable charger

func NewConnectIq

func NewConnectIq(uri string, cache time.Duration) (api.Charger, error)

NewConnectIq creates ConnectIq charger

func NewConnectIqFromConfig

func NewConnectIqFromConfig(other map[string]interface{}) (api.Charger, error)

NewConnectIqFromConfig creates a ConnectIq charger from generic config

func NewDadapowerFromConfig

func NewDadapowerFromConfig(other map[string]interface{}) (api.Charger, error)

NewDadapowerFromConfig creates a Dadapower charger from generic config

func NewDaheimLadenFromConfig

func NewDaheimLadenFromConfig(other map[string]interface{}) (api.Charger, error)

NewDaheimLadenFromConfig creates a DaheimLaden charger from generic config

func NewDaheimLadenMB

func NewDaheimLadenMB(uri string, id uint8) (api.Charger, error)

NewDaheimLadenMB creates DaheimLadenMB charger

func NewDaheimLadenMBFromConfig

func NewDaheimLadenMBFromConfig(other map[string]interface{}) (api.Charger, error)

NewDaheimLadenMBFromConfig creates a DaheimLadenMB charger from generic config

func NewDelta

func NewDelta(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8, connector uint16) (api.Charger, error)

NewDelta creates Delta charger

func NewDeltaAc

func NewDeltaAc(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8, connector uint16) (api.Charger, error)

NewDeltaAc creates Delta charger

func NewDeltaAcFromConfig

func NewDeltaAcFromConfig(other map[string]interface{}) (api.Charger, error)

NewDeltaAcFromConfig creates a Delta charger from generic config

func NewDeltaFromConfig

func NewDeltaFromConfig(other map[string]interface{}) (api.Charger, error)

NewDeltaFromConfig creates a Delta charger from generic config

func NewEEBus

func NewEEBus(ski string, hasMeter, hasChargedEnergy, vasVW bool) (api.Charger, error)

NewEEBus creates EEBus charger

func NewEEBusFromConfig

func NewEEBusFromConfig(other map[string]interface{}) (api.Charger, error)

NewEEBusFromConfig creates an EEBus charger from generic config

func NewEVSEWifiFromConfig

func NewEVSEWifiFromConfig(other map[string]interface{}) (api.Charger, error)

NewEVSEWifiFromConfig creates a EVSEWifi charger from generic config

func NewEaseeFromConfig

func NewEaseeFromConfig(other map[string]interface{}) (api.Charger, error)

NewEaseeFromConfig creates a Easee charger from generic config

func NewEm2Go

func NewEm2Go(uri string, slaveID uint8, milli bool) (api.Charger, error)

NewEm2Go creates Em2Go charger

func NewEm2GoFromConfig

func NewEm2GoFromConfig(other map[string]interface{}, milli bool) (api.Charger, error)

NewEm2GoFromConfig creates a Em2Go charger from generic config

func NewEtrelFromConfig

func NewEtrelFromConfig(other map[string]interface{}) (api.Charger, error)

NewEtrelFromConfig creates a Etrel charger from generic config

func NewEvseDIN

func NewEvseDIN(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (api.Charger, error)

NewEvseDIN creates EVSE DIN charger

func NewEvseDINFromConfig

func NewEvseDINFromConfig(other map[string]interface{}) (api.Charger, error)

NewEvseDINFromConfig creates an EVSE DIN charger from generic config

func NewFritzDECTFromConfig

func NewFritzDECTFromConfig(other map[string]interface{}) (api.Charger, error)

NewFritzDECTFromConfig creates a fritzdect charger from generic config

func NewFromConfig

func NewFromConfig(typ string, other map[string]interface{}) (api.Charger, error)

NewFromConfig creates charger from configuration

func NewGoE

func NewGoE(uri, token string, cache time.Duration) (api.Charger, error)

NewGoE creates GoE charger

func NewGoEFromConfig

func NewGoEFromConfig(other map[string]interface{}) (api.Charger, error)

NewGoEFromConfig creates a go-e charger from generic config

func NewHardyBarth

func NewHardyBarth(uri string, chargecontrol, meter int, cache time.Duration) (api.Charger, error)

NewHardyBarth creates HardyBarth charger

func NewHardyBarthFromConfig

func NewHardyBarthFromConfig(other map[string]interface{}) (api.Charger, error)

NewHardyBarthFromConfig creates a HardyBarth cPH1 charger from generic config

func NewHeidelbergEC

func NewHeidelbergEC(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (api.Charger, error)

NewHeidelbergEC creates HeidelbergEC charger

func NewHeidelbergECFromConfig

func NewHeidelbergECFromConfig(other map[string]interface{}) (api.Charger, error)

NewHeidelbergECFromConfig creates a HeidelbergEC charger from generic config

func NewHesotec

func NewHesotec(uri string, id uint8) (api.Charger, error)

NewHesotec creates Hesotec charger

func NewHesotecFromConfig

func NewHesotecFromConfig(other map[string]interface{}) (api.Charger, error)

NewHesotecFromConfig creates a Hesotec charger from generic config

func NewHomeWizardFromConfig

func NewHomeWizardFromConfig(other map[string]interface{}) (api.Charger, error)

NewHomeWizardFromConfig creates a HomeWizard charger from generic config

func NewInnogyFromConfig

func NewInnogyFromConfig(other map[string]interface{}) (api.Charger, error)

NewInnogyFromConfig creates a Innogy charger from generic config

func NewKSE

func NewKSE(uri, device, comset string, baudrate int, slaveID uint8) (api.Charger, error)

NewKSE creates KSE charger

func NewKSEFromConfig

func NewKSEFromConfig(other map[string]interface{}) (api.Charger, error)

NewKSEFromConfig creates a KSE charger from generic config

func NewKebaFromConfig

func NewKebaFromConfig(other map[string]interface{}) (api.Charger, error)

NewKebaFromConfig creates a new Keba ModbusTCP charger

func NewKebaUdpFromConfig

func NewKebaUdpFromConfig(other map[string]interface{}) (api.Charger, error)

NewKebaUdpFromConfig creates a new Keba UDP charger

func NewMennekesCompact

func NewMennekesCompact(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8, timeout time.Duration) (api.Charger, error)

NewMennekesCompact creates Mennekes charger

func NewMennekesCompactFromConfig

func NewMennekesCompactFromConfig(other map[string]interface{}) (api.Charger, error)

NewMennekesCompactFromConfig creates a new Mennekes ModbusTCP charger

func NewMennekesHcc3

func NewMennekesHcc3(uri string, slaveID uint8) (api.Charger, error)

NewMennekesHcc3 creates Mennekes HCC3 charger

func NewMennekesHcc3FromConfig

func NewMennekesHcc3FromConfig(other map[string]interface{}) (api.Charger, error)

NewMennekesHcc3FromConfig creates a Mennekes mennekesHcc3 charger from generic config

func NewMobileConnectFromConfig

func NewMobileConnectFromConfig(other map[string]interface{}) (api.Charger, error)

NewMobileConnectFromConfig creates a MCC charger from generic config

func NewMyStromFromConfig

func NewMyStromFromConfig(other map[string]interface{}) (api.Charger, error)

NewMyStromFromConfig creates a myStrom charger from generic config

func NewNRGKickBLEFromConfig

func NewNRGKickBLEFromConfig(other map[string]interface{}) (api.Charger, error)

NewNRGKickBLEFromConfig creates a NRGKickBLE charger from generic config

func NewNRGKickConnectFromConfig

func NewNRGKickConnectFromConfig(other map[string]interface{}) (api.Charger, error)

NewNRGKickConnectFromConfig creates a NRGKickConnect charger from generic config

func NewOCPPFromConfig

func NewOCPPFromConfig(other map[string]interface{}) (api.Charger, error)

NewOCPPFromConfig creates a OCPP charger from generic config

func NewObo

func NewObo(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (api.Charger, error)

NewObo creates OBO Bettermann charger

func NewOboFromConfig

func NewOboFromConfig(other map[string]interface{}) (api.Charger, error)

NewOboFromConfig creates a OBO Bettermann charger from generic config

func NewOpenEVSE

func NewOpenEVSE(uri, user, password string, cache time.Duration) (api.Charger, error)

NewOpenEVSE creates OpenEVSE charger

func NewOpenEVSEFromConfig

func NewOpenEVSEFromConfig(other map[string]interface{}) (api.Charger, error)

NewOpenEVSEFromConfig creates an OpenEVSE charger from generic config

func NewOpenWB

func NewOpenWB(log *util.Logger, mqttconf mqtt.Config, id int, topic string, p1p3, dc bool, timeout time.Duration) (api.Charger, error)

NewOpenWB creates a new configurable charger

func NewOpenWB20FromConfig

func NewOpenWB20FromConfig(other map[string]interface{}) (api.Charger, error)

NewOpenWB20FromConfig creates a OpenWB20 charger from generic config

func NewOpenWBFromConfig

func NewOpenWBFromConfig(other map[string]interface{}) (api.Charger, error)

NewOpenWBFromConfig creates a new configurable charger

func NewOpenWBProFromConfig

func NewOpenWBProFromConfig(other map[string]interface{}) (api.Charger, error)

NewOpenWBProFromConfig creates a OpenWBPro charger from generic config

func NewPCElectricFromConfig

func NewPCElectricFromConfig(other map[string]interface{}) (api.Charger, error)

NewPCElectricFromConfig creates a PCElectric charger from generic config

func NewPantaboxFromConfig

func NewPantaboxFromConfig(other map[string]interface{}) (api.Charger, error)

NewPantaboxFromConfig creates a Pantabox charger from generic config

func NewPhoenixCharxFromConfig

func NewPhoenixCharxFromConfig(other map[string]interface{}) (api.Charger, error)

NewPhoenixCharxFromConfig creates a Phoenix charger from generic config

func NewPhoenixEMEthFromConfig

func NewPhoenixEMEthFromConfig(other map[string]interface{}) (api.Charger, error)

NewPhoenixEMEthFromConfig creates a Phoenix charger from generic config

func NewPhoenixEVEth

func NewPhoenixEVEth(uri string, slaveID uint8) (api.Charger, error)

NewPhoenixEVEth creates a PhoenixEVEth charger

func NewPhoenixEVEthFromConfig

func NewPhoenixEVEthFromConfig(other map[string]interface{}) (api.Charger, error)

NewPhoenixEVEthFromConfig creates a PhoenixEVEth charger from generic config

func NewPhoenixEVSerFromConfig

func NewPhoenixEVSerFromConfig(other map[string]interface{}) (api.Charger, error)

NewPhoenixEVSerFromConfig creates a Phoenix charger from generic config

func NewPrachtAlpha

func NewPrachtAlpha(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8, timeout time.Duration, vehicle uint16) (api.Charger, error)

NewPrachtAlpha creates PrachtAlpha charger

func NewPrachtAlphaFromConfig

func NewPrachtAlphaFromConfig(other map[string]interface{}) (api.Charger, error)

NewPrachtAlphaFromConfig creates a PrachtAlpha charger from generic config

func NewPulsaresFromConfig

func NewPulsaresFromConfig(other map[string]interface{}) (api.Charger, error)

NewPulsaresFromConfig creates a Pulsares charger from generic config

func NewPulsatrixFromConfig

func NewPulsatrixFromConfig(other map[string]interface{}) (api.Charger, error)

NewPulsatrixtFromConfig creates a pulsatrix charger from generic config

func NewSalia

func NewSalia(uri string, cache time.Duration) (api.Charger, error)

NewSalia creates Hardy Barth charger with Salia controller

func NewSaliaFromConfig

func NewSaliaFromConfig(other map[string]interface{}) (api.Charger, error)

NewSaliaFromConfig creates a Salia cPH2 charger from generic config

func NewSchneiderV3

func NewSchneiderV3(uri string, id uint8) (api.Charger, error)

NewSchneiderV3 creates Schneider charger

func NewSchneiderV3FromConfig

func NewSchneiderV3FromConfig(other map[string]interface{}) (api.Charger, error)

NewSchneiderV3FromConfig creates a Schneider charger from generic config

func NewShellyFromConfig

func NewShellyFromConfig(other map[string]interface{}) (api.Charger, error)

NewShellyFromConfig creates a Shelly charger from generic config

func NewSmaevcharger

func NewSmaevcharger(uri, user, password string, cache time.Duration) (api.Charger, error)

NewSmaevcharger creates an SMA EV Charger

func NewSmaevchargerFromConfig

func NewSmaevchargerFromConfig(other map[string]interface{}) (api.Charger, error)

NewSmaevchargerFromConfig creates a SMA EV Charger from generic config

func NewSolax

func NewSolax(uri, device, comset string, baudrate int, proto modbus.Protocol, id uint8) (api.Charger, error)

NewSolax creates Solax charger

func NewSolaxFromConfig

func NewSolaxFromConfig(other map[string]interface{}) (api.Charger, error)

NewSolaxFromConfig creates a Solax charger from generic config

func NewSungrow

func NewSungrow(uri, device, comset string, baudrate int, proto modbus.Protocol, id uint8) (api.Charger, error)

NewSungrow creates Sungrow charger

func NewSungrowFromConfig

func NewSungrowFromConfig(other map[string]interface{}) (api.Charger, error)

NewSungrowFromConfig creates a Sungrow charger from generic config

func NewSwitchSocket

func NewSwitchSocket(
	embed *embed,
	enabled func() (bool, error),
	currentPower func() (float64, error),
	standbypower float64,
) *switchSocket

func NewTPLinkFromConfig

func NewTPLinkFromConfig(other map[string]interface{}) (api.Charger, error)

NewTPLinkFromConfig creates a TP-Link charger from generic config

func NewTapoFromConfig

func NewTapoFromConfig(other map[string]interface{}) (api.Charger, error)

NewTapoFromConfig creates a Tapo charger from generic config

func NewTasmota

func NewTasmota(embed embed, uri, user, password string, channels []int, standbypower float64, cache time.Duration) (api.Charger, error)

NewTasmota creates Tasmota charger

func NewTasmotaFromConfig

func NewTasmotaFromConfig(other map[string]interface{}) (api.Charger, error)

NewTasmotaFromConfig creates a Tasmota charger from generic config

func NewTwc3FromConfig

func NewTwc3FromConfig(other map[string]interface{}) (api.Charger, error)

NewTwc3FromConfig creates a new vehicle

func NewVersichargeFromConfig

func NewVersichargeFromConfig(other map[string]interface{}) (api.Charger, error)

NewVersichargeFromConfig creates a Versicharge charger from generic config

func NewVestelFromConfig

func NewVestelFromConfig(other map[string]interface{}) (api.Charger, error)

NewVestelFromConfig creates a Vestel charger from generic config

func NewVictron

func NewVictron(uri string, slaveID uint8, regs victronRegs) (api.Charger, error)

NewVictron creates Victron charger

func NewVictronEVCSFromConfig

func NewVictronEVCSFromConfig(other map[string]interface{}) (api.Charger, error)

NewVictronEVCSFromConfig creates a ABB charger from generic config

func NewVictronFromConfig

func NewVictronFromConfig(other map[string]interface{}, regs victronRegs) (api.Charger, error)

NewVictronFromConfig creates a ABB charger from generic config

func NewVictronGXFromConfig

func NewVictronGXFromConfig(other map[string]interface{}) (api.Charger, error)

NewVictronGXFromConfig creates a ABB charger from generic config

func NewWallbeFromConfig

func NewWallbeFromConfig(other map[string]interface{}) (api.Charger, error)

NewWallbeFromConfig creates a Wallbe charger from generic config

func NewWarp2FromConfig

func NewWarp2FromConfig(other map[string]interface{}) (api.Charger, error)

NewWarpFromConfig creates a new configurable charger

func NewWattpilot

func NewWattpilot(uri, password string, cache time.Duration) (api.Charger, error)

NewWattpilot creates Wattpilot charger

func NewWattpilotFromConfig

func NewWattpilotFromConfig(other map[string]interface{}) (api.Charger, error)

NewWattpilotFromConfig creates a wattpilot charger from generic config

func NewWebastoNext

func NewWebastoNext(uri string, id uint8) (api.Charger, error)

NewWebastoNext creates WebastoNext charger

func NewWebastoNextFromConfig

func NewWebastoNextFromConfig(other map[string]interface{}) (api.Charger, error)

NewWebastoNextFromConfig creates a WebastoNext charger from generic config

func NewWeidmüller

func NewWeidmüller(uri string, id uint8) (api.Charger, error)

NewWeidmüller creates Weidmüller charger

func NewWeidmüllerFromConfig

func NewWeidmüllerFromConfig(other map[string]interface{}) (api.Charger, error)

NewWeidmüllerFromConfig creates a Weidmüller charger from generic config

func NewZaptec

func NewZaptec(user, password, id string, priority bool, cache time.Duration) (api.Charger, error)

NewZaptec creates Zaptec charger

func NewZaptecFromConfig

func NewZaptecFromConfig(other map[string]interface{}) (api.Charger, error)

NewZaptecFromConfig creates a Zaptec Pro charger from generic config

func NewsmartEVSE

func NewsmartEVSE(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (*smartEVSE, error)

NewsmartEVSE creates a new charger

func NewsmartEVSEFromConfig

func NewsmartEVSEFromConfig(other map[string]interface{}) (api.Charger, error)

NewsmartEVSEFromConfig creates a new smartEVSE ModbusTCP charger

Types

type ABB

type ABB struct {
	// contains filtered or unexported fields
}

ABB charger implementation

func (*ABB) ChargedEnergy

func (wb *ABB) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.MeterEnergy interface

func (*ABB) CurrentPower

func (wb *ABB) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*ABB) Currents

func (wb *ABB) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*ABB) Diagnose

func (wb *ABB) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*ABB) Enable

func (wb *ABB) Enable(enable bool) error

Enable implements the api.Charger interface

func (*ABB) Enabled

func (wb *ABB) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*ABB) MaxCurrent

func (wb *ABB) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*ABB) MaxCurrentMillis

func (wb *ABB) MaxCurrentMillis(current float64) error

MaxCurrent implements the api.ChargerEx interface

func (*ABB) Status

func (wb *ABB) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*ABB) Voltages

func (wb *ABB) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type ABLeMH

type ABLeMH struct {
	// contains filtered or unexported fields
}

ABLeMH charger implementation

func (*ABLeMH) Diagnose

func (wb *ABLeMH) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*ABLeMH) Enable

func (wb *ABLeMH) Enable(enable bool) error

Enable implements the api.Charger interface

func (*ABLeMH) Enabled

func (wb *ABLeMH) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*ABLeMH) MaxCurrent

func (wb *ABLeMH) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*ABLeMH) MaxCurrentMillis

func (wb *ABLeMH) MaxCurrentMillis(current float64) error

MaxCurrent implements the api.ChargerEx interface

func (*ABLeMH) Status

func (wb *ABLeMH) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*ABLeMH) WakeUp

func (wb *ABLeMH) WakeUp() error

WakeUp implements the api.Resurrector interface

type AblEm4

type AblEm4 struct {
	// contains filtered or unexported fields
}

AblEm4 is an api.Charger implementation for ABL eM4 controller

func NewAblEm4

func NewAblEm4(uri string, id uint8, connector uint16) (*AblEm4, error)

NewAblEm4 creates an ABL eM4 charger

func (*AblEm4) CurrentPower

func (wb *AblEm4) CurrentPower() (float64, error)

currentPower implements the api.Meter interface

func (*AblEm4) Currents

func (wb *AblEm4) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*AblEm4) Enable

func (wb *AblEm4) Enable(enable bool) error

Enable implements the api.Charger interface

func (*AblEm4) Enabled

func (wb *AblEm4) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*AblEm4) MaxCurrent

func (wb *AblEm4) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*AblEm4) MaxCurrentMillis

func (wb *AblEm4) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*AblEm4) Status

func (wb *AblEm4) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*AblEm4) TotalEnergy

func (wb *AblEm4) TotalEnergy() (float64, error)

totalEnergy implements the api.MeterEnergy interface

func (*AblEm4) Voltages

func (wb *AblEm4) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Alfen

type Alfen struct {
	// contains filtered or unexported fields
}

Alfen charger implementation

func (*Alfen) CurrentPower

func (wb *Alfen) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Alfen) Currents

func (wb *Alfen) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Alfen) Enable

func (wb *Alfen) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Alfen) Enabled

func (wb *Alfen) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Alfen) MaxCurrent

func (wb *Alfen) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Alfen) MaxCurrentMillis

func (wb *Alfen) MaxCurrentMillis(current float64) error

MaxCurrent implements the api.ChargerEx interface

func (*Alfen) Status

func (wb *Alfen) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Alfen) TotalEnergy

func (wb *Alfen) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Alfen) Voltages

func (wb *Alfen) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface (tbc)

type Alphatec

type Alphatec struct {
	// contains filtered or unexported fields
}

Alphatec charger implementation

func (*Alphatec) Enable

func (wb *Alphatec) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Alphatec) Enabled

func (wb *Alphatec) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Alphatec) MaxCurrent

func (wb *Alphatec) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Alphatec) Status

func (wb *Alphatec) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Amperfied

type Amperfied struct {
	// contains filtered or unexported fields
}

Amperfied charger implementation

func (*Amperfied) CurrentPower

func (wb *Amperfied) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Amperfied) Currents

func (wb *Amperfied) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Amperfied) Diagnose

func (wb *Amperfied) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Amperfied) Enable

func (wb *Amperfied) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Amperfied) Enabled

func (wb *Amperfied) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Amperfied) Identify

func (wb *Amperfied) Identify() (string, error)

identify implements the api.Identifier interface

func (*Amperfied) MaxCurrent

func (wb *Amperfied) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Amperfied) MaxCurrentMillis

func (wb *Amperfied) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Amperfied) Status

func (wb *Amperfied) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Amperfied) TotalEnergy

func (wb *Amperfied) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Amperfied) Voltages

func (wb *Amperfied) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

func (*Amperfied) WakeUp

func (wb *Amperfied) WakeUp() error

WakeUp implements the api.Resurrector interface

type BenderCC

type BenderCC struct {
	// contains filtered or unexported fields
}

BenderCC charger implementation

func (*BenderCC) Diagnose

func (wb *BenderCC) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*BenderCC) Enable

func (wb *BenderCC) Enable(enable bool) error

Enable implements the api.Charger interface

func (*BenderCC) Enabled

func (wb *BenderCC) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*BenderCC) MaxCurrent

func (wb *BenderCC) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*BenderCC) Status

func (wb *BenderCC) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type CCU

type CCU struct {
	// contains filtered or unexported fields
}

Homematic CCU charger implementation

func NewCCU

func NewCCU(embed embed, uri, deviceid, meterid, switchid, user, password string, standbypower float64, cache time.Duration) (*CCU, error)

NewCCU creates a new connection with standbypower for charger

func (CCU) CurrentPower

func (c CCU) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*CCU) Enable

func (c *CCU) Enable(enable bool) error

Enable implements the api.Charger interface

func (*CCU) Enabled

func (c *CCU) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (CCU) LoadpointControl

func (c CCU) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (CCU) MaxCurrent

func (c CCU) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (CCU) MaxCurrentMillis

func (c CCU) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (CCU) Phases

func (v CCU) Phases() int

Phases implements the api.PhasesDescriber interface

func (CCU) Status

func (c CCU) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

func (*CCU) TotalEnergy

func (c *CCU) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type CfosPowerBrain

type CfosPowerBrain struct {
	// contains filtered or unexported fields
}

CfosPowerBrain is an charger implementation for cFos PowerBrain wallboxes. It uses Modbus TCP to communicate at modbus client id 1 and power meters at id 2 and 3. https://www.cfos-emobility.de/en-gb/cfos-power-brain/modbus-registers.htm

func (*CfosPowerBrain) Enable

func (wb *CfosPowerBrain) Enable(enable bool) error

Enable implements the api.Charger interface

func (*CfosPowerBrain) Enabled

func (wb *CfosPowerBrain) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*CfosPowerBrain) Identify

func (wb *CfosPowerBrain) Identify() (string, error)

Identify implements the api.Identifier interface

func (*CfosPowerBrain) MaxCurrent

func (wb *CfosPowerBrain) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*CfosPowerBrain) MaxCurrentMillis

func (wb *CfosPowerBrain) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*CfosPowerBrain) Status

func (wb *CfosPowerBrain) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*CfosPowerBrain) WakeUp

func (wb *CfosPowerBrain) WakeUp() error

WakeUp implements the api.Resurrector interface

type ChargePointHandler

type ChargePointHandler struct {
	// contains filtered or unexported fields
}

func (*ChargePointHandler) OnChangeAvailability

func (handler *ChargePointHandler) OnChangeAvailability(request *core.ChangeAvailabilityRequest) (confirmation *core.ChangeAvailabilityConfirmation, err error)

func (*ChargePointHandler) OnChangeConfiguration

func (handler *ChargePointHandler) OnChangeConfiguration(request *core.ChangeConfigurationRequest) (confirmation *core.ChangeConfigurationConfirmation, err error)

func (*ChargePointHandler) OnClearCache

func (handler *ChargePointHandler) OnClearCache(request *core.ClearCacheRequest) (confirmation *core.ClearCacheConfirmation, err error)

func (*ChargePointHandler) OnClearChargingProfile

func (*ChargePointHandler) OnDataTransfer

func (handler *ChargePointHandler) OnDataTransfer(request *core.DataTransferRequest) (confirmation *core.DataTransferConfirmation, err error)

func (*ChargePointHandler) OnGetCompositeSchedule

func (*ChargePointHandler) OnGetConfiguration

func (handler *ChargePointHandler) OnGetConfiguration(request *core.GetConfigurationRequest) (confirmation *core.GetConfigurationConfirmation, err error)

func (*ChargePointHandler) OnRemoteStartTransaction

func (handler *ChargePointHandler) OnRemoteStartTransaction(request *core.RemoteStartTransactionRequest) (confirmation *core.RemoteStartTransactionConfirmation, err error)

func (*ChargePointHandler) OnRemoteStopTransaction

func (handler *ChargePointHandler) OnRemoteStopTransaction(request *core.RemoteStopTransactionRequest) (confirmation *core.RemoteStopTransactionConfirmation, err error)

func (*ChargePointHandler) OnReset

func (handler *ChargePointHandler) OnReset(request *core.ResetRequest) (confirmation *core.ResetConfirmation, err error)

func (*ChargePointHandler) OnSetChargingProfile

func (*ChargePointHandler) OnTriggerMessage

func (handler *ChargePointHandler) OnTriggerMessage(request *remotetrigger.TriggerMessageRequest) (confirmation *remotetrigger.TriggerMessageConfirmation, err error)

func (*ChargePointHandler) OnUnlockConnector

func (handler *ChargePointHandler) OnUnlockConnector(request *core.UnlockConnectorRequest) (confirmation *core.UnlockConnectorConfirmation, err error)

type Charger

type Charger struct {
	// contains filtered or unexported fields
}

Charger is an api.Charger implementation with configurable getters and setters.

func NewConfigurable

func NewConfigurable(
	statusG func() (string, error),
	enabledG func() (bool, error),
	enableS func(bool) error,
	maxCurrentS func(int64) error,
) (*Charger, error)

NewConfigurable creates a new charger

func (*Charger) Enable

func (m *Charger) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Charger) Enabled

func (m *Charger) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (Charger) Features

func (v Charger) Features() []api.Feature

Features implements the api.FeatureDescriber interface

func (Charger) Icon

func (v Charger) Icon() string

Icon implements the api.IconDescriber interface

func (*Charger) MaxCurrent

func (m *Charger) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Charger) Status

func (m *Charger) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type ConnectIq

type ConnectIq struct {
	*request.Helper
	// contains filtered or unexported fields
}

ConnectIq charger implementation

func (*ConnectIq) CurrentPower

func (wb *ConnectIq) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*ConnectIq) Currents

func (wb *ConnectIq) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*ConnectIq) Enable

func (wb *ConnectIq) Enable(enable bool) error

Enable implements the api.Charger interface

func (*ConnectIq) Enabled

func (wb *ConnectIq) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*ConnectIq) MaxCurrent

func (wb *ConnectIq) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*ConnectIq) Status

func (wb *ConnectIq) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*ConnectIq) TotalEnergy

func (wb *ConnectIq) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Dadapower

type Dadapower struct {
	// contains filtered or unexported fields
}

Dadapower charger implementation

func NewDadapower

func NewDadapower(uri string, id uint8) (*Dadapower, error)

NewDadapower creates a Dadapower charger

func (*Dadapower) ChargedEnergy

func (wb *Dadapower) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Dadapower) CurrentPower

func (wb *Dadapower) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Dadapower) Currents

func (wb *Dadapower) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Dadapower) Diagnose

func (wb *Dadapower) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Dadapower) Enable

func (wb *Dadapower) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Dadapower) Enabled

func (wb *Dadapower) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Dadapower) Identify

func (wb *Dadapower) Identify() (string, error)

Identify implements the api.Identifier interface

func (*Dadapower) MaxCurrent

func (wb *Dadapower) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Dadapower) MaxCurrentMillis

func (wb *Dadapower) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Dadapower) Phases1p3p

func (wb *Dadapower) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*Dadapower) Status

func (wb *Dadapower) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Dadapower) TotalEnergy

func (wb *Dadapower) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type DaheimLaden

type DaheimLaden struct {
	*request.Helper
	// contains filtered or unexported fields
}

DaheimLaden charger implementation

func NewDaheimLaden

func NewDaheimLaden(token, stationID string, cache time.Duration) (*DaheimLaden, error)

NewDaheimLaden creates DaheimLaden charger

func (*DaheimLaden) CurrentPower

func (c *DaheimLaden) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*DaheimLaden) Currents

func (c *DaheimLaden) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*DaheimLaden) Enable

func (c *DaheimLaden) Enable(enable bool) error

Enable implements the api.Charger interface

func (*DaheimLaden) Enabled

func (c *DaheimLaden) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*DaheimLaden) MaxCurrent

func (c *DaheimLaden) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*DaheimLaden) Status

func (c *DaheimLaden) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*DaheimLaden) TotalEnergy

func (c *DaheimLaden) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterMeterEnergy interface

type DaheimLadenMB

type DaheimLadenMB struct {
	// contains filtered or unexported fields
}

DaheimLadenMB charger implementation

func (*DaheimLadenMB) CurrentPower

func (wb *DaheimLadenMB) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*DaheimLadenMB) Currents

func (wb *DaheimLadenMB) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*DaheimLadenMB) Diagnose

func (wb *DaheimLadenMB) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*DaheimLadenMB) Enable

func (wb *DaheimLadenMB) Enable(enable bool) error

Enable implements the api.Charger interface

func (*DaheimLadenMB) Enabled

func (wb *DaheimLadenMB) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*DaheimLadenMB) Identify

func (wb *DaheimLadenMB) Identify() (string, error)

Identify implements the api.Identifier interface

func (*DaheimLadenMB) MaxCurrent

func (wb *DaheimLadenMB) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*DaheimLadenMB) Status

func (wb *DaheimLadenMB) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*DaheimLadenMB) TotalEnergy

func (wb *DaheimLadenMB) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*DaheimLadenMB) Voltages

func (wb *DaheimLadenMB) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Delta

type Delta struct {
	// contains filtered or unexported fields
}

Delta charger implementation

func (*Delta) CurrentPower

func (wb *Delta) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Delta) Diagnose

func (wb *Delta) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Delta) Enable

func (wb *Delta) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Delta) Enabled

func (wb *Delta) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Delta) LoadpointControl

func (wb *Delta) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (*Delta) MaxCurrent

func (wb *Delta) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Delta) MaxCurrentMillis

func (wb *Delta) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Delta) Status

func (wb *Delta) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Delta) SuspendCharging

func (wb *Delta) SuspendCharging(state bool)

type DeltaAc

type DeltaAc struct {
	// contains filtered or unexported fields
}

Delta charger implementation

func (*DeltaAc) CurrentPower

func (wb *DeltaAc) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*DeltaAc) Diagnose

func (wb *DeltaAc) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*DeltaAc) Enable

func (wb *DeltaAc) Enable(enable bool) error

Enable implements the api.Charger interface

func (*DeltaAc) Enabled

func (wb *DeltaAc) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*DeltaAc) LoadpointControl

func (wb *DeltaAc) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (*DeltaAc) MaxCurrent

func (wb *DeltaAc) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*DeltaAc) MaxCurrentMillis

func (wb *DeltaAc) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*DeltaAc) Status

func (wb *DeltaAc) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type EEBus

type EEBus struct {
	// contains filtered or unexported fields
}

func (*EEBus) DeviceConnect

func (c *EEBus) DeviceConnect()

func (*EEBus) DeviceDisconnect

func (c *EEBus) DeviceDisconnect()

func (*EEBus) Enable

func (c *EEBus) Enable(enable bool) error

Enable implements the api.Charger interface

func (*EEBus) Enabled

func (c *EEBus) Enabled() (bool, error)

Enabled implements the api.Charger interface should return true if the charger allows the EV to draw power

func (*EEBus) GetMaxCurrent

func (c *EEBus) GetMaxCurrent() (float64, error)

GetMaxCurrent implements the api.CurrentGetter interface

func (*EEBus) GetMinMaxCurrent

func (c *EEBus) GetMinMaxCurrent() (float64, float64, error)

func (*EEBus) Identify

func (c *EEBus) Identify() (string, error)

Identify implements the api.Identifier interface

func (*EEBus) LoadpointControl

func (c *EEBus) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (*EEBus) MaxCurrent

func (c *EEBus) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*EEBus) MaxCurrentMillis

func (c *EEBus) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*EEBus) Soc

func (c *EEBus) Soc() (float64, error)

Soc implements the api.Vehicle interface

func (*EEBus) Status

func (c *EEBus) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*EEBus) UseCaseEventCB

func (c *EEBus) UseCaseEventCB(device spineapi.DeviceRemoteInterface, entity spineapi.EntityRemoteInterface, event eebusapi.EventType)

UseCase specific events

type EVSEWifi

type EVSEWifi struct {
	*request.Helper
	// contains filtered or unexported fields
}

EVSEWifi charger implementation

func NewEVSEWifi

func NewEVSEWifi(uri string, cache time.Duration) (*EVSEWifi, error)

NewEVSEWifi creates EVSEWifi charger

func (*EVSEWifi) Enable

func (wb *EVSEWifi) Enable(enable bool) error

Enable implements the api.Charger interface

func (*EVSEWifi) Enabled

func (wb *EVSEWifi) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*EVSEWifi) MaxCurrent

func (wb *EVSEWifi) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*EVSEWifi) Status

func (wb *EVSEWifi) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*EVSEWifi) WakeUp

func (wb *EVSEWifi) WakeUp() error

WakeUp implements the Resurrector interface

type Easee

type Easee struct {
	*request.Helper
	// contains filtered or unexported fields
}

Easee charger implementation

func NewEasee

func NewEasee(user, password, charger string, timeout time.Duration, authorize bool) (*Easee, error)

NewEasee creates Easee charger

func (*Easee) ChargedEnergy

func (c *Easee) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Easee) ChargerUpdate

func (c *Easee) ChargerUpdate(i json.RawMessage)

ChargerUpdate implements the signalr receiver

func (*Easee) CommandResponse

func (c *Easee) CommandResponse(i json.RawMessage)

CommandResponse implements the signalr receiver

func (*Easee) CurrentPower

func (c *Easee) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Easee) Currents

func (c *Easee) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Easee) Enable

func (c *Easee) Enable(enable bool) (err error)

Enable implements the api.Charger interface

func (*Easee) Enabled

func (c *Easee) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Easee) GetMaxCurrent

func (c *Easee) GetMaxCurrent() (float64, error)

GetMaxCurrent implements the api.CurrentGetter interface

func (*Easee) GetPhases

func (c *Easee) GetPhases() (int, error)

GetPhases implements the api.PhaseGetter interface

func (*Easee) Identify

func (c *Easee) Identify() (string, error)

Currents implements the api.PhaseCurrents interface

func (*Easee) LoadpointControl

func (c *Easee) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (*Easee) MaxCurrent

func (c *Easee) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Easee) Phases1p3p

func (c *Easee) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*Easee) ProductUpdate

func (c *Easee) ProductUpdate(i json.RawMessage)

ProductUpdate implements the signalr receiver

func (*Easee) Status

func (c *Easee) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Easee) SubscribeToMyProduct

func (c *Easee) SubscribeToMyProduct(i json.RawMessage)

SubscribeToMyProduct implements the signalr receiver

func (*Easee) TotalEnergy

func (c *Easee) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Em2Go

type Em2Go struct {
	// contains filtered or unexported fields
}

Em2Go charger implementation

func (*Em2Go) ChargeDuration

func (wb *Em2Go) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*Em2Go) ChargedEnergy

func (wb *Em2Go) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Em2Go) CurrentPower

func (wb *Em2Go) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Em2Go) Currents

func (wb *Em2Go) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Em2Go) Diagnose

func (wb *Em2Go) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Em2Go) Enable

func (wb *Em2Go) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Em2Go) Enabled

func (wb *Em2Go) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (Em2Go) GetMaxCurrent

func (wb Em2Go) GetMaxCurrent() (float64, error)

GetMaxCurrent implements the api.CurrentGetter interface

func (*Em2Go) MaxCurrent

func (wb *Em2Go) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Em2Go) Status

func (wb *Em2Go) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Em2Go) TotalEnergy

func (wb *Em2Go) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Em2Go) Voltages

func (wb *Em2Go) Voltages() (float64, float64, float64, error)

Currents implements the api.PhaseVoltages interface

type Etrel

type Etrel struct {
	// contains filtered or unexported fields
}

Etrel is an api.Charger implementation for Etrel/Sonnen wallboxes

func NewEtrel

func NewEtrel(connector int, uri string, id uint8) (*Etrel, error)

NewEtrel creates a Etrel charger

func (*Etrel) CurrentPower

func (wb *Etrel) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Etrel) Currents

func (wb *Etrel) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Etrel) Diagnose

func (wb *Etrel) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Etrel) Enable

func (wb *Etrel) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Etrel) Enabled

func (wb *Etrel) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Etrel) MaxCurrent

func (wb *Etrel) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Etrel) MaxCurrentMillis

func (wb *Etrel) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Etrel) Status

func (wb *Etrel) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type EvseDIN

type EvseDIN struct {
	// contains filtered or unexported fields
}

EvseDIN charger implementation

func (*EvseDIN) Enable

func (evse *EvseDIN) Enable(enable bool) error

Enable implements the api.Charger interface

func (*EvseDIN) Enabled

func (evse *EvseDIN) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*EvseDIN) MaxCurrent

func (evse *EvseDIN) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*EvseDIN) Status

func (evse *EvseDIN) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type FritzDECT

type FritzDECT struct {
	// contains filtered or unexported fields
}

FritzDECT charger implementation

func NewFritzDECT

func NewFritzDECT(embed embed, uri, ain, user, password string, standbypower float64) (*FritzDECT, error)

NewFritzDECT creates a new connection with standbypower for charger

func (FritzDECT) CurrentPower

func (c FritzDECT) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*FritzDECT) Enable

func (c *FritzDECT) Enable(enable bool) error

Enable implements the api.Charger interface

func (*FritzDECT) Enabled

func (c *FritzDECT) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (FritzDECT) LoadpointControl

func (c FritzDECT) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (FritzDECT) MaxCurrent

func (c FritzDECT) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (FritzDECT) MaxCurrentMillis

func (c FritzDECT) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (FritzDECT) Phases

func (v FritzDECT) Phases() int

Phases implements the api.PhasesDescriber interface

func (*FritzDECT) Status

func (c *FritzDECT) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*FritzDECT) TotalEnergy

func (c *FritzDECT) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type GoE

type GoE struct {
	// contains filtered or unexported fields
}

GoE charger implementation

func (*GoE) CurrentPower

func (c *GoE) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*GoE) Currents

func (c *GoE) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*GoE) Enable

func (c *GoE) Enable(enable bool) error

Enable implements the api.Charger interface

func (*GoE) Enabled

func (c *GoE) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*GoE) Identify

func (c *GoE) Identify() (string, error)

Identify implements the api.Identifier interface

func (*GoE) MaxCurrent

func (c *GoE) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*GoE) Status

func (c *GoE) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*GoE) TotalEnergy

func (c *GoE) TotalEnergy() (float64, error)

totalEnergy implements the api.MeterEnergy interface - v2 only

func (*GoE) Voltages

func (c *GoE) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type HardyBarth

type HardyBarth struct {
	*request.Helper
	// contains filtered or unexported fields
}

HardyBarth charger implementation

func (*HardyBarth) CurrentPower

func (wb *HardyBarth) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*HardyBarth) Currents

func (wb *HardyBarth) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*HardyBarth) Enable

func (wb *HardyBarth) Enable(enable bool) error

Enable implements the api.Charger interface

func (*HardyBarth) Enabled

func (wb *HardyBarth) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*HardyBarth) MaxCurrent

func (wb *HardyBarth) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*HardyBarth) Status

func (wb *HardyBarth) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*HardyBarth) TotalEnergy

func (wb *HardyBarth) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type HeidelbergEC

type HeidelbergEC struct {
	// contains filtered or unexported fields
}

HeidelbergEC charger implementation

func (*HeidelbergEC) CurrentPower

func (wb *HeidelbergEC) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*HeidelbergEC) Currents

func (wb *HeidelbergEC) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*HeidelbergEC) Diagnose

func (wb *HeidelbergEC) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*HeidelbergEC) Enable

func (wb *HeidelbergEC) Enable(enable bool) error

Enable implements the api.Charger interface

func (*HeidelbergEC) Enabled

func (wb *HeidelbergEC) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*HeidelbergEC) MaxCurrent

func (wb *HeidelbergEC) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*HeidelbergEC) MaxCurrentMillis

func (wb *HeidelbergEC) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*HeidelbergEC) Status

func (wb *HeidelbergEC) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*HeidelbergEC) TotalEnergy

func (wb *HeidelbergEC) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*HeidelbergEC) Voltages

func (wb *HeidelbergEC) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

func (*HeidelbergEC) WakeUp

func (wb *HeidelbergEC) WakeUp() error

WakeUp implements the api.Resurrector interface

type Hesotec

type Hesotec struct {
	// contains filtered or unexported fields
}

Hesotec charger implementation

func (*Hesotec) ChargeDuration

func (wb *Hesotec) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*Hesotec) CurrentPower

func (wb *Hesotec) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Hesotec) Currents

func (wb *Hesotec) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Hesotec) Diagnose

func (wb *Hesotec) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Hesotec) Enable

func (wb *Hesotec) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Hesotec) Enabled

func (wb *Hesotec) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Hesotec) MaxCurrent

func (wb *Hesotec) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Hesotec) Status

func (wb *Hesotec) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Hesotec) TotalEnergy

func (wb *Hesotec) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Hesotec) Voltages

func (wb *Hesotec) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type HomeWizard

type HomeWizard struct {
	// contains filtered or unexported fields
}

HomeWizard charger implementation

func NewHomeWizard

func NewHomeWizard(embed embed, uri string, standbypower float64, cache time.Duration) (*HomeWizard, error)

NewHomeWizard creates HomeWizard charger

func (HomeWizard) CurrentPower

func (c HomeWizard) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*HomeWizard) Enable

func (c *HomeWizard) Enable(enable bool) error

Enable implements the api.Charger interface

func (*HomeWizard) Enabled

func (c *HomeWizard) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (HomeWizard) LoadpointControl

func (c HomeWizard) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (HomeWizard) MaxCurrent

func (c HomeWizard) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (HomeWizard) MaxCurrentMillis

func (c HomeWizard) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (HomeWizard) Phases

func (v HomeWizard) Phases() int

Phases implements the api.PhasesDescriber interface

func (HomeWizard) Status

func (c HomeWizard) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

func (*HomeWizard) TotalEnergy

func (c *HomeWizard) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Innogy

type Innogy struct {
	// contains filtered or unexported fields
}

Innogy is an api.Charger implementation for Innogy eBox wallboxes.

func NewInnogy

func NewInnogy(uri string, id uint8) (*Innogy, error)

NewInnogy creates a Innogy charger

func (*Innogy) CurrentPower

func (wb *Innogy) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Innogy) Currents

func (wb *Innogy) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Innogy) Diagnose

func (wb *Innogy) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Innogy) Enable

func (wb *Innogy) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Innogy) Enabled

func (wb *Innogy) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Innogy) MaxCurrent

func (wb *Innogy) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Innogy) MaxCurrentMillis

func (wb *Innogy) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Innogy) Status

func (wb *Innogy) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type KSE

type KSE struct {
	// contains filtered or unexported fields
}

KSE charger implementation

func (*KSE) ChargedEnergy

func (wb *KSE) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.MeterEnergy interface

func (*KSE) CurrentPower

func (wb *KSE) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*KSE) Currents

func (wb *KSE) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*KSE) Diagnose

func (wb *KSE) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*KSE) Enable

func (wb *KSE) Enable(enable bool) error

Enable implements the api.Charger interface

func (*KSE) Enabled

func (wb *KSE) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*KSE) MaxCurrent

func (wb *KSE) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*KSE) Status

func (wb *KSE) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*KSE) TotalEnergy

func (wb *KSE) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*KSE) Voltages

func (wb *KSE) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Keba

type Keba struct {
	// contains filtered or unexported fields
}

Keba is an api.Charger implementation

func NewKeba

func NewKeba(uri string, slaveID uint8) (*Keba, error)

NewKeba creates a new charger

func (*Keba) Diagnose

func (wb *Keba) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Keba) Enable

func (wb *Keba) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Keba) Enabled

func (wb *Keba) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Keba) MaxCurrent

func (wb *Keba) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Keba) MaxCurrentMillis

func (wb *Keba) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Keba) Status

func (wb *Keba) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type KebaUdp

type KebaUdp struct {
	// contains filtered or unexported fields
}

KebaUdp is an api.Charger implementation

func NewKebaUdp

func NewKebaUdp(uri, serial string, rfid keba.RFID, timeout time.Duration) (*KebaUdp, error)

NewKebaUdp creates a new charger

func (*KebaUdp) Diagnose

func (c *KebaUdp) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*KebaUdp) Enable

func (c *KebaUdp) Enable(enable bool) error

Enable implements the api.Charger interface

func (*KebaUdp) Enabled

func (c *KebaUdp) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*KebaUdp) Identify

func (c *KebaUdp) Identify() (string, error)

Identify implements the api.Identifier interface

func (*KebaUdp) MaxCurrent

func (c *KebaUdp) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*KebaUdp) MaxCurrentMillis

func (c *KebaUdp) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*KebaUdp) Status

func (c *KebaUdp) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type MCCCurrentCableInformation

type MCCCurrentCableInformation struct {
	MaxValue, MinValue, Value int64
}

MCCCurrentCableInformation is the apiCurrentCableInformation response

type MCCCurrentSession

type MCCCurrentSession struct {
	Duration     int64
	EnergySumKwh float64
}

MCCCurrentSession is the apiCurrentSession response

type MCCEnergy

type MCCEnergy struct {
	L1, L2, L3 MCCEnergyPhase
}

MCCEnergy is the apiEnergy response

type MCCEnergyPhase

type MCCEnergyPhase struct {
	Ampere float64
	Power  float64
}

MCCEnergyPhase is the apiEnergy response for a single phase

type MCCTokenResponse

type MCCTokenResponse struct {
	Token string
	Error string
}

MCCTokenResponse is the apiLogin response

type MennekesCompact

type MennekesCompact struct {
	// contains filtered or unexported fields
}

MennekesCompact is an api.Charger implementation

func (*MennekesCompact) CurrentPower

func (wb *MennekesCompact) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*MennekesCompact) Currents

func (wb *MennekesCompact) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*MennekesCompact) Diagnose

func (wb *MennekesCompact) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*MennekesCompact) Enable

func (wb *MennekesCompact) Enable(enable bool) error

Enable implements the api.Charger interface

func (*MennekesCompact) Enabled

func (wb *MennekesCompact) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*MennekesCompact) MaxCurrent

func (wb *MennekesCompact) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*MennekesCompact) MaxCurrentMillis

func (wb *MennekesCompact) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*MennekesCompact) Phases1p3p

func (wb *MennekesCompact) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*MennekesCompact) Status

func (wb *MennekesCompact) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*MennekesCompact) TotalEnergy

func (wb *MennekesCompact) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*MennekesCompact) Voltages

func (wb *MennekesCompact) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type MennekesHcc3

type MennekesHcc3 struct {
	// contains filtered or unexported fields
}

MennekesHcc3 Xtra/Premium charger implementation

func (*MennekesHcc3) ChargedEnergy

func (wb *MennekesHcc3) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.MeterEnergy interface

func (*MennekesHcc3) CurrentPower

func (wb *MennekesHcc3) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*MennekesHcc3) Diagnose

func (wb *MennekesHcc3) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*MennekesHcc3) Enable

func (wb *MennekesHcc3) Enable(enable bool) error

Enable implements the api.Charger interface

func (*MennekesHcc3) Enabled

func (wb *MennekesHcc3) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*MennekesHcc3) MaxCurrent

func (wb *MennekesHcc3) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*MennekesHcc3) Status

func (wb *MennekesHcc3) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type MobileConnect

type MobileConnect struct {
	*request.Helper
	// contains filtered or unexported fields
}

MobileConnect charger supporting devices from Audi, Bentley, Porsche

func NewMobileConnect

func NewMobileConnect(uri, password string) (*MobileConnect, error)

NewMobileConnect creates MCC charger

func (*MobileConnect) ChargeDuration

func (mcc *MobileConnect) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*MobileConnect) ChargedEnergy

func (mcc *MobileConnect) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*MobileConnect) CurrentPower

func (mcc *MobileConnect) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*MobileConnect) Currents

func (mcc *MobileConnect) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*MobileConnect) Enable

func (mcc *MobileConnect) Enable(enable bool) error

Enable implements the api.Charger interface

func (*MobileConnect) Enabled

func (mcc *MobileConnect) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*MobileConnect) MaxCurrent

func (mcc *MobileConnect) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*MobileConnect) Status

func (mcc *MobileConnect) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type MyStrom

type MyStrom struct {
	// contains filtered or unexported fields
}

MyStrom charger implementation

func (MyStrom) CurrentPower

func (c MyStrom) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*MyStrom) Enable

func (c *MyStrom) Enable(enable bool) error

Enable implements the api.Charger interface

func (*MyStrom) Enabled

func (c *MyStrom) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (MyStrom) LoadpointControl

func (c MyStrom) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (MyStrom) MaxCurrent

func (c MyStrom) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (MyStrom) MaxCurrentMillis

func (c MyStrom) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (MyStrom) Phases

func (v MyStrom) Phases() int

Phases implements the api.PhasesDescriber interface

func (MyStrom) Status

func (c MyStrom) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

type NRGKickBLE

type NRGKickBLE struct {
	// contains filtered or unexported fields
}

NRGKickBLE charger implementation

func NewNRGKickBLE

func NewNRGKickBLE(device, mac string, pin int) (*NRGKickBLE, error)

NewNRGKickBLE creates NRGKickBLE charger

func (*NRGKickBLE) CurrentPower

func (nrg *NRGKickBLE) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*NRGKickBLE) Currents

func (nrg *NRGKickBLE) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*NRGKickBLE) Enable

func (nrg *NRGKickBLE) Enable(enable bool) error

Enable implements the api.Charger interface

func (*NRGKickBLE) Enabled

func (nrg *NRGKickBLE) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*NRGKickBLE) MaxCurrent

func (nrg *NRGKickBLE) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*NRGKickBLE) Status

func (nrg *NRGKickBLE) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*NRGKickBLE) TotalEnergy

func (nrg *NRGKickBLE) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type NRGKickConnect

type NRGKickConnect struct {
	*request.Helper
	// contains filtered or unexported fields
}

NRGKickConnect charger implementation

func NewNRGKickConnect

func NewNRGKickConnect(uri, mac, password string, cache time.Duration) (*NRGKickConnect, error)

NewNRGKickConnect creates NRGKickConnect charger

func (*NRGKickConnect) CurrentPower

func (nrg *NRGKickConnect) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*NRGKickConnect) Currents

func (nrg *NRGKickConnect) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*NRGKickConnect) Enable

func (nrg *NRGKickConnect) Enable(enable bool) error

Enable implements the api.Charger interface

func (*NRGKickConnect) Enabled

func (nrg *NRGKickConnect) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*NRGKickConnect) MaxCurrent

func (nrg *NRGKickConnect) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*NRGKickConnect) Status

func (nrg *NRGKickConnect) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*NRGKickConnect) TotalEnergy

func (nrg *NRGKickConnect) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type OCPP

type OCPP struct {
	// contains filtered or unexported fields
}

OCPP charger implementation

func NewOCPP

func NewOCPP(id string, connector int, idtag string,
	meterValues string, meterInterval time.Duration,
	boot, noConfig, autoStart, noStop bool,
	connectTimeout, timeout time.Duration,
	chargingRateUnit string,
) (*OCPP, error)

NewOCPP creates OCPP charger

func (*OCPP) Connector

func (c *OCPP) Connector() *ocpp.Connector

Connector returns the connector instance

func (*OCPP) Enable

func (c *OCPP) Enable(enable bool) error

func (*OCPP) Enabled

func (c *OCPP) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*OCPP) Identify

func (c *OCPP) Identify() (string, error)

Identify implements the api.Identifier interface

func (*OCPP) LoadpointControl

func (c *OCPP) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (*OCPP) MaxCurrent

func (c *OCPP) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*OCPP) MaxCurrentMillis

func (c *OCPP) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*OCPP) Status

func (c *OCPP) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Obo

type Obo struct {
	// contains filtered or unexported fields
}

Obo charger implementation

func (*Obo) Enable

func (wb *Obo) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Obo) Enabled

func (wb *Obo) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Obo) MaxCurrent

func (wb *Obo) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Obo) Status

func (wb *Obo) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type OpenEVSE

type OpenEVSE struct {
	*request.Helper
	// contains filtered or unexported fields
}

OpenEVSE charger implementation

func (*OpenEVSE) ChargeDuration

func (c *OpenEVSE) ChargeDuration() (time.Duration, error)

func (*OpenEVSE) ChargedEnergy

func (c *OpenEVSE) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*OpenEVSE) CurrentPower

func (c *OpenEVSE) CurrentPower() (float64, error)

func (*OpenEVSE) Enable

func (c *OpenEVSE) Enable(enable bool) error

Enable implements the api.Charger interface

func (*OpenEVSE) Enabled

func (c *OpenEVSE) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*OpenEVSE) MaxCurrent

func (c *OpenEVSE) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*OpenEVSE) Status

func (c *OpenEVSE) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*OpenEVSE) TotalEnergy

func (c *OpenEVSE) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type OpenWB

type OpenWB struct {
	// contains filtered or unexported fields
}

OpenWB configures generic charger and charge meter for an openWB loadpoint

func (*OpenWB) Authorize

func (m *OpenWB) Authorize(key string) error

Authorize implements the api.Authorizer interface

func (*OpenWB) CurrentPower

func (m *OpenWB) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*OpenWB) Currents

func (m *OpenWB) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*OpenWB) Enable

func (m *OpenWB) Enable(enable bool) error

func (*OpenWB) Enabled

func (m *OpenWB) Enabled() (bool, error)

func (*OpenWB) MaxCurrent

func (m *OpenWB) MaxCurrent(current int64) error

func (*OpenWB) Status

func (m *OpenWB) Status() (api.ChargeStatus, error)

func (*OpenWB) TotalEnergy

func (m *OpenWB) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*OpenWB) WakeUp

func (m *OpenWB) WakeUp() error

WakeUp implements the api.Resurrector interface

type OpenWB20

type OpenWB20 struct {
	// contains filtered or unexported fields
}

OpenWB20 charger implementation

func NewOpenWB20

func NewOpenWB20(uri string, slaveID uint8, connector uint16) (*OpenWB20, error)

NewOpenWB20 creates OpenWB20 charger

func (*OpenWB20) CurrentPower

func (wb *OpenWB20) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*OpenWB20) Currents

func (wb *OpenWB20) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*OpenWB20) Enable

func (wb *OpenWB20) Enable(enable bool) error

Enable implements the api.Charger interface

func (*OpenWB20) Enabled

func (wb *OpenWB20) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*OpenWB20) MaxCurrent

func (wb *OpenWB20) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*OpenWB20) MaxCurrentMillis

func (wb *OpenWB20) MaxCurrentMillis(current float64) error

MaxCurrent implements the api.ChargerEx interface

func (*OpenWB20) Phases1p3p

func (wb *OpenWB20) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*OpenWB20) Status

func (wb *OpenWB20) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*OpenWB20) TotalEnergy

func (wb *OpenWB20) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*OpenWB20) Voltages

func (wb *OpenWB20) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

func (*OpenWB20) WakeUp

func (wb *OpenWB20) WakeUp() error

WakeUp implements the api.Resurrector interface

type OpenWBPro

type OpenWBPro struct {
	*request.Helper
	// contains filtered or unexported fields
}

OpenWBPro charger implementation

func NewOpenWBPro

func NewOpenWBPro(uri string, cache time.Duration) (*OpenWBPro, error)

NewOpenWBPro creates OpenWBPro charger

func (*OpenWBPro) CurrentPower

func (wb *OpenWBPro) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*OpenWBPro) Currents

func (wb *OpenWBPro) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*OpenWBPro) Enable

func (wb *OpenWBPro) Enable(enable bool) error

Enable implements the api.Charger interface

func (*OpenWBPro) Enabled

func (wb *OpenWBPro) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*OpenWBPro) Identify

func (wb *OpenWBPro) Identify() (string, error)

Identify implements the api.Identifier interface

func (*OpenWBPro) MaxCurrent

func (wb *OpenWBPro) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*OpenWBPro) MaxCurrentMillis

func (wb *OpenWBPro) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*OpenWBPro) Phases1p3p

func (wb *OpenWBPro) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*OpenWBPro) Soc

func (wb *OpenWBPro) Soc() (float64, error)

Soc implements the api.Battery interface

func (*OpenWBPro) Status

func (wb *OpenWBPro) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*OpenWBPro) TotalEnergy

func (wb *OpenWBPro) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*OpenWBPro) Voltages

func (wb *OpenWBPro) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type PCElectric

type PCElectric struct {
	*request.Helper
	// contains filtered or unexported fields
}

PCElectric charger implementation

func NewPCElectric

func NewPCElectric(uri string, slaveIndex int, meter string) (*PCElectric, error)

NewPCElectric creates PCElectric charger

func (*PCElectric) Enable

func (wb *PCElectric) Enable(enable bool) error

Enable implements the api.Charger interface

func (*PCElectric) Enabled

func (wb *PCElectric) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*PCElectric) MaxCurrent

func (wb *PCElectric) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*PCElectric) MinCurrent

func (wb *PCElectric) MinCurrent(current int64) error

func (*PCElectric) Status

func (wb *PCElectric) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Pantabox

type Pantabox struct {
	*request.Helper
	// contains filtered or unexported fields
}

Pantabox charger implementation

func NewPantabox

func NewPantabox(uri string) (*Pantabox, error)

NewPantabox creates Pantabox charger

func (*Pantabox) CurrentPower

func (wb *Pantabox) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Pantabox) Diagnose

func (wb *Pantabox) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Pantabox) Enable

func (wb *Pantabox) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Pantabox) Enabled

func (wb *Pantabox) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Pantabox) MaxCurrent

func (wb *Pantabox) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Pantabox) Status

func (wb *Pantabox) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type PhoenixCharx

type PhoenixCharx struct {
	// contains filtered or unexported fields
}

PhoenixCharx is an api.Charger implementation for Phoenix CHARX controller

func NewPhoenixCharx

func NewPhoenixCharx(uri string, id uint8, connector uint16) (*PhoenixCharx, error)

NewPhoenixCharx creates a Phoenix charger

func (*PhoenixCharx) ChargeDuration

func (wb *PhoenixCharx) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*PhoenixCharx) Diagnose

func (wb *PhoenixCharx) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*PhoenixCharx) Enable

func (wb *PhoenixCharx) Enable(enable bool) error

Enable implements the api.Charger interface

func (*PhoenixCharx) Enabled

func (wb *PhoenixCharx) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*PhoenixCharx) Identify

func (wb *PhoenixCharx) Identify() (string, error)

Identify implements the api.Identifier interface

func (*PhoenixCharx) MaxCurrent

func (wb *PhoenixCharx) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*PhoenixCharx) Status

func (wb *PhoenixCharx) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type PhoenixEMEth

type PhoenixEMEth struct {
	// contains filtered or unexported fields
}

PhoenixEMEth is an api.Charger implementation for Phoenix EM-CP-PP-ETH wallboxes. It uses Modbus TCP to communicate with the wallbox at modbus client id 180.

func NewPhoenixEMEth

func NewPhoenixEMEth(uri string, slaveID uint8) (*PhoenixEMEth, error)

NewPhoenixEMEth creates a Phoenix charger

func (*PhoenixEMEth) ChargeDuration

func (wb *PhoenixEMEth) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*PhoenixEMEth) Enable

func (wb *PhoenixEMEth) Enable(enable bool) error

Enable implements the api.Charger interface

func (*PhoenixEMEth) Enabled

func (wb *PhoenixEMEth) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (PhoenixEMEth) GetMaxCurrent

func (wb PhoenixEMEth) GetMaxCurrent() (float64, error)

GetMaxCurrent implements the api.CurrentGetter interface

func (*PhoenixEMEth) MaxCurrent

func (wb *PhoenixEMEth) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*PhoenixEMEth) Status

func (wb *PhoenixEMEth) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type PhoenixEVEth

type PhoenixEVEth struct {
	// contains filtered or unexported fields
}

func (*PhoenixEVEth) Diagnose

func (wb *PhoenixEVEth) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*PhoenixEVEth) Enable

func (wb *PhoenixEVEth) Enable(enable bool) error

Enable implements the api.Charger interface

func (*PhoenixEVEth) Enabled

func (wb *PhoenixEVEth) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*PhoenixEVEth) MaxCurrent

func (wb *PhoenixEVEth) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*PhoenixEVEth) Status

func (wb *PhoenixEVEth) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type PhoenixEVSer

type PhoenixEVSer struct {
	// contains filtered or unexported fields
}

PhoenixEVSer is an api.Charger implementation for Phoenix EV-CC-AC1-M wallboxes. It uses Modbus RTU to communicate with the wallbox at configurable modbus client.

func NewPhoenixEVSer

func NewPhoenixEVSer(uri, device, comset string, baudrate int, proto modbus.Protocol, id uint8) (*PhoenixEVSer, error)

NewPhoenixEVSer creates a Phoenix charger

func (*PhoenixEVSer) Enable

func (wb *PhoenixEVSer) Enable(enable bool) error

Enable implements the api.Charger interface

func (*PhoenixEVSer) Enabled

func (wb *PhoenixEVSer) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*PhoenixEVSer) MaxCurrent

func (wb *PhoenixEVSer) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*PhoenixEVSer) Status

func (wb *PhoenixEVSer) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type PrachtAlpha

type PrachtAlpha struct {
	// contains filtered or unexported fields
}

PrachtAlpha charger implementation

func (*PrachtAlpha) Diagnose

func (wb *PrachtAlpha) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*PrachtAlpha) Enable

func (wb *PrachtAlpha) Enable(enable bool) error

Enable implements the api.Charger interface

func (*PrachtAlpha) Enabled

func (wb *PrachtAlpha) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*PrachtAlpha) MaxCurrent

func (wb *PrachtAlpha) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*PrachtAlpha) Status

func (wb *PrachtAlpha) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Pulsares

type Pulsares struct {
	// contains filtered or unexported fields
}

Pulsares charger implementation

func NewPulsares

func NewPulsares(uri, device, comset string, baudrate int, proto modbus.Protocol, slaveID uint8) (*Pulsares, error)

NewPulsares creates Pulsares charger

func (*Pulsares) Enable

func (wb *Pulsares) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Pulsares) Enabled

func (wb *Pulsares) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Pulsares) MaxCurrent

func (wb *Pulsares) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Pulsares) MaxCurrentMillis

func (wb *Pulsares) MaxCurrentMillis(current float64) error

MaxCurrent implements the api.ChargerEx interface

func (*Pulsares) Status

func (wb *Pulsares) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Pulsatrix

type Pulsatrix struct {
	// contains filtered or unexported fields
}

pulsatrix charger implementation

func NewPulsatrix

func NewPulsatrix(hostname string) (*Pulsatrix, error)

NewPulsatrix creates pulsatrix charger

func (*Pulsatrix) CurrentPower

func (c *Pulsatrix) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Pulsatrix) Currents

func (c *Pulsatrix) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Pulsatrix) Enable

func (c *Pulsatrix) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Pulsatrix) Enabled

func (c *Pulsatrix) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Pulsatrix) GetMaxCurrent

func (c *Pulsatrix) GetMaxCurrent() (float64, error)

GetMaxCurrent implements the api.CurrentGetter interface

func (*Pulsatrix) MaxCurrent

func (c *Pulsatrix) MaxCurrent(current int64) error

MaxCurrent implements the api.CurrentLimiter interface

func (*Pulsatrix) MaxCurrentMillis

func (c *Pulsatrix) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Pulsatrix) Phases1p3p

func (c *Pulsatrix) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*Pulsatrix) Status

func (c *Pulsatrix) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Pulsatrix) TotalEnergy

func (c *Pulsatrix) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Pulsatrix) Voltages

func (c *Pulsatrix) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Salia

type Salia struct {
	*request.Helper
	// contains filtered or unexported fields
}

Salia charger implementation

func (*Salia) Diagnose

func (wb *Salia) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Salia) Enable

func (wb *Salia) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Salia) Enabled

func (wb *Salia) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Salia) MaxCurrent

func (wb *Salia) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Salia) Status

func (wb *Salia) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Schneider

type Schneider struct {
	// contains filtered or unexported fields
}

Schneider charger implementation

func (*Schneider) ChargeDuration

func (wb *Schneider) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*Schneider) CurrentPower

func (wb *Schneider) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Schneider) Currents

func (wb *Schneider) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Schneider) Diagnose

func (wb *Schneider) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Schneider) Enable

func (wb *Schneider) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Schneider) Enabled

func (wb *Schneider) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Schneider) MaxCurrent

func (wb *Schneider) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Schneider) Status

func (wb *Schneider) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Schneider) TotalEnergy

func (wb *Schneider) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Schneider) Voltages

func (wb *Schneider) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Shelly

type Shelly struct {
	// contains filtered or unexported fields
}

Shelly charger implementation

func NewShelly

func NewShelly(embed embed, uri, user, password string, channel int, standbypower float64) (*Shelly, error)

NewShelly creates Shelly charger

func (Shelly) CurrentPower

func (c Shelly) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*Shelly) Enable

func (c *Shelly) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Shelly) Enabled

func (c *Shelly) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (Shelly) LoadpointControl

func (c Shelly) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (Shelly) MaxCurrent

func (c Shelly) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (Shelly) MaxCurrentMillis

func (c Shelly) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (Shelly) Phases

func (v Shelly) Phases() int

Phases implements the api.PhasesDescriber interface

func (Shelly) Status

func (c Shelly) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

func (*Shelly) TotalEnergy

func (c *Shelly) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Smaevcharger

type Smaevcharger struct {
	*request.Helper
	// contains filtered or unexported fields
}

smaevchager charger implementation

func (*Smaevcharger) ChargedEnergy

func (wb *Smaevcharger) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Smaevcharger) CurrentPower

func (wb *Smaevcharger) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Smaevcharger) Currents

func (wb *Smaevcharger) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Smaevcharger) Enable

func (wb *Smaevcharger) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Smaevcharger) Enabled

func (wb *Smaevcharger) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Smaevcharger) MaxCurrent

func (wb *Smaevcharger) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Smaevcharger) MaxCurrentMillis

func (wb *Smaevcharger) MaxCurrentMillis(current float64) error

maxCurrentMillis implements the api.ChargerEx interface

func (*Smaevcharger) Send

func (wb *Smaevcharger) Send(values ...smaevcharger.Value) error

func (*Smaevcharger) Status

func (wb *Smaevcharger) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Solax

type Solax struct {
	// contains filtered or unexported fields
}

Solax charger implementation

func (*Solax) CurrentPower

func (wb *Solax) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Solax) Currents

func (wb *Solax) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Solax) Enable

func (wb *Solax) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Solax) Enabled

func (wb *Solax) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Solax) MaxCurrent

func (wb *Solax) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Solax) MaxCurrentMillis

func (wb *Solax) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Solax) Status

func (wb *Solax) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Solax) TotalEnergy

func (wb *Solax) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Solax) Voltages

func (wb *Solax) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Sungrow

type Sungrow struct {
	// contains filtered or unexported fields
}

Sungrow charger implementation

func (*Sungrow) ChargedEnergy

func (wb *Sungrow) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.MeterEnergy interface

func (*Sungrow) CurrentPower

func (wb *Sungrow) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Sungrow) Currents

func (wb *Sungrow) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Sungrow) Diagnose

func (wb *Sungrow) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Sungrow) Enable

func (wb *Sungrow) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Sungrow) Enabled

func (wb *Sungrow) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Sungrow) GetPhases

func (wb *Sungrow) GetPhases() (int, error)

GetPhases implements the api.PhaseGetter interface

func (*Sungrow) MaxCurrent

func (wb *Sungrow) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Sungrow) MaxCurrentMillis

func (wb *Sungrow) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Sungrow) Phases1p3p

func (wb *Sungrow) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*Sungrow) Status

func (wb *Sungrow) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Sungrow) TotalEnergy

func (wb *Sungrow) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Sungrow) Voltages

func (wb *Sungrow) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type TPLink struct {
	// contains filtered or unexported fields
}

TPLink charger implementation

func NewTPLink(embed embed, uri string, standbypower float64) (*TPLink, error)

NewTPLink creates TP-Link charger

func (TPLink) CurrentPower

func (c TPLink) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*TPLink) Enable

func (c *TPLink) Enable(enable bool) error

Enable implements the api.Charger interface

func (*TPLink) Enabled

func (c *TPLink) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (TPLink) LoadpointControl

func (c TPLink) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (TPLink) MaxCurrent

func (c TPLink) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (TPLink) MaxCurrentMillis

func (c TPLink) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (TPLink) Phases

func (v TPLink) Phases() int

Phases implements the api.PhasesDescriber interface

func (TPLink) Status

func (c TPLink) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

func (*TPLink) TotalEnergy

func (c *TPLink) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Tapo

type Tapo struct {
	// contains filtered or unexported fields
}

TP-Link Tapo charger implementation

func NewTapo

func NewTapo(embed embed, uri, user, password string, standbypower float64) (*Tapo, error)

NewTapo creates Tapo charger

func (*Tapo) ChargedEnergy

func (c *Tapo) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (Tapo) CurrentPower

func (c Tapo) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*Tapo) Enable

func (c *Tapo) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Tapo) Enabled

func (c *Tapo) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (Tapo) LoadpointControl

func (c Tapo) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (Tapo) MaxCurrent

func (c Tapo) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (Tapo) MaxCurrentMillis

func (c Tapo) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (Tapo) Phases

func (v Tapo) Phases() int

Phases implements the api.PhasesDescriber interface

func (Tapo) Status

func (c Tapo) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

type Tasmota

type Tasmota struct {
	// contains filtered or unexported fields
}

Tasmota charger implementation

func (Tasmota) CurrentPower

func (c Tasmota) CurrentPower() (float64, error)

CurrentPower calculates a generic switches power

func (*Tasmota) Enable

func (c *Tasmota) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Tasmota) Enabled

func (c *Tasmota) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (Tasmota) LoadpointControl

func (c Tasmota) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (Tasmota) MaxCurrent

func (c Tasmota) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (Tasmota) MaxCurrentMillis

func (c Tasmota) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (Tasmota) Phases

func (v Tasmota) Phases() int

Phases implements the api.PhasesDescriber interface

func (Tasmota) Status

func (c Tasmota) Status() (api.ChargeStatus, error)

Status calculates a generic switches status

func (*Tasmota) TotalEnergy

func (c *Tasmota) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Twc3

type Twc3 struct {
	// contains filtered or unexported fields
}

Twc3 is an api.Vehicle implementation for Twc3 cars

func (*Twc3) ChargedEnergy

func (v *Twc3) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Twc3) CurrentPower

func (v *Twc3) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Twc3) Currents

func (v *Twc3) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Twc3) Enable

func (c *Twc3) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Twc3) Enabled

func (c *Twc3) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Twc3) GetMaxCurrent

func (c *Twc3) GetMaxCurrent() (float64, error)

GetMaxCurrent implements the api.CurrentGetter interface

func (*Twc3) LoadpointControl

func (v *Twc3) LoadpointControl(lp loadpoint.API)

LoadpointControl implements loadpoint.Controller

func (*Twc3) MaxCurrent

func (c *Twc3) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Twc3) Status

func (v *Twc3) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Twc3) Voltages

func (v *Twc3) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Versicharge

type Versicharge struct {
	// contains filtered or unexported fields
}

func NewVersicharge

func NewVersicharge(uri string, id uint8) (*Versicharge, error)

NewVersicharge creates a Versicharge charger

func (*Versicharge) CurrentPower

func (wb *Versicharge) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Versicharge) Currents

func (wb *Versicharge) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Versicharge) Diagnose

func (wb *Versicharge) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Versicharge) Enable

func (wb *Versicharge) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Versicharge) Enabled

func (wb *Versicharge) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Versicharge) MaxCurrent

func (wb *Versicharge) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Versicharge) Status

func (wb *Versicharge) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Versicharge) TotalEnergy

func (wb *Versicharge) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Versicharge) Voltages

func (wb *Versicharge) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Vestel

type Vestel struct {
	// contains filtered or unexported fields
}

Vestel is an api.Charger implementation for Vestel/Hymes wallboxes with Ethernet (SW modells). It uses Modbus TCP to communicate with the wallbox at modbus client id 255.

func NewVestel

func NewVestel(uri string, id uint8) (*Vestel, error)

NewVestel creates a Vestel charger

func (*Vestel) ChargeDuration

func (wb *Vestel) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*Vestel) ChargedEnergy

func (wb *Vestel) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Vestel) CurrentPower

func (wb *Vestel) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Vestel) Currents

func (wb *Vestel) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Vestel) Diagnose

func (wb *Vestel) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Vestel) Enable

func (wb *Vestel) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Vestel) Enabled

func (wb *Vestel) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Vestel) MaxCurrent

func (wb *Vestel) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Vestel) Status

func (wb *Vestel) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Vestel) TotalEnergy

func (wb *Vestel) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Vestel) Voltages

func (wb *Vestel) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Victron

type Victron struct {
	// contains filtered or unexported fields
}

Victron charger implementation

func (*Victron) ChargedEnergy

func (wb *Victron) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.MeterEnergy interface

func (*Victron) CurrentPower

func (wb *Victron) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Victron) Enable

func (wb *Victron) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Victron) Enabled

func (wb *Victron) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Victron) MaxCurrent

func (wb *Victron) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Victron) Status

func (wb *Victron) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Vitals

type Vitals struct {
	ContactorClosed   bool    `json:"contactor_closed"`    // false
	VehicleConnected  bool    `json:"vehicle_connected"`   // false
	SessionS          int64   `json:"session_s"`           // 0
	GridV             float64 `json:"grid_v"`              // 230.1
	GridHz            float64 `json:"grid_hz"`             // 49.928
	VehicleCurrentA   float64 `json:"vehicle_current_a"`   // 0.1
	CurrentAA         float64 `json:"currentA_a"`          // 0.0
	CurrentBA         float64 `json:"currentB_a"`          // 0.1
	CurrentCA         float64 `json:"currentC_a"`          // 0.0
	CurrentNA         float64 `json:"currentN_a"`          // 0.0
	VoltageAV         float64 `json:"voltageA_v"`          // 0.0
	VoltageBV         float64 `json:"voltageB_v"`          // 0.0
	VoltageCV         float64 `json:"voltageC_v"`          // 0.0
	RelayCoilV        float64 `json:"relay_coil_v"`        // 11.8
	PcbaTempC         float64 `json:"pcba_temp_c"`         // 19.2
	HandleTempC       float64 `json:"handle_temp_c"`       // 15.3
	McuTempC          float64 `json:"mcu_temp_c"`          // 25.1
	UptimeS           int     `json:"uptime_s"`            // 831580
	InputThermopileUv float64 `json:"input_thermopile_uv"` //-233
	ProxV             float64 `json:"prox_v"`              // 0.0
	PilotHighV        float64 `json:"pilot_high_v"`        // 11.9
	PilotLowV         float64 `json:"pilot_low_v"`         // 11.9
	SessionEnergyWh   float64 `json:"session_energy_wh"`   // 22864.699
	ConfigStatus      int     `json:"config_status"`       // 5
	EvseState         int     `json:"evse_state"`          // 1
	CurrentAlerts     []any   `json:"current_alerts"`      // []
}

Vitals is the /api/1/vitals response

type Wallbe

type Wallbe struct {
	// contains filtered or unexported fields
}

Wallbe is an api.Charger implementation for Wallbe wallboxes. It supports both wallbe controllers (post 2019 models) and older ones using the Phoenix EV-CC-AC1-M3-CBC-RCM-ETH controller. It uses Modbus TCP to communicate with the wallbox at modbus client id 255.

func NewWallbe

func NewWallbe(uri string) (*Wallbe, error)

NewWallbe creates a Wallbe charger

func (*Wallbe) Diagnose

func (wb *Wallbe) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*Wallbe) Enable

func (wb *Wallbe) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Wallbe) Enabled

func (wb *Wallbe) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Wallbe) MaxCurrent

func (wb *Wallbe) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Wallbe) Status

func (wb *Wallbe) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Warp2

type Warp2 struct {
	// contains filtered or unexported fields
}

Warp2 is the Warp charger v2 firmware implementation

func NewWarp2

func NewWarp2(mqttconf mqtt.Config, topic, emTopic string, timeout time.Duration) (*Warp2, error)

NewWarp2 creates a new configurable charger

func (*Warp2) Enable

func (wb *Warp2) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Warp2) Enabled

func (wb *Warp2) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Warp2) MaxCurrent

func (wb *Warp2) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Warp2) MaxCurrentMillis

func (wb *Warp2) MaxCurrentMillis(current float64) error

MaxCurrentMillis implements the api.ChargerEx interface

func (*Warp2) Status

func (wb *Warp2) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

type Wattpilot

type Wattpilot struct {
	// contains filtered or unexported fields
}

Wattpilot charger implementation

func (*Wattpilot) CurrentPower

func (c *Wattpilot) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Wattpilot) Currents

func (c *Wattpilot) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Wattpilot) Enable

func (c *Wattpilot) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Wattpilot) Enabled

func (c *Wattpilot) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Wattpilot) Identify

func (c *Wattpilot) Identify() (string, error)

Identify implements the api.Identifier interface

func (*Wattpilot) MaxCurrent

func (c *Wattpilot) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Wattpilot) Phases1p3p

func (c *Wattpilot) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*Wattpilot) Status

func (c *Wattpilot) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Wattpilot) Voltages

func (c *Wattpilot) Voltages() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

type WebastoNext

type WebastoNext struct {
	// contains filtered or unexported fields
}

WebastoNext charger implementation

func (*WebastoNext) ChargeDuration

func (wb *WebastoNext) ChargeDuration() (time.Duration, error)

ChargeDuration implements the api.ChargeTimer interface

func (*WebastoNext) CurrentPower

func (wb *WebastoNext) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*WebastoNext) Currents

func (wb *WebastoNext) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*WebastoNext) Diagnose

func (wb *WebastoNext) Diagnose()

Diagnose implements the api.Diagnosis interface

func (*WebastoNext) Enable

func (wb *WebastoNext) Enable(enable bool) error

Enable implements the api.Charger interface

func (*WebastoNext) Enabled

func (wb *WebastoNext) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*WebastoNext) Identify

func (wb *WebastoNext) Identify() (string, error)

Identify implements the api.Identifier interface

func (*WebastoNext) MaxCurrent

func (wb *WebastoNext) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*WebastoNext) Status

func (wb *WebastoNext) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*WebastoNext) TotalEnergy

func (wb *WebastoNext) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

type Weidmüller

type Weidmüller struct {
	// contains filtered or unexported fields
}

Weidmüller charger implementation

func (*Weidmüller) CurrentPower

func (wb *Weidmüller) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Weidmüller) Currents

func (wb *Weidmüller) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Weidmüller) Enable

func (wb *Weidmüller) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Weidmüller) Enabled

func (wb *Weidmüller) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Weidmüller) Identify

func (wb *Weidmüller) Identify() (string, error)

Identify implements the api.Identifier interface

func (*Weidmüller) MaxCurrent

func (wb *Weidmüller) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Weidmüller) Phases1p3p

func (wb *Weidmüller) Phases1p3p(phases int) error

Phases1p3p implements the api.PhaseSwitcher interface

func (*Weidmüller) Status

func (wb *Weidmüller) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

func (*Weidmüller) TotalEnergy

func (wb *Weidmüller) TotalEnergy() (float64, error)

TotalEnergy implements the api.MeterEnergy interface

func (*Weidmüller) Voltages

func (wb *Weidmüller) Voltages() (float64, float64, float64, error)

Voltages implements the api.PhaseVoltages interface

type Zaptec

type Zaptec struct {
	*request.Helper
	// contains filtered or unexported fields
}

Zaptec charger implementation

func (*Zaptec) ChargedEnergy

func (c *Zaptec) ChargedEnergy() (float64, error)

ChargedEnergy implements the api.ChargeRater interface

func (*Zaptec) CurrentPower

func (c *Zaptec) CurrentPower() (float64, error)

CurrentPower implements the api.Meter interface

func (*Zaptec) Currents

func (c *Zaptec) Currents() (float64, float64, float64, error)

Currents implements the api.PhaseCurrents interface

func (*Zaptec) Diagnose

func (c *Zaptec) Diagnose()

Diagnosis implements the api.ChargePhases interface

func (*Zaptec) Enable

func (c *Zaptec) Enable(enable bool) error

Enable implements the api.Charger interface

func (*Zaptec) Enabled

func (c *Zaptec) Enabled() (bool, error)

Enabled implements the api.Charger interface

func (*Zaptec) MaxCurrent

func (c *Zaptec) MaxCurrent(current int64) error

MaxCurrent implements the api.Charger interface

func (*Zaptec) Phases1p3p

func (c *Zaptec) Phases1p3p(phases int) error

Phases1p3p implements the api.ChargePhases interface

func (*Zaptec) Status

func (c *Zaptec) Status() (api.ChargeStatus, error)

Status implements the api.Charger interface

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL