Giter Club home page Giter Club logo

homeassistant-goecharger-mqtt's Introduction

homeassistant-goecharger-mqtt

GitHub actions GitHub actions GitHub actions GitHub stars GitHub forks GitHub watchers "Buy Me A Coffee"

This is a custom component for Home Assistant to integrate the go-eCharger HOME+ and HOMEfix using the MQTT API (v2).

Lovelace entities card

Installation

Use HACS to install this custom component.

Configuration

Use the Web UI (Config flow) to add the "go-eCharger" integration. You have to know the serial number (6 digits) of your device. Please don't forget to enable the MQTT API (v2) via the go-e Charger app first.

Entities

Binary sensors

Topic Friendly name Category Enabled per default Supported Unsupported reason
car Car connected diagnostic ✔️ ✔️
pha Phase L1 after contactor diagnostic ✔️
pha Phase L2 after contactor diagnostic ✔️
pha Phase L3 after contactor diagnostic ✔️
pha Phase L1 before contactor diagnostic ✔️
pha Phase L2 before contactor diagnostic ✔️
pha Phase L3 before contactor diagnostic ✔️
cca Cloud websocket use client auth config 1
ocuca OTA cloud use client auth config 1
sbe Secure boot enabled 1
adi 16A adapter attached diagnostic ✔️ ✔️
cpe Charge control requests the cp signal enabled or not immediately diagnostic 1
cpr CP enable request diagnostic 1
cws Cloud websocket started diagnostic 1
cwsc Cloud websocket connected diagnostic 1
fsp Force single phase diagnostic ✔️ ✔️ Is always false. Please use psm instead
lwcf Last failed WiFi connect diagnostic 1
tlf Test charging finished diagnostic 1
tls Test charging started diagnostic 1
sua Simulate unplugging permanently config 1

Buttons

Topic Friendly name Category Enabled per default Supported Unsupported reason
rst Restart device config ✔️ ✔️
frc Force state neutral config ✔️
frc Force state dont charge config ✔️
frc Force state charge config ✔️

Sensors

Key Friendly name Category Unit Enabled per default Supported Unsupported reason
+/result Last set config key result config ✔️ ✔️
ama Maximum current limit config A ✔️ ✔️
ate Automatic stop energy config Wh ✔️ ✔️
att Automatic stop time config s ✔️ ✔️
awc Awattar country config 1
awp Awattar maximum price threshold config ¢ ✔️
cch Color charging config ✔️
cco Car consumption config App only
cfi Color finished config ✔️
cid Color idle config ✔️
clp Current limit presets config A ✔️
ct Car type config App only
cwc Color wait for car config ✔️
fna Friendly name config 1
frc Force state config ✔️ ✔️
frc Force state code config ✔️
lbr LED brightness config ✔️
lmo Logic mode config ✔️ ✔️
lof Load balancing fallback current config A 1
log Load balancing group id config 1
lop Load balancing priority config 1
lot Load balancing total ampere config A 1
loty Load balancing type config 1
map Load mapping config 1
mca Minimum charging current config A ✔️ ✔️
mci Minimum charging interval config ms 1
mcpd Minimum charge pause duration config ms 1
mptwt Minimum phase toggle wait time config ms 1
mpwst Minimum phase wish switch time config ms 1
pass User password config 1
psmd Force single phase duration config ms 1
sch_satur Scheduler saturday config 1
sch_sund Scheduler sunday config 1
sch_week Scheduler weekday config 1
spl3 Three phase switch level config W ✔️ ✔️
sumd Simulate unplugging duration config ms 1
tds Timezone daylight saving mode config 1
tof Timezone offset in minutes config 1
ts Time server config 1
tssi Time server sync interval config 1
tssm Time server sync mode config 1
tsss Time server sync status config 1
ust Cable unlock mode config ✔️ ✔️
ust Cable unlock mode code config ✔️
wak WiFi accesspoint encryption key config 1
wan WiFi accesspoint network name config 1
wifis WiFi configurations config 1
apd Firmware description 1
arv App recommended version 1
ecf ESP CPU frequency 1
eci ESP Chip info 1
eem ESP CPU frequency 1
efi ESP Flash info 1
facwak WiFi accesspoint key reset value 1
fem Flash encryption mode 1
ffna Factory friendly name 1
fwan Factory WiFi accesspoint network name 1
fwc Firmware from car control 1
fwv Firmware version ✔️
mod Hardware version 1
oem Manufacturer 1
otap Active OTA partition 1
part Partition table 1
pto Partition table offset in flash 1
sse Serial number 1
typ Device type 1
var Device variant kW ✔️
del Delete card config 1
delw Delete STA config config 1
lrn Learn card config 1
oct Firmware update trigger config 1
acu Maximum allowed current diagnostic A ✔️ ✔️
amt Current temperature limit diagnostic °C ✔️ ✔️
atp Next trip plan data diagnostic 1
awcp Awattar current price diagnostic ¢ ✔️
awpl Awattar price list diagnostic 1
car Car state diagnostic ✔️ ✔️
cbl Cable maximum current diagnostic A ✔️
ccu Charge controller update progress diagnostic 1
ccw Connected WiFi diagnostic JSON decoding required. Values non-essential
cdi Charging duration diagnostic ms ✔️ ✔️
cdi Charging duration counter diagnostic ✔️
cus Cable unlock status code diagnostic ✔️
cus Cable unlock status diagnostic ✔️ ✔️
cwsca Cloud websocket connected diagnostic ms 1
efh ESP free heap diagnostic 1
efh32 ESP free heap 32bit aligned diagnostic 1
efh8 ESP free heap 8bit aligned diagnostic 1
ehs ESP heap size diagnostic 1
emfh ESP minimum free heap since boot diagnostic 1
emhb ESP maximum size of allocated heap block since boot diagnostic 1
err Error diagnostic ✔️ ✔️
err Error code diagnostic ✔️
esr RTC reset reason diagnostic 1
eto Total energy diagnostic Wh ✔️ ✔️
etop Total energy persisted diagnostic Wh 1
ffb Lock feedback diagnostic 1
ffba Lock feedback age diagnostic ms 1
fhz Grid frequency diagnostic Hz ✔️
fsptws Force single phase toggle wished since diagnostic ms 1
host Hostname on STA interface diagnostic 1
lbp Last button press diagnostic ✔️
lccfc Last car state changed from charging diagnostic ms ✔️ ✔️
lccfi Last car state changed from idle diagnostic ms ✔️ ✔️
lcctc Last car state changed to charging diagnostic ms ✔️ ✔️
lck Effective lock setting diagnostic 1
led LED animation details diagnostic 1
lfspt Last force single phase toggle diagnostic ms 1
lmsc Last model status change diagnostic ms ✔️
loa Load balancing available current diagnostic A ✔️ ✔️
loc Local time diagnostic Valueless with a high update interval of 1s
lom Load balancing members diagnostic 1
los Load balancing status diagnostic 1
lssfc WiFi station disconnected since diagnostic 1
lsstc WiFi station connected since diagnostic 1
mcpea Minimum charge pause ends at diagnostic ms 1
mmp Maximum measured charging power diagnostic W 1
modelStatus Status diagnostic ✔️ ✔️
modelStatus Status code diagnostic ✔️
msi Reason why we allow charging or not diagnostic 1
nrg Voltage L1 diagnostic V ✔️ ✔️
nrg Voltage L2 diagnostic V ✔️ ✔️
nrg Voltage L3 diagnostic V ✔️ ✔️
nrg Voltage N diagnostic V ✔️ ✔️
nrg Current L1 diagnostic A ✔️ ✔️
nrg Current L2 diagnostic A ✔️ ✔️
nrg Current L3 diagnostic A ✔️ ✔️
nrg Power L1 diagnostic W ✔️ ✔️
nrg Power L2 diagnostic W ✔️ ✔️
nrg Power L3 diagnostic W ✔️ ✔️
nrg Power N diagnostic W ✔️ ✔️
nrg Current power diagnostic W ✔️ ✔️
nrg Power factor L1 diagnostic % ✔️ ✔️
nrg Power factor L2 diagnostic % ✔️ ✔️
nrg Power factor L3 diagnostic % ✔️ ✔️
nrg Power factor N diagnostic % ✔️ ✔️
oca OTA cloud app description diagnostic 1
ocl OTA from cloud length diagnostic 1
ocm OTA from cloud message diagnostic 1
ocp OTA from cloud progress diagnostic 1
ocs OTA from cloud status diagnostic 1
ocu List of available firmware versions diagnostic ✔️
onv Newest OTA version diagnostic 1
pwm Phase wish mode for debugging diagnostic 1
pgrid Power from Grid ✔️ ✔️
ppv Power from Solar Panels ✔️ ✔️
pakku Power from External Battery ✔️ ✔️
qsc Queue size cloud diagnostic 1
qsw Queue size web diagnostic 1
rbc Reboot counter diagnostic ✔️ ✔️
rbt Uptime diagnostic TODO: Convert to a timestamp first
rcd Residual current detection diagnostic 1
rfb Relay feedback diagnostic 1
rr ESP reset reason diagnostic 1
rssi WiFi signal strength diagnostic dBm ✔️
scaa WiFi scan age diagnostic 1
scan WiFi scan result diagnostic 1
scas WiFi scan status diagnostic 1
tma Temperature sensor 1 diagnostic °C ✔️ ✔️
tma Temperature sensor 2 diagnostic °C ✔️ ✔️
tpa Total power average diagnostic W ✔️ ✔️
trx Transaction diagnostic ✔️ ✔️
tsom Time server operating mode diagnostic 1
utc UTC time diagnostic Valueless with a high update interval of 1s
wcch Clients via http diagnostic 1
wccw Clients via websocket diagnostic 1
wh Charged energy diagnostic Wh ✔️ ✔️
wsms WiFi state machine state diagnostic 1
wst WiFi station status diagnostic 1
psm Configured phases config ✔️ ✔️
cards Charged energy card 1 diagnostic Wh ✔️ ✔️
cards Charged energy card 2 diagnostic Wh ✔️
cards Charged energy card 3 diagnostic Wh ✔️
cards Charged energy card 4 diagnostic Wh ✔️
cards Charged energy card 5 diagnostic Wh ✔️
cards Charged energy card 6 diagnostic Wh ✔️
cards Charged energy card 7 diagnostic Wh ✔️
cards Charged energy card 8 diagnostic Wh ✔️
cards Charged energy card 9 diagnostic Wh ✔️
cards Charged energy card 10 diagnostic Wh ✔️

Switch entities

Key Friendly name Category Enabled per default Supported Unsupported reason
bac Allow current change by button config ✔️ ✔️
ara Automatic stop mode config ✔️ ✔️
wen WiFi enabled config 1
tse Time server enabled config 1
sdp Button allow force change config 1
nmo Norway mode config 1
lse LED off on standby config 1
awe Awattar mode config ✔️ ✔️
acp Allow charge pause config ✔️ 1
esk Energy set config App only
fup Charge with PV surplus config ✔️ ✔️
su Simulate unplugging config 1
hws HTTP STA reachable config 1
hsa HTTP STA authentication config 1
loe Load balancing enabled config 1
upo Unlock power outage config 1
cwe Cloud websocket enabled config 1
psm Force single phase diagnostic ✔️ ✔️
acs Card authorization required config ✔️ ✔️

Number entities

Key Friendly name Category Enabled per default Supported Unsupported reason
ama Maximum current limit config ✔️ ✔️
amp Requested current config ✔️ ✔️
ate Automatic stop energy config ✔️ ✔️
att Automatic stop time config ✔️ ✔️
awp Awattar maximum price threshold config ✔️ ✔️
dwo Charging energy limit config ✔️ ✔️
lop Load balancing priority config 1

Select entities

Key Friendly name Category Enabled per default Supported Unsupported reason
lmo Logic mode config ✔️ ✔️
ust Cable unlock mode config ✔️ ✔️
frc Force state config ✔️ ✔️
trx Transaction config ✔️ ✔️

Charge with PV Surplus

Setable only PV-surplus entities

This feature requires firmware 0.55.6 or newer.

Key Friendly name Category Enabled per default Supported Unsupported reason
ids Input avail Power config ✔️

ids is used to input values to the ECO PV-surplus charging mode. (PV = Photo Voltaic aka Solar Panels)

ids is set with a JSON list: {"pGrid":0.0,"pAkku":0.0,"pPv":0.0} - If values are accepted they can be read back thru the pgrid, pakku and ppv sensors. pGrid is required. The others are optional.

ids values decays, so must be updated every 10s or faster. No update for 10-15s means no PV-surplus is available. pgrid/pakku/ppv will thus all become unknown.

Only pGrid is used in calculations. Negative pGrid means power is exported, and thus available to the charger. Charger is then constantly calculating available power and adjusting charge power up and down multiple times per minute (on every update). If 1/3 phase is set to automatic, it will switch between 1 and 3 phases. The 1->3 phase switch level is set in spl3

By feeding ids values, ECO charging can be controlled (on/off) in the go-eCharger App. It is safe and expected to set this value often.

For PV surplus charging to be enabled, lmo (Logic mode) most be set to 4 (Eco mode), and fup (Use PV surplus) must be set to true.

See template example below for how to continuously update ids

Automation example

alias: go-e Surplus Charging
description: "Simple automation to update values needed for using solar surplus with go-e Chargers"
trigger:
  - platform: time_pattern
    seconds: /5
condition: []
action:
  - service: mqtt.publish
    data:
      qos: "0"
      # Change to your charger ID here
      topic: go-eCharger/999999/ids/set
      # Please provide your own entities here, as described above
      payload: {{'{"pGrid": '}}{{states('sensor.meter_active_power_raw')}}{{', "pPv":'}}{{states('sensor.total_dc_power')}}{{', "pAkku":0}'}}
      retain: false

Platform services

Service goecharger_mqtt.set_config_key

Sets a config key to a value.

Service data attribute Optional Description
serial_number no The serial number of the go-e device
key no The key of the config parameter you want to change
value no The new value

Tips and tricks

How to suspend the access point of the go-e charger

Per default the WiFi network of the charger is always active even if the device is connected as station to your WiFi network. If cloud access is enabled the API key wda can be used to suspend the access point as soon as the connection to the cloud is established:

# Suspend access point mode on cloud connection
curl -s "http://192.168.xx.xx/api/set?wda=true"

# Pretty print the full status
curl -s "http://192.168.xx.xx/api/status" | json_pp

# Check the value of the `wda` key
curl -s "http://192.168.1.11/api/status" | jq '.wda'

The wda key can be changed via the HTTP-API v2 only. The device doesn't accept the setting via MQTT. For more details please see goecharger/go-eCharger-API-v2#35.

References

Footnotes

  1. Not exposed via MQTT in firmware 053.1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119

homeassistant-goecharger-mqtt's People

Contributors

eicosan avatar embeddedfiedel avatar ju55i avatar ohnenik avatar povlhp avatar syssi avatar triple-s avatar woopstar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

homeassistant-goecharger-mqtt's Issues

Please make acs writable

Hi,

to optimize my PV - charging control, I need a way, to disallow automatic charge start, when plugging in the charging plug.

Maybe you can make this key writable?

acs R/W uint8 Config access_control user setting (Open=0, Wait=1)

Thanks a lot.

Provide a generic command service

$ mosquitto_sub -t '/go-eCharger/#' -v | grep fna
/go-eCharger/072246/fna/set go
/go-eCharger/072246/fna/result invalid json InvalidInput: go
/go-eCharger/072246/fna/set "go"
/go-eCharger/072246/fna/result String length  2 exceeds range 4 to 64 "go"
go-eCharger/072246/fna/set "gogogo"
/go-eCharger/072246/fna/result success

Setup failing due to AssertionError

Thanks for the integration. I’m unfortunately not getting any data out of the box. I'm seeing this in the logs:

Logger: homeassistant
Source: components/mqtt/client.py:214
First occurred: 3:23:25 PM (3 occurrences)
Last logged: 3:29:27 PM

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/util/logging.py", line 151, in async_wrapper
    await async_func(*args)
  File "/usr/src/homeassistant/homeassistant/components/mqtt/discovery.py", line 282, in async_integration_message_received
    result = await hass.config_entries.flow.async_init(
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 225, in async_init
    flow, result = await task
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 252, in _async_init
    result = await self._async_handle_step(flow, flow.init_step, data, init_done)
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 367, in _async_handle_step
    result: FlowResult = await getattr(flow, method)(user_input)
  File "/config/custom_components/goecharger_mqtt/config_flow.py", line 79, in async_step_mqtt
    assert subscribed_topic == "/go-eCharger/+/var"
AssertionError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/util/logging.py", line 153, in async_wrapper
    log_exception(format_err, *args)
  File "/usr/src/homeassistant/homeassistant/util/logging.py", line 115, in log_exception
    friendly_msg = format_err(*args)
  File "/usr/src/homeassistant/homeassistant/components/mqtt/client.py", line 214, in <lambda>
    f"Exception in {msg_callback.__name__} when handling msg on "
AttributeError: 'functools.partial' object has no attribute '__name__'

This assert seems to be blowing up async_step_mqtt

assert subscribed_topic == "/go-eCharger/+/var"

At the very least, the config process should probably be aborted with self.async_abort there so that there is feedback to the user.

Also, that assert is a bit odd given that there are two topic names listed in the manifest.json

  "mqtt": [
    "/go-eCharger/+/var",
    "go-eCharger/+/var"
  ],

I did get it working with this quick hack:

  1. Comment out
assert subscribed_topic == "/go-eCharger/+/var"
  1. Change base topic from /go-eCharger to go-eCharger during setup

Detected integration that called async_setup_platforms instead of awaiting async_forward_entry_setups // wrong state_class

Since updating HA to 2023.3 the log states the following:

2023-02-05 10:51:12.959 WARNING (MainThread) [homeassistant.helpers.frame] Detected integration that called async_setup_platforms instead of awaiting async_forward_entry_setups; this will fail in version 2023.3. Please report issue to the custom integration author for goecharger_mqtt using this method at custom_components/goecharger_mqtt/__init__.py, line 44: hass.config_entries.async_setup_platforms(entry, PLATFORMS)
2023-02-05 10:51:14.768 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.go_echarger_090851_ate (<class 'custom_components.goecharger_mqtt.sensor.GoEChargerSensor'>) is using state class 'measurement' which is impossible considering device class ('energy') it is using; expected None or one of 'total', 'total_increasing'; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.
2023-02-05 10:51:15.479 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.go_echarger_090851_dwo (<class 'custom_components.goecharger_mqtt.sensor.GoEChargerSensor'>) is using state class 'measurement' which is impossible considering device class ('energy') it is using; expected None or one of 'total', 'total_increasing'; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.
2023-02-05 10:51:15.483 WARNING (MainThread) [homeassistant.components.sensor] Sensor sensor.go_echarger_090851_dwo has device class energy, state class measurement and unit Wh thus indicating it has a numeric value; however, it has the non-numeric value: unknown (<class 'str'>); Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.
2023-02-05 10:51:16.029 WARNING (MainThread) [homeassistant.components.sensor] Sensor sensor.go_echarger_090851_loa has device class current, state class measurement and unit A thus indicating it has a numeric value; however, it has the non-numeric value: unknown (<class 'str'>); Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.
2023-02-05 10:51:16.296 WARNING (MainThread) [homeassistant.components.sensor] Sensor sensor.go_echarger_090851_trx has device class None, state class measurement and unit None thus indicating it has a numeric value; however, it has the non-numeric value: unknown (<class 'str'>); Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.
2023-02-05 10:51:16.326 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.go_echarger_090851_cards (<class 'custom_components.goecharger_mqtt.sensor.GoEChargerSensor'>) is using state class 'measurement' which is impossible considering device class ('energy') it is using; expected None or one of 'total', 'total_increasing'; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.

Especially the first one appears to be time sensitive given it will fail with the next HA release...

car plugged in entity missing?

Hello is there an entity available if a car is plugged in? in this integration I cannot find it, it seems:

sensor.goecharger_garage_rechts**_cable_lock_mode**

in the other integration I can see with this if a car is plugged in

Connection issues.

Hi.
This is probably a NOOB issue. ;)

I can't get my charger to connect with my Home-assistant mqqt server, its working fine with my sonoff. I think the problem is in my goecharge app mqtt setup, what exactly should i type in the 'url' to get a connection? :)
I thought it was my mqttuser:mqttpass@HAip:mqttport ?
If i add manual in itegrations, it says its added successfully, but no feedback from charger.
-hopefully its me who's wrong ;)

Start / stop charging

I installed this integration, and it works pretty smoothly out of the box. The only thing I need help finding is a simple button/switch to start/stop charging.

Am I understanding it correctly that I need to enable frc buttons? And if so, how do I do that?

Change phases and Requested current to high

Hi there,

thank you for the integration - Works reliably so far.
But i have two questions:

  1. Is there a way to change the phases from 1 to 3?
  2. Why can I increase the slide controller named as "Requested current" which obviously increases/decreases current ampere value to max 32 amps even though my 11kw box can only handle a maximum of 16 amps?

Thank you so far.

Best regards,

fox

HA 2022.07 deprecation warning for NumberEntityDescription

Hi,

the HA 2022.07 release show a deprecation warning for the NumberEntity.

2022-07-07 08:46:05 WARNING (MainThread) [homeassistant.components.number] custom_components.goecharger_mqtt.definitions.number is setting deprecated attributes on an instance of NumberEntityDescription, this is not valid and will be unsupported from Home Assistant 2022.10. Please report it to the custom component author.
2022-07-07 08:46:05 WARNING (MainThread) [homeassistant.components.number] custom_components.goecharger_mqtt.definitions.number is setting deprecated attributes on an instance of NumberEntityDescription, this is not valid and will be unsupported from Home Assistant 2022.10. Please report it to the custom component author.
2022-07-07 08:46:05 WARNING (MainThread) [homeassistant.components.number] custom_components.goecharger_mqtt.definitions.number is setting deprecated attributes on an instance of NumberEntityDescription, this is not valid and will be unsupported from Home Assistant 2022.10. Please report it to the custom component author.
2022-07-07 08:46:05 WARNING (MainThread) [homeassistant.components.number] custom_components.goecharger_mqtt.number::GoEChargerNumber is overriding deprecated methods on an instance of NumberEntity, this is not valid and will be unsupported from Home Assistant 2022.10. Please report it to the custom component author.

Best regards

All entities are "unavailable"

I got this issue today after integrating GOeCharger Version 0.15.1. Mostly all entities are in status "unavailable". Hope the following log entry will help to solve this issue.

WARNING (MainThread) [homeassistant.helpers.frame] Detected integration that called async_setup_platforms
instead of awaiting async_forward_entry_setups; this will fail in version 2023.3. Please report issue to the custom
integration author for goecharger_mqtt using this method at custom_components/goecharger_mqtt/init.py, line 44:

Support more writable config keys

Frequently changed keys

Key R/W Type Category Description
dwo R/W optional<double> Config Lade Energy Limit, gemessen in Wh, null bedeutet deaktiviert, nicht mit der next trip energie zu verwechseln

One-time config

Key R/W Type Category Description
wan R/W string Config wifiApName
wak R/W string Config WiFi AccessPoint Key (read/write from http)
tof R/W minutes Config timezone offset in minutes
tds R/W uint8 Config timezone daylight saving mode, None=0, EuropeanSummerTime=1, UsDaylightTime=2
utc R/W string Status utc time
clp R/W array Config current limit presets, max. 5 entries
cid R/W string Config color_idle, format: #RRGGBB
cwc R/W string Config color_waitcar, format: #RRGGBB
cch R/W string Config color_charging, format: #RRGGBB
cfi R/W string Config color_finished, format: #RRGGBB
fna R/W string Config friendlyName
awc R/W uint8 Config awattar country (Austria=0, Germany=1)
cco R/W double Config car consumption (only stored for app)
ct R/W string Config car type, free text string (max. 64 characters, only stored for app)
mca R/W uint8 Config minChargingCurrent
ama R/W uint8 Config ampere_max limit
awp R/W float Config awattarMaxPrice in ct
psmd R/W milliseconds Config forceSinglePhaseDuration (in milliseconds)
sumd R/W milliseconds Config simulate unpluging duration (in milliseconds)
mpwst R/W milliseconds Config min phase wish switch time (in milliseconds)
mptwt R/W milliseconds Config min phase toggle wait time (in milliseconds)
sch_week R/W object Config scheduler_weekday, control enum values: Disabled=0, Inside=1, Outside=2
sch_satur R/W object Config scheduler_saturday, control enum values: Disabled=0, Inside=1, Outside=2
sch_sund R/W object Config scheduler_sunday, control enum values: Disabled=0, Inside=1, Outside=2
mci R/W milliseconds Config minimumChargingInterval in milliseconds (0 means disabled)
mcpd R/W milliseconds Config minChargePauseDuration in milliseconds (0 means disabled)
mcpea R/W optional<milliseconds> Status minChargePauseEndsAt (set to null to abort current minChargePauseDuration)
log R/W string Config load_group_id
lop R/W uint16 Config load_priority
lof R/W uint8 Config load_fallback
map R/W array Config load_mapping (uint8_t[3])
lot R/W uint32 Config load balancing total amp
loty R/W uint8 Config load balancing type (Static=0, Dynamic=1)
spl3 R/W float Config threePhaseSwitchLevel

Unknown

Key R/W Type Category Description
awpl R/W array Status awattar price list, timestamps are measured in unix-time, seconds since 1970

Expose energy per nfc card as sensor

/go-eCharger/072246/cards [{"name":"User 1","energy":0,"cardId":true},{"name":"User 2","energy":0,"cardId":false},{"name":"User 3","energy":0,"cardId":false},{"name":"User 4","energy":0,"cardId":false},{"name":"User 5","energy":0,"cardId":false},{"name":"User 6","energy":0,"cardId":false},{"name":"User 7","energy":0,"cardId":false},{"name":"User 8","energy":0,"cardId":false},{"name":"User 9","energy":0,"cardId":false},{"name":"User 10","energy":0,"cardId":false}]

Restart of goecharger not possible

Hi guys, is there any service to restart the wallbox? In the app I can restart it.
Often the box will only charge the car after I restart it for whatever reason so I want to make an automation if the car is not charging under certrain conditions when it should, restart the box.

Thanks

Add discovery of available devices

Use a single level wildcard to discover available go-e devices:

$ mosquitto_sub -t '/go-eCharger/+/var' -v              
/go-eCharger/000001/var 11

The keys fna, ffna, sse, oem and typ aren't available.

Add simple start/stop charging switch

Hi,

In the other custom goe-charger integration there is a switch to turn on/off allow charging.
In your integration I can do this by select force-state =2 (1=stopped, not sure what 0 does)
It would be nice to simply have a switch to start/stop charging. Makes things much easier.

Thanks a lot :-)

Current sensors should be float

As already commented in the HA Forum, this integration treats Current values as integers, not as floats.
I see 2 problems here:

  1. In this range >6 A and < 32 A, the first decimals do make a difference.
    So I believe it should be extract_item_from_array_to_float,

image

  1. Anyway, usage of int seems to be problematic to me when parsing json, as it just cuts the decimal part instead of rounding.
    So something like this would make more sense, wouldn't it?
def extract_item_from_array_to_int(value, key) -> int:
    """Extract item from array to int."""
    return round(float(json.loads(value)[int(key)]))

Though I have never ever developed in Python before. So maybe this is complete nonsene.

trx not available

I am trying to set the transaction id (trx) which basically works with any MQTT client but it isn't available in the UI. Tried to do in in YAML but it didn't work. Any suggestions what I can do?

Make the charged energy (`wh`) sensor energy dashboard compatible

The sensor in the go-e integration is designed to give wh:
image

Unfortunately this does not seem to work well in the home assistant energy dashboard since it seems to expect kwh:
image

Is it somehow possible to make home assistant read the values correctly so that it is also correctly shown?

All entities in state Unavailable

Got a go-eCharger with firmware 041.0 and MQTT connected.
mosquitto_sub shows that status-data is posted by the charger:

go-eCharger/012345/status {"version":"B","tme":"0703221448","rbc":"16","rbt":"7580066","car":"1","amp":"16","err":"0","ast":"0","alw":"1","stp":"0","cbl":"32"...

Alle 98 entities generated by the integration are unavailable or disabled.

The MQTT server (HAs own Mosquitto) uses username/password. Could that be the problem?

Unavailable Sensors

I saw that some people already had the same symptoms, but none of their solutions could help me so far.
image
all the Read-only entities show unavailable. I use the MQTT addon on HA and when I connect to it I can see the topics coming in fine. All the shellies I use also work fine through MQTT.
image
When I listen to the topic through the MQTT broker integration I can also see the messages coming in.
image
Firmware version of the charger is 0.54.11

Add a restart button entity

Hi,

thanks for the integration. Works like a charm!

Is it possible to add a button to restart the charger? With Firmware 053.0 there is the ability to do this with an API call rst=1.
I need this to start charging the new Renault ZOE (R135) .
I currently solved this with a command line switch. But its far from perfect....

I hope its possible. Thanks a lot.

Integration is using deprecated `DEVICE_CLASS_*` constants

This custom integration uses deprecated DEVICE_CLASS_* constants in its codebase.

The DEVICE_CLASS_* constants have been deprecated and replaced in Home Assistant Core 2021.12 (over a year ago). I would highly suggest updating/migrating this integration to the new enums.

For example, for the device classes supported by the sensor platform, there is now a SensorDeviceClass enum. So if a sensor previously used the DEVICE_CLASS_ENERGY constant, it should now use SensorDeviceClass.ENERGY. Other platforms (like binary_sensor, and number) provide similar enumerations for their supported device classes.

The migration thus only consists of replacing constants with an enumeration member and is, therefore, very low impact and should be fairly straightforward.

If I can help resolve any questions regarding this change or migration, feel free to ask or respond to this issue. I'm happy to help!

Kindest regards,

../Frenck

Integration stopped working after update Home Assistant to 2022.8.0

The integration stopped working after update to Home Assistant to 2022.8.0 yesterday. I had no problems before updating.
I got the following error message in the log then:

Logger: homeassistant.config_entries
Source: [config_entries.py:796](http://config_entries.py:796/)
First occurred: 20:47:15 (3 occurrences)
Last logged: 20:47:52

Error occurred loading configuration flow for integration goecharger_mqtt: cannot import name 'MqttServiceInfo' from 'homeassistant.components.mqtt' (/usr/src/homeassistant/homeassistant/components/mqtt/__init__.py)

I tried to reinstall the integration and now I get the following message:

2022-08-04 06_20_29-Window

Add MQTT API v1 support

I have configured the Go-Echarger that it ist connected to MQTT. I am seeing a topic ist created with "go-eCharger/001680/status". But the integration does not show any actie entity.

Cannot receive any sensor data

Hi guys I have spent 2 hours trying to receive any data from the wallbox.

so I switched the mosquitto to debug mode and got this

2023-02-28 17:22:25: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/rssi', ... (3 bytes))
2023-02-28 17:22:25: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/utc', ... (25 bytes))
2023-02-28 17:22:25: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/loc', ... (32 bytes))
2023-02-28 17:22:25: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/rbt', ... (7 bytes))
2023-02-28 17:22:25: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/nrg', ... (39 bytes))
2023-02-28 17:22:25: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/fhz', ... (6 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/utc', ... (25 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/loc', ... (32 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/rbt', ... (6 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/nrg', ... (39 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/fhz', ... (6 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/utc', ... (25 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/loc', ... (32 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/rbt', ... (7 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/nrg', ... (39 bytes))
2023-02-28 17:22:26: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/fhz', ... (6 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/utc', ... (25 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/loc', ... (32 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/rbt', ... (6 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/nrg', ... (39 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/fhz', ... (6 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/utc', ... (25 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/loc', ... (32 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/rbt', ... (7 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/nrg', ... (39 bytes))
2023-02-28 17:22:27: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/fhz', ... (6 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/utc', ... (25 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/loc', ... (32 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/rbt', ... (6 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/nrg', ... (39 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_096071 (d0, q0, r1, m0, 'go-eCharger/096071/fhz', ... (6 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/utc', ... (25 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/loc', ... (32 bytes))
2023-02-28 17:22:28: Received PUBLISH from go-echarger_093546 (d0, q0, r1, m0, 'go-eCharger/093546/rbt', ... (7 bytes))

The devices do not show up at the broker and the integration does not show any values. Do you have any ideas?

Stops working on HA core 2022.10.4

Hi,
not sure whats wrong with 2022.10.4, but this integration stops working. I went back to 2022.10.3 and its working again.
The Go-e charger is on v54.7 but I tried v054.3 and its also not working on 2022.10.4.

Anyone else have this issue?

Import error

With Home assistant core 2202.8 and 8.1, integration does not start. Receiving the following error:

"Logger: homeassistant.config_entries
Source: config_entries.py:338
First occurred: 14:16:59 (1 occurrences)
Last logged: 14:16:59

Error importing platform config_flow from integration goecharger_mqtt to set up goecharger_mqtt configuration entry: cannot import name 'MqttServiceInfo' from 'homeassistant.components.mqtt' (/usr/src/homeassistant/homeassistant/components/mqtt/init.py)"

Home Assistant 2022.8.1
Supervisor 2022.07.0
Operating System 8.4
Frontend 20220802.0 - latest

Read-Only Entities do not work

I could intenrate go-eCharger successfully - the device and 98 entities can be found.
But only the switches are available, all read-only entities are not available and the sensors could not be read.

image

Do I miss something or does this just not work with the latest firmware? I'm using 054.7., the hardware number is V3.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.