Skip to content

Commit

Permalink
adjustments to latest App Version
Browse files Browse the repository at this point in the history
  • Loading branch information
marq24 committed Jun 9, 2024
1 parent c974a3d commit c64c473
Show file tree
Hide file tree
Showing 10 changed files with 166 additions and 11 deletions.
19 changes: 18 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,24 @@ Once the __car__ status will switch from `idle` (=1) to something different the

<a id="enableapiv2"></a>

## Enable HTTP API v2 in go-eCharger App
## Enable HTTP API v2 in go-eCharger App [v4.x]
[screenshots are from the Android version]

1. Start the go-eCharger App
2. Select '_Setting_' (lower main button bar)
3. Select '_Connection_' section as shown here:

'![step1](https://github.com/marq24/ha-goecharger-api2/raw/main/res/app003.png)

4. Select '_API Settings_' section as shown here:

'![step2](https://github.com/marq24/ha-goecharger-api2/raw/main/res/app004.png)
5. Toggle the '_Allow local HTTP API v2_' as shown here:

![step3](https://github.com/marq24/ha-goecharger-api2/raw/main/res/app005.png)


## Enable HTTP API v2 in go-eCharger App [v3.x]
[screenshots are from the Android version]

1. Start the go-eCharger App
Expand Down
100 changes: 100 additions & 0 deletions custom_components/goecharger_api2/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -535,6 +535,75 @@ class ExtSwitchEntityDescription(SwitchEntityDescription):
icon="mdi:timer-outline",
entity_registry_enabled_default=False
),

# random delays...
ExtNumberEntityDescription(
key=Tag.RDBS.key,
native_max_value=84000, # 24hr = 1400min = 84000 Sec
native_min_value=0,
native_step=1,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTime.SECONDS,
device_class=NumberDeviceClass.DURATION,
icon="mdi:timer-outline",
entity_registry_enabled_default=True
),
ExtNumberEntityDescription(
key=Tag.RDES.key,
native_max_value=84000, # 24hr = 1400min = 84000 Sec
native_min_value=0,
native_step=1,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTime.SECONDS,
device_class=NumberDeviceClass.DURATION,
icon="mdi:timer-outline",
entity_registry_enabled_default=True
),
ExtNumberEntityDescription(
key=Tag.RDBF.key,
native_max_value=84000, # 24hr = 1400min = 84000 Sec
native_min_value=0,
native_step=1,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTime.SECONDS,
device_class=NumberDeviceClass.DURATION,
icon="mdi:timer-outline",
entity_registry_enabled_default=True
),
ExtNumberEntityDescription(
key=Tag.RDEF.key,
native_max_value=84000, # 24hr = 1400min = 84000 Sec
native_min_value=0,
native_step=1,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTime.SECONDS,
device_class=NumberDeviceClass.DURATION,
icon="mdi:timer-outline",
entity_registry_enabled_default=True
),
ExtNumberEntityDescription(
key=Tag.RDRE.key,
native_max_value=84000, # 24hr = 1400min = 84000 Sec
native_min_value=0,
native_step=1,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTime.SECONDS,
device_class=NumberDeviceClass.DURATION,
icon="mdi:timer-outline",
entity_registry_enabled_default=True
),
ExtNumberEntityDescription(
key=Tag.RDPL.key,
native_max_value=84000, # 24hr = 1400min = 84000 Sec
native_min_value=0,
native_step=1,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTime.SECONDS,
device_class=NumberDeviceClass.DURATION,
icon="mdi:timer-outline",
entity_registry_enabled_default=False
),

# sh
ExtNumberEntityDescription(
key=Tag.SH.key,
Expand Down Expand Up @@ -1330,6 +1399,30 @@ class ExtSwitchEntityDescription(SwitchEntityDescription):
entity_registry_enabled_default=False
),

# lcs -> last controller scan
ExtSensorEntityDescription(
key=Tag.LCS.key,
differential_base_key=Tag.RBT.key,
factor=1000,
entity_category=EntityCategory.DIAGNOSTIC,
native_unit_of_measurement=UnitOfTime.SECONDS,
state_class=SensorStateClass.MEASUREMENT,
device_class=None,
icon="mdi:timer-outline",
entity_registry_enabled_default=True
),
# lcs -> last controller scan
ExtSensorEntityDescription(
key=Tag.LCS.key,
factor=1000,
entity_category=EntityCategory.DIAGNOSTIC,
native_unit_of_measurement=UnitOfTime.SECONDS,
state_class=SensorStateClass.MEASUREMENT,
device_class=None,
icon="mdi:timer-outline",
entity_registry_enabled_default=False
),


# So finally the normal sensor here...
# acu
Expand Down Expand Up @@ -1599,6 +1692,13 @@ class ExtSwitchEntityDescription(SwitchEntityDescription):
icon="mdi:cash",
entity_registry_enabled_default=True
),
ExtSwitchEntityDescription(
key=Tag.CMSE.key,
entity_category=EntityCategory.CONFIG,
device_class=None,
icon="mdi:home-search-outline",
entity_registry_enabled_default=True
),
ExtSwitchEntityDescription(
key=Tag.CWE.key,
entity_category=EntityCategory.CONFIG,
Expand Down
2 changes: 1 addition & 1 deletion custom_components/goecharger_api2/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@
"iot_class": "local_polling",
"issue_tracker": "https://github.com/marq24/ha-goecharger-api2/issues",
"requirements": [],
"version": "2024.6.1"
"version": "2024.6.2"
}
8 changes: 4 additions & 4 deletions custom_components/goecharger_api2/pygoecharger_ha/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@
FILTER_IDS_ADDON: Final = ",pakku,ppv,pgrid"

# rbt: is the reboot time - and "looks like", that all other timestamps use the rbt "as" start point
FILTER_TIMES_ADDON: Final = ",rbt,fsptws,inva,lbp,lccfc,lccfi,lcctc,lfspt,lmsc,lpsc"
FILTER_TIMES_ADDON: Final = ",rbt,fsptws,inva,lbp,lccfc,lccfi,lcctc,lfspt,lmsc,lpsc,lcs"

FILTER_ALL_STATES: Final = "acu,adi,amt,atp,awcp,car,cbl,ccu,ccw,cdi,cus,deltaa,deltap,err,eto,ffb,fhz,fsp,fsptws,inva,lbp,lccfc,lccfi,lcctc,lck,lfspt,lmsc,loa,lpsc,mcpea,mmp,modelStatus,nif,nrg,pakku,pgrid,pha,pnp,ppv,pvopt_averagePAkku,pvopt_averagePGrid,pvopt_averagePPv,pwm,rbc,rbt,rfb,rssi,rst,tlf,tls,tma,tpa,trx,wh,wsms,wst"
FILTER_ALL_CONFIG: Final = "acp,acs,ama,amp,ara,ate,att,awc,awe,awp,bac,cch,cco,cfi,cid,clp,cwc,cwe,dwo,esk,fmt,fna,frc,frm,fst,fup,fzf,hsa,lbr,lmo,loe,lof,log,lop,lot,loty,lse,map,mca,mci,mcpd,mptwt,mpwst,nmo,pgt,po,psh,psm,psmd,sch_satur,sch_sund,sch_week,sdp,sh,spl3,su,sua,sumd,tds,tof,upo,ust,zfo"
FILTER_ALL_CONFIG: Final = "acp,acs,ama,amp,ara,ate,att,awc,awe,awp,bac,cch,cco,cfi,cid,clp,cmse,cwc,cwe,dwo,esk,fmt,fna,frc,frm,fst,fup,fzf,hsa,lbr,lmo,loe,lof,log,lop,lot,loty,lse,map,mca,mci,mcpd,mptwt,mpwst,nmo,pgt,po,psh,psm,psmd,rdbf,rdbs,rdef,rdes,rdre,rdpl,sch_satur,sch_sund,sch_week,sdp,sh,spl3,su,sua,sumd,tds,tof,upo,ust,zfo"

FILTER_NOT_USED: Final = "mcc,mcca,mce,mcr,mcs,mcu,men,mlr,mlra,mqcn,mqg,mqss,msb,msp,msr,mtp,ocppai,ocppi"
FILTER_NOT_USED: Final = "mcc,mcca,mce,mcr,mcs,mcu,men,mlr,mlra,mqcn,mqg,mqss,msb,msp,msr,mtp,ocppai,ocppi,rdbfe,rdbse,rdefe,rdese,rdree,rdple"

# found api-keys that are not documented (yet) ?!
FILTER_UNKNOWN_COMON: Final = "aus,ccd,cle,clea,cll,cmmr,cmp,cms,cmse,csa,ct,ctrls,data,di1,die,dii,dll,hai,hla,isgo,la1,la3,lbl,lcs,lopr,lrc,lri,lrr,lwf,ocppao,ocppcm,ocppcs,ocppf,ocppla,ocpplo,ocppti,pdi,pgr,rdbf,rdbfe,rdbs,rdbse,rde,rdef,rdefe,rdes,rdese,rdpl,rdple,rdre,rdree,smd,tcl,tsi,tzt,ufa,ufe,ufm,ufs,wbw,wda,wsl"
FILTER_UNKNOWN_COMON: Final = "aus,ccd,cle,clea,cll,cmmr,cmp,cms,csa,ct,ctrls,data,di1,die,dii,dll,hai,hla,isgo,la1,la3,lbl,lopr,lrc,lri,lrr,lwf,ocppao,ocppcm,ocppcs,ocppf,ocppla,ocpplo,ocppti,pdi,pgr,rde,smd,tcl,tsi,tzt,ufa,ufe,ufm,ufs,wbw,wda,wsl"
FILTER_UNKNOWN_FW56_2_BETA: Final = "bar,gmtr,gsa,mhe,mht,pco,rmaf,rmav,rmif,rmiv,rsa,rsre,rsrr"
FILTER_UNKNOWN_FW56_1: Final = "avgfhz,simo"

Expand Down
20 changes: 20 additions & 0 deletions custom_components/goecharger_api2/pygoecharger_ha/keys.py
Original file line number Diff line number Diff line change
Expand Up @@ -383,6 +383,26 @@ def __str__(self):
CAR_CONNECTED = ApiKey(key="car", cat=CAT.STATUS)
INTERNAL_FORCE_CONFIG_READ = ApiKey(key="zfocore", cat=CAT.CONFIG)

# NOT-DOCUMENTED
# -> goe-Controller-Scan immer aktiviert
CMSE = ApiKey(key="cmse", cat=CAT.CONFIG)
# -> goe-Controller-Scan last scan time
LCS = ApiKey(key="lcs", cat=CAT.CONFIG)

#"rdbs": 1, Random Start LoadTimer
RDBS = ApiKey(key="rdbs", cat=CAT.CONFIG)
#"rdes": 2, Random End LoadTimer
RDES = ApiKey(key="rdes", cat=CAT.CONFIG)
#"rdbf": 3, Flex Start
RDBF = ApiKey(key="rdbf", cat=CAT.CONFIG)
#"rdef": 4, Flex End
RDEF = ApiKey(key="rdef", cat=CAT.CONFIG)
#"rdre": 5, after power off
RDRE = ApiKey(key="rdre", cat=CAT.CONFIG)
#"rdpl": 0, ????
RDPL = ApiKey(key="rdpl", cat=CAT.CONFIG)


#########################
# NOT USED FROM HERE ON #
#########################
Expand Down
15 changes: 12 additions & 3 deletions custom_components/goecharger_api2/translations/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,12 @@
"po": {"name": "Priorität Offset"},
"psh": {"name": "Nachwirkung Phasenwechsel"},
"psmd": {"name": "Dauer 'Wechsel von/zu '1-phasigem Laden'"},
"rdbs": {"name": "Zufällige max. Verzögerung: Ladetimer Start"},
"rdes": {"name": "Zufällige max. Verzögerung: Ende des Ladetimers"},
"rdbf": {"name": "Zufällige max. Verzögerung: Flexibler Tarif Begin"},
"rdef": {"name": "Zufällige max. Verzögerung: Flexibler Tarif Ende"},
"rdre": {"name": "Zufällige max. Verzögerung: Nach Stromausfall"},
"rdpl": {"name": "Zufällige max. Verzögerung: Unbekannt"},
"sh": {"name": "Nachwirkung Stopp"},
"spl3": {"name": "Wechsel zu 3-phasigem Laden bei"},
"sumd": {"name": "Simuliertes-Ausstecken 'Dauer'"},
Expand All @@ -109,7 +115,7 @@
}
},
"sdp": {
"name": "Wallbox Schalter: Spannungsänderung zulassen",
"name": "Wallbox Schalter: Ladevorgang starten (zweimal drücken)",
"state": {
"0": "Immer gesperrt",
"1": "Gesperrt wenn Fahrzeug verbunden",
Expand Down Expand Up @@ -176,8 +182,8 @@
"ust": {
"name": "Kable Entriegelung",
"state": {
"0": "Normal",
"1": "Auto Entriegelung",
"0": "Standardmodus",
"1": "Automatisch entriegeln",
"2": "Immer verriegelt",
"3": "Entriegelung erzwingen"
}
Expand Down Expand Up @@ -241,6 +247,7 @@
"lfspt": {"name": "Letzter Wechsel von/zu '1-phasigem Laden' [ORIG.]"},
"lpsc": {"name": "Letzte PV-Überschuss Berechnung [ORIG.]"},
"lmsc": {"name": "Letzter Statuswechsel [ORIG.]"},
"lcs": {"name": "Letzter Controller-Scan [ORIG.]"},

"fsptws_delta": {"name": "Wechsel von/zu '1-phasigem Laden angefordert seit"},
"inva_delta": {"name": "Inverter-Daten 'Alter'"},
Expand All @@ -251,6 +258,7 @@
"lfspt_delta": {"name": "Letzter Wechsel von/zu '1-phasigem Laden'"},
"lpsc_delta": {"name": "Letzte PV-Überschuss Berechnung"},
"lmsc_delta": {"name": "Letzter Statuswechsel"},
"lcs_delta": {"name": "Letzter Controller-Scan"},

"acu": {"name": "Maximal zulässiger Strom"},
"amt": {"name": "Aktuelles Temperaturlimit"},
Expand Down Expand Up @@ -284,6 +292,7 @@
"acs": {"name": "Autorisierung (Karte) notwendig"},
"ara": {"name": "Next-Trip: Weiter im Eco-Modus laden"},
"awe": {"name": "Mit günstigen Strompreisen laden"},
"cmse": {"name": "Controller-Scan immer aktiviert"},
"cwe": {"name": "Cloud-Websocket aktiviert"},
"esk": {"name": "Lademenge (nur für App) setzen"},
"fup": {"name": "Mit PV-Überschuss laden"},
Expand Down
13 changes: 11 additions & 2 deletions custom_components/goecharger_api2/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,12 @@
"po": {"name": "Priority Offset"},
"psh": {"name": "Phase switch hysteresis"},
"psmd": {"name": "Force single phase duration"},
"rdbs": {"name": "Random max. delay: Scheduler start"},
"rdes": {"name": "Random max. delay: Scheduler end"},
"rdbf": {"name": "Random max. delay: Flexible Tariff start"},
"rdef": {"name": "Random max. delay: Flexible Tariff stop"},
"rdre": {"name": "Random max. delay: after power outage"},
"rdpl": {"name": "Random max. delay: Unknown"},
"sh": {"name": "Stop hysteresis"},
"spl3": {"name": "Three phase switch level"},
"sumd": {"name": "Simulate unplugging duration"},
Expand All @@ -109,7 +115,7 @@
}
},
"sdp": {
"name": "Button: Allow Force change",
"name": "Button: Allow Start charging (double press)",
"state": {
"0": "Always locked",
"1": "Locked when car is connected",
Expand Down Expand Up @@ -176,7 +182,7 @@
"ust": {
"name": "Cable unlock Mode",
"state": {
"0": "Normal",
"0": "Standard mode",
"1": "Auto unlock",
"2": "Always locked",
"3": "Force unlock"
Expand Down Expand Up @@ -241,6 +247,7 @@
"lfspt": {"name": "last force single phase toggle [RAW]"},
"lpsc": {"name": "last pv surplus calculation [RAW]"},
"lmsc": {"name": "last Status change [RAW]"},
"lcs": {"name": "last Controller scan [RAW]"},

"fsptws_delta": {"name": "force single phase toggle wished since"},
"inva_delta": {"name": "age of inverter data"},
Expand All @@ -251,6 +258,7 @@
"lfspt_delta": {"name": "last force single phase toggle"},
"lpsc_delta": {"name": "last pv surplus calculation"},
"lmsc_delta": {"name": "last Status change"},
"lcs_delta": {"name": "last Controller scan"},

"acu": {"name": "Maximum allowed current"},
"amt": {"name": "Current temperature limit"},
Expand Down Expand Up @@ -284,6 +292,7 @@
"acs": {"name": "Card Authorization required"},
"ara": {"name": "Automatic Stop remain in Awattar"},
"awe": {"name": "Use Awattar (Charge when price is low)"},
"cmse": {"name": "Controller-Scan always active"},
"cwe": {"name": "Cloud Websocket enabled"},
"esk": {"name": "Energy set kWh (only stored for app)"},
"fup": {"name": "Use PV surplus"},
Expand Down
Binary file added res/app003.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/app004.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/app005.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit c64c473

Please sign in to comment.