Skip to main content

Ohme smart home integration, free and open source

Ohme integration for Gladys Assistant

Ohme EV chargers (UK, EU) via the Ohme cloud: status, power, energy, battery; optional commands.

Shows your Ohme EV charger (Home, Home Pro, ePod; United Kingdom and Europe) in Gladys, through the Ohme cloud, with the account of the Ohme app.

Unofficial API, never tested with a real account nor a real charger. The integration talks to the API of the Ohme app, like the ohmepy library and the Home Assistant integration. Ohme may change it without notice. Not affiliated with Ohme.

What you get​

One device per account (the first charger of the account) with:

FeatureContent
StatusUnplugged, Plugged in, Charging, Paused, Finished, Waiting for approval, Charger offline
ConnectorAvailable, occupied or unavailable (Gladys "charging station" category)
Charging stateCharging, vehicle connected, paused, idle
PowerIn W
CurrentIn A
VoltageIn V, when Ohme gives it
Energy of the sessionIn kWh: the energy of the session in progress, then of the last session
Vehicle batteryIn %, only when Ohme gives it
Battery targetIn %, of the session in progress or of the next one
Planned end of chargeEnd of the last planned slot, e.g. "2026-10-18 06:30", else "—"
Charge modeChoice: smart charge, max charge, paused
Set the battery targetChoice: 10 % to 100 % by 5 %

Read every minute while charging, every 5 minutes otherwise; the account (model, firmware) every 30 minutes.

Energy: Ohme gives no cumulative meter, only the energy of the session. The integration therefore publishes no index nor daily consumption: the energy of the session is a plain sensor, outside the Gladys energy monitoring (your main meter already counts the charger).

Setup​

  1. Install the integration from the Gladys store.
  2. In its configuration, enter the e-mail and the password of the Ohme app. The password is kept by Gladys in its database, never shown again, sent only to the Ohme sign-in service (Google Firebase, as the app does).
  3. Check the timezone (Europe/Paris by default): it is used for the planned end of charge.
  4. Save, then add the charger from the Discovery tab.

The Test the connection button reads the charger once (at most every 30 seconds).

Commands (off by default)​

The "Charge mode" and "Set the battery target" features refuse every command while Allow the commands is off. On:

  • Max charge: charges now at full power;
  • Smart charge: back to Ohme's schedule; from a pause, resumes the charge;
  • Paused: pauses the charge. From a pause, choose "Smart charge" first (max charge is refused);
  • Battery target: changes the target of the session in progress, or of the next one when nothing is plugged in.

They are choices, never switches: a "turn everything off" does not reach them. Google Home, Alexa and HomeKit do not see them, and the Gladys MCP server only reads them. A scene can change them, but only through an explicit action on that choice, and only when the commands are allowed.

Before each command, the integration reads the charger again (and the rule of the next session for a target); a useless command (already in that mode) is not sent; a command without a plugged-in vehicle, with the charger offline or with the charge waiting for approval is refused. A command that cannot leave within 3.5 seconds is refused unsent. Gladys gets an answer after 4.3 seconds at most, even before Ohme confirmed: the real state shows about 10 seconds later. One command at a time.

Errors and limits​

  • E-mail or password refused: the integration stops and says so; one new try after 6 h, then every 24 h (not to lock the account). Saving new credentials or the test button try again at once.
  • Token refused: renewed once; refused again, a pause then one try after 1 h, 6 h, then every 24 h.
  • 429 (too many requests): a pause of 1 minute to 6 hours (15 minutes without a hint), for everything (reads, button, commands), kept across a restart. 403 of the main read: one hour; 403 on a command: that command only is refused; 403 on a secondary read: that endpoint is skipped for an hour.
  • Network, 5xx: new try after 2, 5, 10, 15, then 30 minutes, never faster than the interval.
  • Stops and pauses are kept in /data, for 24 h at most. /data also keeps the Ohme session token, in clear, in a file reserved to the container user (0600), so also readable by the administrator of the machine and in the backups of the volume; never the e-mail nor the password.
  • Charger offline: the connector turns "unavailable"; power, current, voltage and charging state keep their last value.
  • One charger: with several chargers, only the first one is shown (as ohmepy).
  • Charge approval, the schedule (target time), solar mode and the price cap are not supported.
  • The logs never hold the password, the tokens, nor the text of Ohme's answers.

Credits​

Ported from ohmepy (Daniel Raper, MIT) and the Home Assistant Ohme integration (Apache-2.0). Apache-2.0 license.

Configuration settings​

These are the settings Ohme asks for in its configuration screen in Gladys.

SettingTypeRequiredDescription
Your Ohme accountsectionNoShows your Ohme charger (Home, Home Pro, ePod) in Gladys through the Ohme cloud: status, power, current, voltage, energy of the session, vehicle battery when Ohme gives it, battery target and planned end of charge. Enter the e-mail and password of the Ohme app, save, then add the charger from the Discovery tab. Read every minute while charging, every 5 minutes otherwise. The charge mode and the battery target can be changed from Gladys only if you allow the commands below. Unofficial API, never tested with a real account. Not affiliated with Ohme.
Ohme e-mailstringYes
Ohme passwordsecretYesKept by Gladys in its database, never shown again, sent only to the Ohme sign-in service (Google Firebase, as the Ohme app does).
Allow the commandsbooleanNoOff by default. On: Gladys may change the charge mode (smart, max charge, pause) and the battery target of the session in progress or of the next one. Off: these two features refuse every command.
Gladys timezonestringNoUsed for the planned end of charge. IANA name, e.g. Europe/London or Europe/Paris.
Language of the feature namesselectNoUsed for the feature names of the device added from now on, for the status texts and for the command errors.

How to install Ohme in Gladys​

  1. In Gladys, open Integrations: Ohme appears in the catalog, next to the native integrations, with a community badge.
  2. Click Install. Gladys pulls the Docker image (ghcr.io/lm1lc3n7/gladys-ohme:0.1.1), starts it in a sandbox isolated from the core, and generates the integration's interface (devices, discovery and configuration).
  3. Open the Configuration screen of the integration, fill in the settings, and save.
  4. You can also install it directly from its repository URL: https://github.com/LM1LC3N7/gladys-ohme.

Ohme requires Gladys >=4.86.0. The catalog inside Gladys refreshes every hour, so a new version becomes available at most one hour after its release.

Not running Gladys yet? It is free and open source: follow the installation guide to get started.

About external integrations​

Ohme is an external integration: a community integration packaged as a Docker container and published on GitHub, that Gladys installs in one click and runs in a sandbox isolated from its core. It is published and maintained by LM1LC3N7, not by the Gladys core team.

Subscribe to the Gladys Assistant newsletter

A few emails per month about new releases and project news. Sent by Pierre-Gilles Leymarie, founder of the project. Unsubscribe anytime 🙂