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
    Standby, Paused, Charging, Completed, Error and Car connected

  • Enabled
    Is the charger enabled or disabled

  • 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.

  • Power (W)
    Watt used when charging

  • Current P1, P2 and P3
    Current used when charging, per phase

  • Voltage (V)
    Voltage for P1 (InVolt_T2_T3)

  • Last Charge Session (kWh)
    The kWh used during the last charging session

  • Lifetime (kWh)
    The kWh used during the charger’s lifetime.

  • Last 30 days total (kWh)
    The kWh used during the last 30 days
    Configurable capability, by default not shown.

  • Last calendar month total (kWh)
    The kWh used during the previous calendar month
    Configurable capability, by default not shown.

Triggers

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

Conditions

  • Charger status is
    Condition to check which status the charger currently has.

Actions

In general, all actions that change settings persistently are written to the flash memory of the charger. Easee states that you shouldn’t change these settings too frequently since it will wear out the flash. I have asked if this could be quantified but gotten no response.

  • 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 dynamic circuit current
    Controls the master circuit current (A) offered to your charger(s) to your car(s).
    Designed to be used for load balancing against your main fuse, or enable only self-consumption of power from your solar panels. Restarting charger will reset the value.
    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.

  • Set dynamic circuit current, per phase
    Same as above, but allows you to set circuit current per phase. If your car only changes using a single phase then you can control which phase is used by setting the phase current values to for example; P1=0, P2=16, P3=0. This will result in phase P2 being used for single phase charging.

  • Set charger state (stored in flash)
    Enable and disable the charger

  • Set Charger idle current state (stored in flash)
    Control if the charger should show current to a connected car when not charging

  • Set permanent cable lock (stored in flash)
    Control if the attached cable should be permanently locked in the charger.

  • Set Charger led strip brightness (stored in flash)
    Control the brightness of the led strip on the charger

Maintenance actions

  • Reorder capabilities
    A beta maintenance action to reorder all capabilities shown in the app to the intended order. This can be useful after major changes to capabilities (like v0.9.9). Instead of removing the device and re-add it to get capabilities in the correct order, you can use this maintenance action. This will save you from updating all flows which use the device. Homey don’t really like removing and adding capabilities to an existing device, so you have to restart the Easee app in Homey after executing this action. Messy, yes, but if you use the device in many flows this might still save you time. As an extra bonus, the history of the capabilities in insights also seems to remain, at least for the device I tested with.

As usual, any feedback is welcome :blush:

2 Likes

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?

@protonic Please PM me or send me an email to stian@easee.no and i will give you more documentation :grinning:

2 Likes

Hi! Trying to crate a flow to notify me of when the charging is done. The status returned and displayed in the homey app on iOS is “Complete”. The issue is that I cannot select “complete” as a state in the flow. Are you able to add “Complete” as an option?

Thank you!

Took me a while but eventually understood what you mean :slight_smile:
I added Completed and Error, the two missing statuses from the condition. The new version will be released in a day or two when Athom approves it.

1 Like

Sorry if I wasn’t clear enough! Awesome work and thank you, I will test it as soon as it get’s approved from Athom.

1 Like

Hi! Great app! I’ve finally gotten my charging robot and the app works perfectly :slightly_smiling_face:

I have a feature suggestion that I think would be nice. Could you add the monthly usage data in kWh from the api?

/api/sessions/charger/{chargerId}/monthly

I’m not sure what results come but maybe you get a “consumed this month so far” if you call it for the current month maybe? Or if you have a better idea.

1 Like

Will add it, coming in next release. For now called it “Current month total”, since I get statistics for the current month. We could do last 30 days if that makes more sense?

Also got a request via github to add kWh used for last charge session, so that is also coming.

Last Charge Session (kWh) and Last 30 days total (kWh) are now available in version 0.9.7 released this morning.

I just updated and they work great :slight_smile: Thank you.

Personally I’m keeping statistics for my monthly electricity usage and dividing up the consumption between “Household” “HVAC” and now also “EV”.

It would help me to automate this process if I had the monthly total at the end of the month. My plan was to add the value of this app to a virtual device once at about 23:00 last day of each month, then it would say previous monthly total and automatically export this to InfluxDB. I’d have a bit of trouble to do this with 30 days only since the length of the months differs.

But this might be a niche usecase so if you see more value with last 30 days total just keep that :slight_smile:

Basically what I’d really want is a “last month total” field. But I think that’s even more niche :stuck_out_tongue: And that’s something I’d be able to do myself as long as I have the “Current month total” also.

There is an app for that (power by the hour)

That looks amazing, definitely checking it out! Thank you!

Going to see how accurate it is compared to the easee phone app :slight_smile:

The other app is acting super strange :confused:
If it’s possible to add that official api from Easee I’d appreciate it. I’d possibly look into hacking it into the app myself otherwise :slight_smile:

There is a new test version 0.9.8, Easee Charger | Homey
You can change via settings if you want to see Last 30 days and/or Last month usage in kWh.
Please test and report back. As before these capabilities are updated once every 30 mins.

2 Likes