[APP][Pro] Easee charger - Small. Smart. Full of power

That would be simple enough!

1 Like

@Richard_B , is it please normal to see status in the Cloud different then I see in the Homey ?
I have eGolf which during connection do some short test and start charging later on as per scheduleā€¦ unfortunately when checking the Easee Android app, it also shows ā€œCompletedā€ statusā€¦

Easee Cloud

Homey log

2021-05-19 19:19:54 Debouncing charger status 'Car connected'
2021-05-19 19:19:57 Debouncing charger status 'Charging'
2021-05-19 19:20:43 Debouncing charger status 'Completed'

Correct, there are differences between the Easee app and easee.cloud on how they display the status.
To make it clear, the Easee APIs return a numeric representation of the status that needs to be mapped to a text status.
When I looked at this initially these were the differences.

//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 'Completed'; break;
case 5: return 'Error'; break;
//iOS app says 'Ready to charge', but easee.cloud says 'Car Connected'
case 6: return 'Car connected'; break;

I feel it is problematic to change status now since many people might use them in their flows. Showing status 4 as Complete makes sense to me if you want to be able to take an action once the charging is completed. Showing Car Connected also here would not make it possible to differ from status 6. I guess this is the reason why I used the app status for this status and not easee.cloud for all of them.

1 Like

Thank you Richard for details - so is there some way to distinguish between Car connected AND Not charging ? Thatā€™s status COMPLETED, right ? I would like to change maximum available charging capacity only when car is connectedā€¦ regardless of whether charging finished or even didnā€™t started yet.

To be able to load balance you need their Equaliser works very well BUT you have to check what standards you have on your energy meter. The current version only support HAN-port. I believe there are two different standards and the visual difference is if there is a RJ45 or RJ12 outlet on the energy meter. (at least in Sweden)

Actually I mean load balancing using energy meter - via Homey and via function " Set dynamic Circuit current". But it seems this doesnā€™t work - whenever I change it via Flow, itā€™s always set to 16A (my maximum), I donā€™t see anything in the logs, even no confirmation.
I tried that during charging and even when not charging.
Anyone has got done experience with it?

Do you get an error when trying to invoke the function? If so please check the ā€œadvanced settingsā€ of the device in Homey and the debug section there contains the ā€œLast API errorā€.

Here is also a field called ā€œLast Command Responseā€. After a ā€œSet dynamic Circuit currentā€ call you should see an observation there for ā€œSetDynamicChargerCurrentā€. This only happens if you set a new value though. If you set it to 10A and it already was 10A then you wonā€™t get a command response.

Please note this is ā€œCircuit currentā€, if you have more than one Easee charger this setting impacts all of them.

As for your previous comment

If you want to include when a car is connected, regardless of charging, paused or completed - then Iā€™d check for ā€œnot Status=Standbyā€. You could compliment to check for error also, but I have never seen the error status so probably not that important.

1 Like

Thank you, I will test it during next charging, but when I checked I do believe there wasnā€™t any error but I have to check again.
Now Iā€™m facing another problem - charger is currently set Enabled=No (I have flow disabling charger when not at homeā€¦), so Iā€™m trying to re-enable it via flowā€¦and it does nothing, it also reports no error. Not sure if it will help : 67295e64-d979-4ccc-875e-af4ca5c6d2ae

After I restarted the app, I was able to Enable charger again. Maybe that was the problem also yesterdayā€¦will report more tomorrow. Thank you for your help and insights, really appreciated.

2021-05-24 18:58:12
{
  "device": "EH2XXXXX",
  "observation": "SetEnabled",
  "accepted": true,
  "resultCode": null
}

So I connected charger to car, but didnā€™t start charging - Easee switched to status COMPLETED with Current allocated 16A. I have created test flow to change Dynamic Circuit Current but I see no difference - itā€™s still set to 16A and there is no entry in ā€œLast API errorā€. I tried to restart APP and repeat - no difference.
What I can do to investigate it further ?

Diag. ID before app restart : e820633a-fdf5-4f1c-b4e7-781cc5e18ae8

Thanks for the diag report, it actually helped to diagnose the problem. The set dynamic current must have stopped working for all new users at some point in time. I changed the name of the circuit fuse setting, but it continued to work for me since Homey must have kept the old setting behind the scenes even if it didnā€™t exist any longer.

There is a new test version, v1.2.1. Can you give it a go. The test version is also upgraded to require sdk3/firmware v5 or later.

1 Like

Seems to be working, I will test it during next days, thank you :wink:

Hi @Richard_B! I might have found an issue, not a huge one but still something I wanted to make you aware of.
I have this flow:


I know @Richard_B speaks swedish natively, sorry to the rest of you. To keep it simple, I want to get a notification if the car begins to charge if I am awake.
The funny thing is, I donā€™t get a notification when the chargerā€™s status is changed to Charging. I get the notification when the status changes from Charging to Completed. :slight_smile:

Any ideas?

Hi.

Iā€™m experiencing what seems to be an access token issue. My setup consists of one Easee Home, controlled by Tibber.

The last log entry in the Easee App on Homey is: ā€œ2021-06-16 17:50:53 Renewed access tokenā€. This is also the latest (dated) entry in the debug information within the App.

After that, our EV has been charged just as it should (june 19-20), but nothing appears in the Easee app on Homey.

Iā€™ve experienced similar before as the result of managing user accounts in Easse.cloud, and resolved that by reinstalling the Easee app on Homey and authenticating with updated credentials. But I havenā€™t changed any user info after that, so this is a different problem. And the solution of re-installing the Homey app effectively deletes any historical charging data which is one reason for having the app on Homey, so Iā€™d prefer not having to do that every now and then.

Any thoughts on what may be wrong here? I tried restarting Homey (via developer.athom.com) and the Homey app (from the Homey app on an iPhone), but nothing happens with the Easee statuses.

Hi @Richard_B,

Thanks for a brilliant app, this truly extends the value of smart charging.

Iā€™m trying to utilization all of solar production and will be ā€œtoppingā€ the battery of my EV to do so. But in trying to do so Iā€™m not able to set the circuit to any value lower than 10A? Any value between 10-32A is OK, but below 10 it cuts the power and only information I can get is ā€œWaiting for Smart Chargeā€. Is 10A the lowest possible value, or do you know of any other reason why this might be?

Solved the issue by removing and adding the charger from Homey, but as said thatā€™s not really a solution.

Actually I can confirm as well, while I have ā€œSmart Chargeā€ set to NO - but I didnā€™t know it happens when lowering current to <10A.

Kind of solved my issueā€¦!

First off, Easee does not offer a lower circuit than 6A to the car, which might be connected to some of the issues I have experienced (such as the ā€œSmart Chargeā€-mode @Sharkys). On the other hand, utilizing 1-Phase instead of 3-Phased charging solved many of my challenges as adjusting the circuit on 1-phase enable me to adjust the power with 230W steps (instead of 690W) which again is a bit more ā€œreasonableā€ levels looking at my surplus production.

And last but not least, breaking up the flow into pieces (not very efficient but effective) also decrease the amount of repetitive messages written to Easee, hence better chance of getting the command across (here refering to one of @Richard_B statements of not getting a command response

) Iā€™m not sure whether or not this is connected, but from my test-fail-adjust method Easee at least seemed to stop receiving with the first repeated message, but please correct me if Iā€™m wrongā€¦on thin ice on this one!

But after quite a bit of testing, at this point I have managed to increase the utilization of solar production from 47% to 75+% by ā€œoffloadingā€ excessive production to the car, and still tuning! So please feel free to reach out if you want to discuss solutions (sharing the flow makes little sense as it is fractioned quite a bit), but would love to learn and share on this topic!

Thanks again @Richard_B for a fantastic app!

3 Likes

Canā€™t really explain that behaviour, but I would change the ā€œAndā€¦ā€ card to a logic card and use the status passed from the ā€œWhenā€¦ā€ card.

Something like this

I have set up a test flow using the logic card and will see how it works over a few days.

Nice! Iā€™d be happy to see the flows you are using - and implement any logic in the app that may help to build such functionality without a large number of flows.
I have had same plans myself for a while but never get around to do it.

1 Like

Sorry to hear about that. Are you running the test version or the stable version?
I may have written this before, but the logic around the access tokens is as follows;

  1. No access token, then login using user/password and generate an access token + refresh token.
  2. Start a timer to refresh the access token using the refresh token after 23 hours.
  3. Timer kicks in and app tries to refresh access token using refresh token. If this fails a login is made using the user/password and generates a new access token + refresh token.
    A login with user/password is frequently needed since using another app that generates an access token and refresh token will invalidate the previous refresh token.

Further to the logic above I have in the test version of the app a function that checks the SignalR stream every second minute for when the last message through the stream was received - if longer than 30 minutes ago it will generate a new access token + refresh token using user/password and restart the stream.

Iā€™ll look into the code and make sure a new token is generated upon app restart.

1 Like