Keba Charging Station

The keba integrates your Keba charging station/BMW Wallbox into your Home Assistant instance using the UDP Smart Home Interface (manual). The fetching interval to the charging station is set to 5 seconds, same as in the official mobile app. In order to use the integration, enable the UDP Smart Home Interface by adjusting the DIP switches within the charging station according to the installation manual.

This integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] provides the following platforms:

  • Binary sensors: Online state, plug state, charging state and failsafe mode state.
  • Lock: Authorization (like with the RFID card).
  • Sensors: current set by the user, target energy set by the user, charging power, charged energy of the current session and total energy charged.
  • Actions: authorize, deauthorize, set energy target, set the maximum allowed current and manually update the states. More details can be found in the actions section.
  • Notify: Show a text on chargers with a built-in LED display.

Configuration

To enable this integration in your installation, add at least the following to your configuration.yamlThe configuration.yaml file is the main configuration file for Home Assistant. It lists the integrations to be loaded and their specific configurations. In some cases, the configuration needs to be edited manually directly in the configuration.yaml file. Most integrations can be configured in the UI. [Learn more] file. After changing the configuration.yamlThe configuration.yaml file is the main configuration file for Home Assistant. It lists the integrations to be loaded and their specific configurations. In some cases, the configuration needs to be edited manually directly in the configuration.yaml file. Most integrations can be configured in the UI. [Learn more] file, restart Home Assistant to apply the changes. The integration is now shown on the integrations page under Settings > Devices & services. Its entities are listed on the integration card itself and on the Entities tab.

# Example configuration.yaml entry
keba:
  host: KEBA_HOST

Configuration Variables

keba map Required

configuration

host string Required

Keba host.

rfid string (Optional, default: 00845500)

RFID tag used for authorization.

failsafe boolean (Optional, default: false)

Enable failsafe mode at Home Assistant startup.

failsafe_timeout integer (Optional, default: 30)

Timeout of the failsafe mode in seconds. Allowed values are between 10 seconds and 600 seconds (this parameter is only used if failsafe mode is enabled). Make sure to call the keba.set_curr action regularly within this timeout period!

failsafe_fallback integer (Optional, default: 6)

Fallback current of the failsafe mode in A. Allowed values are between 6 Ampere and 63 Ampere. 0 Ampere disables the running charging process completely (this parameter is only used if failsafe mode is enabled).

failsafe_persist integer (Optional, default: 0)

Saving the failsafe configuration to internal EEPROM of the Keba charging station. 1 means save it, 0 means do only keep this configuration until the next restart of the charging station (this parameter is only used if failsafe mode is enabled).

refresh_interval integer (Optional, default: 5)

Refresh interval to fetch new data from the charging station. 5 seconds (same as in the official app) is recommended.

Actions

The Keba integration offers several actions. Using these actions will change the state of your charging station. So use these actions with care!

Authorizing and Deauthorizing keba.authorize and keba.deauthorize

The charging station can be authorized and deauthorized using actions (keba.authorize and keba.deauthorize) or via the lock integration that is created automatically for the charging station. In both cases the RFID tag from the configuration is used.

Start and Stop keba.start and keba.stop

The keba.start and keba.stop actions control the charging process if the car is already authorized. Technically it sends ena 1 or ena 0 commands to the charging station.

Set Target Energy keba.set_energy

The action keba.set_energy sets the target energy for the current session to the given energy attribute in kWh. Payload example:

{
  "energy": 10.0
}

Maximum Current keba.set_curr

The keba.set_curr action sets the maximum current to the given current attribute in Ampere. Payload example:

{
  "current": 16.0
}

Request New Data keba.request_data

The keba.request_data action sends data update requests to the charging station.

Request New Data keba.set_failsafe

The keba.set_failsafe action sets the failsafe mode of the charging station. Payload example:

{
  "failsafe_timeout": 30,
  "failsafe_fallback": 6,
  "failsafe_persist": 0
}

Notifications

Some Keba chargers are equipped with a LED text display. The notification platform may be used to display text on this display. To enable this, add the following to your configuration.yamlThe configuration.yaml file is the main configuration file for Home Assistant. It lists the integrations to be loaded and their specific configurations. In some cases, the configuration needs to be edited manually directly in the configuration.yaml file. Most integrations can be configured in the UI. [Learn more] file:

Configuration

# Example configuration.yaml entry
notify:
  - name: NOTIFIER_NAME
    platform: keba

Configuration Variables

name string (Optional, default: notify)

Setting the optional parameter name allows multiple notifiers to be created. The notifier will bind to the notify.NOTIFIER_NAME action.

Usage

The use of the notify action is described here.

The message part of the event payload is shown on the display. Scrolling is performed if needed. A maximum of 23 characters can be shown.

The optional data part may contain specifications of the message duration. min_time is the minimum time in seconds the text will be shown if another message is requested. max_time is the maximum time to display the message when nothing else is requested. By default, the message is shown a minimum of 2 seconds and a maximum of 10 seconds.

message: "Welcome home"
data:
  min_time: 4
  max_time: 10

Disclaimer

This software is not affiliated with or endorsed by Keba.