mirror of
https://github.com/vikt0rm/dbus-goecharger.git
synced 2025-08-01 03:04:27 +02:00
Add conditions to support older hw versions
This commit is contained in:
@@ -32,9 +32,6 @@ class DbusGoeChargerService:
|
||||
if pauseBetweenRequests <= 20:
|
||||
raise ValueError("Pause between requests must be greater than 20")
|
||||
|
||||
if hardwareVersion < 4:
|
||||
raise ValueError("Minimum hardware version required is 4.")
|
||||
|
||||
self._dbusservice = VeDbusService("{}.http_{:02d}".format(servicename, deviceinstance), register=False)
|
||||
self._paths = paths
|
||||
|
||||
@@ -118,7 +115,7 @@ class DbusGoeChargerService:
|
||||
if accessType == 'OnPremise':
|
||||
URL = "http://%s/api/status" % (config['ONPREMISE']['Host'])
|
||||
else:
|
||||
raise ValueError("AccessType %s is not supported" % (config['DEFAULT']['AccessType']))
|
||||
raise ValueError("AccessType %s is not supported" % (config['DEFAULT']['AccessType']))
|
||||
|
||||
return URL
|
||||
|
||||
@@ -212,16 +209,21 @@ class DbusGoeChargerService:
|
||||
hardwareVersion = int(config['DEFAULT']['HardwareVersion'])
|
||||
|
||||
#send data to DBus
|
||||
self._dbusservice['/Ac/L1/Power'] = int(data['nrg'][7] * 0.1 * 1000)
|
||||
self._dbusservice['/Ac/L2/Power'] = int(data['nrg'][8] * 0.1 * 1000)
|
||||
self._dbusservice['/Ac/L3/Power'] = int(data['nrg'][9] * 0.1 * 1000)
|
||||
self._dbusservice['/Ac/Power'] = int(data['nrg'][11] * 0.01 * 1000)
|
||||
self._dbusservice['/Ac/Voltage'] = int(data['nrg'][0])
|
||||
self._dbusservice['/Current'] = max(data['nrg'][4] * 0.1, data['nrg'][5] * 0.1, data['nrg'][6] * 0.1)
|
||||
if hardwareVersion < 4
|
||||
self._dbusservice['/Ac/L1/Power'] = int(data['nrg'][7])
|
||||
self._dbusservice['/Ac/L2/Power'] = int(data['nrg'][8])
|
||||
self._dbusservice['/Ac/L3/Power'] = int(data['nrg'][9])
|
||||
self._dbusservice['/Ac/Power'] = int(data['nrg'][11])
|
||||
self._dbusservice['/Ac/Energy/Forward'] = int(float(data['eto']) / 1000.0)
|
||||
self._dbusservice['/Current'] = max(data['nrg'][4], data['nrg'][5], data['nrg'][6])
|
||||
else
|
||||
self._dbusservice['/Ac/Energy/Forward'] = round(data['wh'] / 1000, 2)
|
||||
self._dbusservice['/Ac/L1/Power'] = int(data['nrg'][7] * 0.1 * 1000)
|
||||
self._dbusservice['/Ac/L2/Power'] = int(data['nrg'][8] * 0.1 * 1000)
|
||||
self._dbusservice['/Ac/L3/Power'] = int(data['nrg'][9] * 0.1 * 1000)
|
||||
self._dbusservice['/Ac/Power'] = int(data['nrg'][11] * 0.01 * 1000)
|
||||
self._dbusservice['/Ac/Energy/Forward'] = round(data['wh'] / 1000, 2)
|
||||
self._dbusservice['/Current'] = max(data['nrg'][4] * 0.1, data['nrg'][5] * 0.1, data['nrg'][6] * 0.1)
|
||||
|
||||
self._dbusservice['/StartStop'] = int(data['alw'])
|
||||
self._dbusservice['/SetCurrent'] = int(data['amp'])
|
||||
@@ -242,7 +244,6 @@ class DbusGoeChargerService:
|
||||
else:
|
||||
self._dbusservice['/MCU/Temperature'] = int(data['tmp'])
|
||||
|
||||
|
||||
# carState, null if internal error (Unknown/Error=0, Idle=1, Charging=2, WaitCar=3, Complete=4, Error=5)
|
||||
# status 0=Disconnected; 1=Connected; 2=Charging; 3=Charged; 4=Waiting for sun; 5=Waiting for RFID; 6=Waiting for start; 7=Low SOC; 8=Ground fault; 9=Welded contacts; 10=CP Input shorted; 11=Residual current detected; 12=Under voltage detected; 13=Overvoltage detected; 14=Overheating detected
|
||||
status = 0
|
||||
|
Reference in New Issue
Block a user