ESP8266 OpenEVSE WiFi V2.9.0 beta: Significant update Solar PV Divert 🎉

OK, I changed the openevse setting to SolarPV-gen. The openevse then switched to sleeping (code 254) even though the PV was about 4kW. I waited several minutes but the unit did not wake up until I switched back to Grid(+I/-E) mode.

Presumably I need to change something else as well? Maybe adding another MQTT feed? I am cautious so as not to break something.

Your screen shot shows -4kW. Solar PV gen should always be positive.

1 Like

Mm here should not be any changes in the way energy reporting is done between the two versions. Check your config and the setting in the evse config?

I don’t quite understand you screenshots, which is which? Which is correct? To debug this further I will need to some screenshots of your evse config and emonPi / Input and Feeds pages


The two shots are of the same data feeds on my phone one is from the emonpi the other from on the top of each shot you can see the source. I have now switched out the module for the ESP32 version so will see over the next few days and report back if anything changes. Before the software update to V2.9.1 both systems showed the same data and when the car was not connected showed now power draw, with no changes other than the update to V2.9.1 the data went wrong. Thanks for the offer to look at it once I have some more data will post it up and we can see if there is anything I am doing wrong.



I recently upgraded to WiFi 2.9.1 (with EVSE 5.1.0.EU)

In Eco mode with Solar PV Divert enabled and using Grid Feed the unit starts charging when there is sufficient surplus power but doesn’t seem to increase the charge rate above the base 6A level even when there is available power.

Also in that screen shot the update time shows 84s even though the power value was correctly updating, though this was also the case on previous versions.


Hi David,

The updates to solar PV divert in V2.9.1 include a ‘smoothing’ algorithm so changes in solar PV may not take effect instantly. You can adjust the parameters of this algorithm in advanced settings if required.

Your screenshot shows an excess of 997W, an excess of 1600W would be required to increase the charging rate to 7A.

6A is the minimum charge rate, if the excess power drops below 1400W for a period the charging will pause.

Upgraded to v290 and noted this morning that it started well, but only went up to 10amps even though more solar was available. I changed the ‘Max current’ to 20A but nothing changed, so (as per process on previous version) I switched off ECO, let the current increase and then tried to turn ECO back on, but it wont do it.
I tried restarting both the wifi and hardware modules, then unplugged the car and reset the power to the EVSE and plugged back in, but still no joy. I also tried setting the MAX current back to the minimum but it still wont hold the ECO mode.
Next attempt was to upgrade to v2.9.1 but the behaviour remains.
So although I can adjust the current in manual mode, I cant set the unit to run in ECO mode.
Hardware version is 5.1.0EU.

So there is some sun again today and I’ve been able to look into my issue again. I think the problem was that the EVSE max current had somehow become set to 6A. I checked back with my uncropped screen shot from 2 days ago and the web UI showed 16A at that time but I note that the value doesn’t update unless the page is reloaded. Having set it back to 16A and turned Eco mode off and on again it’s now increased the charge rate to 10A as expected for the available surplus power.

Ah!, discovered that ‘most’ of the settings had been saved during the firmware upgrade, but not the MQTT and Solar divert configurations. During the process of getting this reconfigured I discovered that mqtt topics are case sensitive :sweat_smile:
All working well now.

1 Like

For me V2.9.0 is working exactly as described in the release notes. This is great and I appreciate the work you guys do.

I have an observation:

On a hot day with the EV fully charged and the OpenEVSE in Eco mode the charge controller goes to sleep and releases the contactor. At home my Tesla is exposed to the sun and to avoid extreme cabin temperatures I enable the ‘cabin overheat protection’ to limit cabin temperature to 40° C, this runs the air con and uses a couple of kilowatts which the car draws from the battery as the contactor is off.

When the battery level drops below the trip point the car will attempt to replenish the energy used and if the sun is still shining charging will begin.

The above is OK but cycling the battery even slightly is unnecessary in this situation as there is plenty of power available but because the contactor is off it cannot be used.

Switching to Normal (fast) mode activates the contactor and now the EV derives power for the air con directly from the mains.

Clearly the solution for me would be for the contactor to remain on even in Eco mode but this may not be the preferred option for users with different EV’s.

I would appreciate the view of others on this.

EDIT ***********************************************************************
Another observation:

Eco mode has a variable setting for Max Current. This does not work how I expect it to. The Eco mode Max Current is limited to the value set in Normal (fast) mode.

For example, set Normal mode Max Current to 10A then change to Eco mode and set Max Current to 32A. Now exit the app and restart. The Eco mode will revert to 10A not 32A.

Now change to Normal mode and set Max Current to 32A, then change to Eco mode. You can now set Eco mode to 32A Max Current and it will retain your setting correctly.

I think Max Current should be controllable independent of mode.

Thanks for your positive feedback, great to hear it’s working for you.

Unfortunately, there is no way (yet) for the EVSE to know what to SoC of the EV is, although the V3 version does have a basic Tesla API implementation although we have yet to use this to limit the charge.

I think the best solution would be to set the charge limit in the car to 80% or 90% to avoid cycling the battery at high SoC.

This was done by design, to avoid EcoMode exceeding the Max Current settings, some users may be using the EVSE on a limited supply therefore EcoMode should never exceed the max current.

Interesting idea, it’s a niche use case but something we could consider.

1 Like

There may be some confusion here. The battery SOC is not important. I think my preference would be for the contactor to remain ON even when charging is finished. This will allow the car to draw AC power for the AC and not from the battery whatever the SOC.

This is probably a Tesla only requirement, maybe I am the only Tesla owner here?

Apologies, I understand your point. I guess we could consider adding this feature, however the amount of power drawn by the A/C for cabin overheat protection is be relatively small, you will only likely lose a few miles on a sunny afternoon. Maybe not a big issue?

I’m pretty sure you’re not the only Tesla owner on here and certainly not the only Tesla user of an OpenEVSE. We have had quite a lot of EVSE installs under OLEV for Tesla owners.

OK, only about 2kW but because the entire roof is glass the 2kW draw lasts for several hours. So worst case maybe 8kWh. Not a huge amount, say 30 miles worth.

Releasing the contactor is maybe saving a few mW and could possibly extend the life of a component that costs a few pounds. Against this is a very small reduction in the life of an EV battery that costs a small fortune.

Another possible option is to switch off the cabiin overheat protection. The glass roof means a cabin temp of > 60° C and that will stress the main computer which in my case has already been replaced once although not for this reason.

It would be interesting to know what other Tesla owners think. Maybe the contactor release could be an option?

That is really great to hear - well done guys!

Only idea I can think of is if you modify the MQTT feed that triggers the EVSE to say there is enough spare power to charge the car by adding a step that if the temp from the EmonPi is above a set temp it adds enough to the feed to fool the EVSE that the solar spare power is high enough to charge the car so the contactor will turn on.


Thanks John.

In this instance the car has terminated charging because the set point has been reached. The OpenEVSE now goes to sleep but when the cabin temp reaches 39° C the car attempts to run the Air Con from mains power but is prevented because the contactor is off therfore it draws power from the battery even though there is plenty of surplus PV available.

When the OpenEVSE is in normal mode and the car terminates charging the contactor is left on which allows the Air Con to run of mains power.

I don’t know why the contactor is switched off in Eco mode. It can’t be to save milliwatts of power.


It’s nothing to do with saving power. The only reason a charge will stop in EcoMode is when the solar PV generation (or excess power) is less than the minimum charge rate of the vehicle (6A /1.4kW). This is what most users of EcoMode would expect. EVSE will avoid drawing any power from the grid when Eco mode is enabled.

If you want the EVSE to keep the charger switched on when solar PV or excess power les less than the minimum charge rate I would recomend using Normal Mode.

Not in my case. The charge will also stop when the car SOC limit is reached and that is when the contactor opens. Now, when power is required to run the Air Con it can only come from the battery.

It begs the question ‘why turn off the contactor’ in this situation?

This should not happen if there is excess solar. Could it have been a coincidence that the solar excess dropped below the minimum level around the same time as your vehicle reached it’s charging limit? This is nothing in the code to disable the charger when the EV is full when Eco Mode is active. As long as there is excess solar the EV should be able to draw power.

Are you able to log then multigraph Emoncms the EVSE ‘state’ variable together with the EVSE solar feed so we can explore what happened.


Just checked on my system and as @glyn.hudson says the contactor stays in even when the car is charged and there is spare solar power, this means you could modify the MQTT feed, but as it should be sunny if the temperature is high it may not be necessary.


1 Like