Homey Community Forum

[APP] Easee charger

image

Control your Easee charger with Homey

App Store Page: https://homey.app/a/no.easee

Description

This Homey app allows you to monitor and control your Easee chargers using the Easee cloud API.

Supported devices

  • Easee charger

Authentication

Login using the same credentials you use in the Easee mobile app or the https://www.easee.cloud/
Phone number including country code and password. The app will store the credentials inside your Homey in an encrypted format. The credentials will be used to generate new access tokens after each restart of the Easee app or restart of Homey.

App functionality

Capabilities

  • Charger status
    There is no official list of which statuses that exist, so if you see “UNKNOW (n)” where n is a number. Please help me to identify what text should be attached to the status number.

  • Online status
    Is the charger online or not

  • Power (W) used when charging

  • Voltage (V)

  • Current (A) allocated for charging
    This is typically 0 when no car is charging. If you have more than one charger on a circuit this number will differ from the charge current limit since Easee will balance the current allocated automatically between your chargers.

  • Current (A) used
    Not trivial to understand how their API works and I have made some assumptions. You can see that even easee.cloud is showing this incorrectly for 3 phase charging.

  • 3-phase charging (yes/no)
    Trying to identify if the charger is charging using 3 phases or 1 phase when charging.

Triggers

  • Charger status changed
    The trigger will kick in for every status change

Actions

  • Control charger
    Allows you to start/stop/pause/resume charging.
    Early observation from my side is that if I have stopped charging from my car, using start charging action in Easee will not start the charging. But if I do pause charging and then resume charging it will start the charging.

  • Toggle charging
    Easy way to trigger a charger action, if charging is stopped/paused using this action it will be started/resumed, or vice versa.

  • Set charger current
    Controls the current (A) offered by your charger(s) to your car(s). Can be used to load balance against your main fuse, or enable only self-consumption of power from your solar panels.
    I use Tibber and have my Easee chargers registered there. If I change the available current I have seen that it gets reflected in the charging for some time but then is set back to the previous value. I suspect this has to do with the Tibber integration and that they set it back to the value that is defined in their app.

I have two Easee chargers on the same phase (circuit) so this is what the app is currently tested with. Some trial and error trying to understand the API which in some cases is not easy to follow without any documentation.
As usual, any feedback is welcome :blush:

1 Like

Very nice. Good work. I’m gonna test and see.

Thanks!

I don’t see how to toggle charging other than creating a flow.
Also, any way to get the icon to show status just like in the tibber app?

Right, that is not built into the app today. My thinking has been that this app would be mainly used for automating processes, not manually turning on or off charging. You can, however, build a flow and put it behind a virtual button/switch.

I would love to implement that but to my knowledge, this is not possible today in Homey.

Version 0.9.2 is released today
Contains improved access token handling, especially if you have more than one charger or use the Easee API in some other script/automation app. Turns out you can have many access tokens working in parallel, but only the last generated refresh token is valid.

Found a problem. Start of charging is treated as car connected.
My car has been connected for the last 8 hrs and now at 02:00, Tibber trigger the charging (based on best price) and my Alexa wakes me up telling me a car was just connected to the charger.

1 Like

The challenge is the mapping of the status code that the API delivers. There is no official documentation for the status codes so I tried to look at what the iOS app and easee cloud say, but haven’t been able to map all statuses. To make it more complex the iOS app and easee.cloud don’t use the same status text for the status codes - which of course makes you wonder which is best to use.

As per the below status mapping my guess is your car was done charging at this time and the API returned 4 - which in iOS app is mapped to “Completed” but in easee.cloud to “Car Connected”. I choose the easee.cloud mapping for all statuses. We could change the mapping to “Completed” and see how that works over some time. Thinking about it now I realize it could be beneficial to be able to tell when the car is done charging.

    //iOS app says 'No car connected', but easee.cloud says 'Standby'
    case 1: return 'Standby'; break;
    case 2: return 'Paused'; break;
    case 3: return 'Charging'; break;
    //iOS app says Completed, but easee.cloud says Car Connected
    case 4: return 'Car connected'; break;
    //iOS app says Ready to charge, but easee.cloud says Car Connected
    case 6: return 'Car connected'; break;
    default: return `UNKNOWN (${numType})`; break;

I contacted Tibber for a log of the charging session last night but they are unable to provide this info.
I checked easee.cloud but according to that interface, there was no session during the night.

@Stian_Oien Can you please help us?