dan-r / HomeAssistant-Ohme

Unofficial Home Assistant integration for interacting with Ohme EV chargers (EVSE) 🚗⚡️
MIT License
33 stars 10 forks source link

Custom tariff support #77

Open nyordanov opened 1 month ago

nyordanov commented 1 month ago

Is your feature request related to a problem? Please describe.

Ohme doesn't support Octopus Tracker, only their other tariffs, which means that I can't use the price cap feature.

Describe the solution you'd like

The Octopus integration already provides the current rate (octopus_energy_electricity_***_***_current_rate). Would it be possible to have the Ohme integration pull these values at midnight and update the £/kWh value in a custom tariff?

Describe alternatives you've considered

I have tried asking Ohme to add Octopus Tracker to their list of tariffs and they refused.

dan-r commented 1 month ago

Unfortunately I don't think this would be possible without some cooperation from Ohme, as there doesn't seem to be a way to feed live information in for a custom tarrif.

My approach for automating it would be to delete all schedules so the charger is effectively always offering power, then make the following automations:

  1. Pause the charge as soon as you plug your car in
  2. Unpause the charge if the rate drops below your desired rate
  3. Pause the charge if the rate goes back above your 'cap'

Its not the most elegant solution but with the current state of the API, I can't see any other way.

andysmithfal commented 2 weeks ago

My solution to this was to create a new custom tariff in the Ohme app, with two rates - one for 12:00-00:00, and another rate for 00:00-12:00. At 12:00, I would set the 00:00-12:00 rate to tomorrow's price, and the 12:00-00:00 rate to today's rate. That way when I plugged my car in (generally in the evening), it would start charging immediately if today's rate was cheaper, or wait til midnight if tomorrow was cheaper.

I did this using my own code, but the API calls were fairly straight forward - you just need to create a custom tariff (I did this in the Ohme app), then a call to /v1/users/me/currentTariffInfo to get the tariff IDs etc, then /v1/userDefinedElectricityTariffs?link=true to update it.