Skip to content

Configuration Example: EVCC via MQTT

steff393 edited this page Mar 8, 2023 · 7 revisions

Since wbec 0.4.2 it's possible to connect EVCC and wbec via MQTT.
This offers a way to use several Heidelberg Energy Control wallboxes on one wbec, controlled by EVCC.

Preconditions:

You need an MQTT broker running on your system, for example: https://mosquitto.org/download/
Unlike openWB, EVCC doesn't have an own MQTT broker included.

(If you use only 1 Heidelberg Energy Control and don't want to setup an MQTT broker, then you still can configure wbec as an go-eCharger in EVCC. --> not recommended, sponsor token needed meanwhile)

Configuration in wbec:

Modify cfg.json (using http:// ip /edit):

  • cfgMqttIp: IP adress of MQTT broker ("" to disable MQTT)
  • cfgMqttLp: Mapping of Modbus IDs to load points, e.g. [4,2,0,1]: Box0 = LP4, Box1 = LP2, Box2 = no MQTT, Box3 = LP1

Example:
..."cfgMqttIp":"192.168.178.1","cfgMqttLp":[1],"cfgMqttUser":"optionalUsername","cfgMqttPass":"optionalPW"...

Configuration in EVCC:

chargers:
- name: wbec-LP1
  type: custom
  status:
    source: mqtt
    topic: wbec/lp/1/status
  enabled:
    source: mqtt
    topic: wbec/lp/1/enabled
  enable:
    source: mqtt
    topic: wbec/lp/1/enable
  maxcurrent:
    source: mqtt
    topic: wbec/lp/1/maxcurrent

meters:
- name: wbec-LP1-Meter
  type: custom
  power:
    source: mqtt
    topic: wbec/lp/1/power
  energy:
    source: mqtt
    topic: wbec/lp/1/energy
  currents:
    - source: mqtt
      topic: wbec/lp/1/currL1
    - source: mqtt
      topic: wbec/lp/1/currL2
    - source: mqtt
      topic: wbec/lp/1/currL3

Additionally, it's needed to configure the following items, see EVCC documentation

sites: 
loadpoints:
mqtt:

Details regarding MQTT communication

The MQTT communication is currently mainly intended for connection to openWB.

This means, once activated, the following topic will be subscribed:
wbec/lp/1/enable
wbec/lp/1/maxcurrent

The other topics will be published whenever a new Modbus transmission is complete.

The examples mentioned above are for load point 1. The 1 in the topic can be replaced by another number using cfgMqttLp (see above).