curtrod / simpleevse-wifi Goto Github PK
View Code? Open in Web Editor NEWBrings EVSE WB/DIN into your WiFi
Home Page: https://www.evse-wifi.de
Brings EVSE WB/DIN into your WiFi
Home Page: https://www.evse-wifi.de
I use Home Assistant to check the EVSE status and a separate program to set charging current according to available power.
The Home Assistant readout works well on it's own and charging current setting via API works as well, when they are working separately. But if both are working, the system stops responding to everything, both webpage server and API responses. This continues until I reset or it resolves itself after a while if I stop the simultaneous access from the two programs.
I assume it must be a problem when API call happen at the same time and this causes something to break.
Hi,
wenn die Ladung beendet wird erhöht sich der meterReading Wert um die geladene Energie, siehe evcc-io/evcc#788
evcc_20210323_meterReading.log
Eingesetzte Version: 2.1.1
Hello!
I have a leaf 2019 40 kWh, which is using only one phase and max 6.6 kW to charging => 32A tree phase.
This is my second EVSE, but the first with a cable.
I've put a 220 OHM resistance between PP and PE for 32A on the cable
180924 analoger Steuereingang Simple EVSE WB.pdf
I use the Modbus version.
The problem is that I'm limited to 3 kWh, as reported by the car.
I've tried with another EV station and I get 6 kW.
Where should I start looking?
I’ve upgraded to 0.4.0 version yesterday (now is a newer version).
After update, my wifi is now password protected on the ssid!
Is very hard for me to access the module.
What is the wifi pass? It was initially open (no wifi pass)
This is not really a bug, more a problem with concept.
Problem:
Currently, the system counts the energy and resets the count each time the EVSE is turned off. If you turn the EVSE on and off during charging via API (e.g. for time control or power limitation), you get several separate energy totals, even though the car was connected all the time and it should count as one charge.
Solution:
It would make much more sense to reset the charged energy each time the car connection status goes from 1 (EVSE ready) to 2 (Car connected). This would ensure the energy is added up properly until the car is finally disconnected. It would then reset on next connection of car, keeping the value ready to read via API until then.
Seit ich auf 2.0.4 upgedated habe startet die Ladung nicht. Normalerweise verwende ich evse im Remote mode mit evcc. Wenn es sort hängt bringt auch ein umschalten auf den Normalmode nichts.
Auch nach mehreren Minuten startet die Ladung nicht. Erst nach mehreren Reboots (zwischen Remote- und Normalmode umschalten) hat die Ladung gestartet.
When using the 'always active' mode of version 0.3.0 the charge duration is not calculated correctly because 'millisStopCharging = millis();' is only executed when not in always active mode.
After changing line 782-785 from
if (vehicleCharging) { // EV interrupted charging
vehicleCharging = false;
toDeactivateEVSE = true;
}
to
if (vehicleCharging) { // EV interrupted charging
vehicleCharging = false;
toDeactivateEVSE = true;
millisStopCharging = millis();
}
calculation is done correctly in always active mode.
Is it possible to add a feature to allow enable/disable of EVSE via API when using always-on mode? (or some other form of administrative on/off - allowed/not allowed to charge)
I've integrated with Domoticz to balance charging current and when max current is exceeded the EVSE is disabled so I don't blow the main fuses.
In always-on mode this is not possible atm, the EVSE is not deactivated when setStatus?active=false is used.
Hi,
My Model 3 has a new function called „sheduled charging“. It will start charging on a calculated time.
While it is waiting, it often activates charging for a few seconds, what will deactivate EVSE, so it can‘t start on the calculated time.
Can you please impement a function like „always activated“ or „stay on for 24h“....?
Kind regards
Noel
Hi, thanks for your so far!
I just wanted to kindly ask about the ESP32 support.
Is the integration of the ESP32 still ongoing?
Can someone help with it?
best regards, bas
Hello!
If for some reason I need to reset the ESVE-WIFI settings to default (Access Point), how can I do it?
Is there a hardware way?
I need to move my box go another location and I need to change the WIFi SSID to connect.
If I forget to reset the AP-Client mode, how can I access the WIFi interface on the new location?
I really hope your kid is not LiFo.
IT should be FiFo out just "rolling".
I'm sure this is just a wrong text.
Hello,
I would like to translate all the web pages to Portuguese language. I have already changed the index.html on the websrc but it doesn't change the final compilation.
Please help me I'm a new user and at the initial learning phase.
Thanks for all
Hi,
i managed to bring in all missing libs, but with the last one i receive the following error message....the util folder of course is not available and its not part of the library...
Any idea what I need to do to make it work? Thanks
in file included from C:\TEMP\SimpleEVSE-WiFi\SimpleEVSE-WiFi.ino:27:0:
C:...\libraries\ModbusMaster-0.9/ModbusMaster.h:83:24: fatal error: util/crc16.h: No such file or directory
I try to access my EVSE from the internet. I've forwarded the external port 1234 to port 80 of my EVSE.
I can access the login page, but nothing is happening when I press the login button.
Do I need to do something else? To forward another port?
I'm author of https://github.com/andig/evcc and it would be helpful if the EVSE API could signal if a meter is connected. This would simplify the configuration process for novice users on EVCC side.
I made a simple DIN-rail enclosure design for the WeMOS D1 mini.
It's made of two halves that are screwed together using recessed-head wood screws. There is (just) enough space to install a simple 5V power supply cannibalised from a phone charger. The antenna is exposed for best possible WiFi reception.
Build:
See the picture for the final look (rightmost module).
STLs.zip
ESP holder + SimpleEVSE front plate_step.zip
I have noticed the SimpleEVSE-Wifi defaults to 32A after a reboot even though I have set the MAX CURRENT in settings to 20A. THe webUI shows 32A and that settings is actually active.
This leads to a potential dangerous situation as the car will pull 32A if activated after a power failure.
I have set the ESP to
EVSE Registers
1000: Configured Current 16
1001: Actual Current 16
1002: Vehicle Status 3
1003: PP-Limit 20
1004: Turn off bit 0
1005: Firmware Version 9
1006: EVSE Status 2
2000: Current after boot 32
2001: Modbus Status 1
2002: Min. Current Value 5
2003: Analog Input Config 1
2004: Amps after boot (evse-button) 0
2005: Register 2005 8192
2006: Current Sharing Mode 0
2007: PP-Detection 0
Current after boot is set to 32A, but I have no clue as how to set that to 20A.
Hi,
I've implemented this version in an ESP8266 and when charging Renault Zoe's the charge stops when AC starts to cool the batteries. I've already tried with almost 10 Zoe's and the problem is always the same. If we use SimpleEVSE as provided without modifications problem doesn't occur, problem only occur when power off by software is activated. As when Zoe start to cool batteries the charge is paused for a few secondsand then won't reactivate!
I'm thinking to develop a kind of timer for that charge can restart... any comments?
One short question before i add this element. What if i do not consider a button? will it start when plugged in or it waits until the GUI activates the controller?
What if i use the button and activate and somebody else presses the button again....will it disable again? if this is the case its a little dangerous if i leave the car in public and e.g. kids playing next to this nice box and turn it off "accidentially"....
Thanks a lot for clarification, Norbert
I'd like to support SimpleEVSE-WiFi as part of https://github.com/andig/evcc.
Reading https://www.evse-wifi.de/dokumentation/#HTTP_API I find the JSON structure not matching the code (https://github.com/CurtRod/SimpleEVSE-WiFi/blob/master/src/main.cpp#L1002). According to the code, all elements are prefixed with evse_
and not using camel case.
Since I don't have a SimpleEVSE Wifi for testing, could you please clarify which JSON structure can be expected?
When i press 'Activate EVSE' it won't start charging, 'Deactivate EVSE' turns green after some seconds. I could hear contactor closing and opening in a few seconds interval. Reseting all parameters to default (with no SimpleEVSE-Wifi) charger is working fine.
The default config.json can not be used, as there is a colon missing at the end of line "avgconsumption": "11.5"
. JSON library reports "[ WARN ] Failed to parse config file"
Must read "avgconsumption": "11.5",
to fix the problem.
Hello
I'm using 0.4.1 with Always active mode ON and Disable BasicAuth (Safari Mode) ON
On save & restart, I get the Debug mode ON automatically.
I tried on two devices, the same problem.
Hello,
i can access and change evse wifi settings, i can also see evse register on "show device status" - but i have the problem that i cannot change the register values. If i set them they don't change. Also after restart they are not changed.
I have on register 2001 following value: 25973, i want to change it to 1 but it does not work. I always get modbus error on the main page. I checked all wire connection, i cannot find the problem.
Also if i put the AN pin 5 times to 0 within the first 3 seconds of start i don't get anything changed.
It looks like that there is an issue to switch from AP mode to STA after once AP has been Setup successful.
Trying to go into STA mode always the WEMOS start in fallbacktoAPMode();
as this function is only called in the Setup(); sequence there must be an issue with loading the config.json
Does any body else have this behavior?
in depend of this behavior the [debug] activation is unfortunately after the relevant error messages :-( so the code should be move upwards and the first messages should be always shown.
bool ICACHE_FLASH_ATTR loadConfiguration() {
File configFile = SPIFFS.open("/config.json", "r");
if (!configFile) {
Serial.println(F("[ WARN ] Failed to open config file"));
return false;
}
size_t size = configFile.size();
std::unique_ptr<char[]> buf(new char[size]);
configFile.readBytes(buf.get(), size);
DynamicJsonBuffer jsonBuffer14;
JsonObject& json = jsonBuffer14.parseObject(buf.get());
if (!json.success()) {
Serial.println(F("[ WARN ] Failed to parse config file"));
return false;
}
if (json.containsKey("debug")){
debug = json["debug"];
}
if(debug){
Serial.println("Debug Mode: ON!");
Serial.println(F("[ INFO ] Config file found"));
json.prettyPrintTo(Serial);
Serial.println();
}
else{
Serial.println("Debug Mode: OFF!");
}
```
Hello :) First of all, thank you for this very useful project, it fills a real need!
I'm using it on my home charging station for three primary purposes: for monitoring, to be able to dynamically adjust charging amperage to prevent my main fuses from blowing out (using the setCurrent API) and for the power measurement capability. Configuration: a S0 energy meter, no RFID, no button.
I have two issues:
I think these issues will probably be bothering other people as well, so it would be nice to have two simple checkboxes in config: "Do not deactivate after finished charge" and "Automatically activate the station on power on".
I integrated Simple EVSE to my SmartHome System.
If in unconect the car or stop loading, getParameter returns still the wrong State.
After Login to the Simple EVSE UI the values will be correct.
Here are sample Data from my last charge 2 Days a go. Copied five minutes ago:
{"type":"parameters","list":[{"vehicleState":3,"evseState":false,"actualCurrent":20,"actualPower":0,"duration":1013998861,"energy":5.28,"mileage":35.2,"meterReading":14.91,"currentP1":0,"currentP2":0,"currentP3":0}]}
After login to the UI:
{"type":"parameters","list":[{"vehicleState":1,"evseState":false,"actualCurrent":20,"actualPower":0,"duration":0,"energy":0,"mileage":0,"meterReading":9.63,"currentP1":0,"currentP2":0,"currentP3":0}]}
And the log entry will be also wrong:
{"type":"latestlog","list":[{"uid":"","username":"","timestamp":1558286890,"duration":3653892,"energy":4.39,"price":27},{"uid":"","username":"","timestamp":1558290917,"duration":1014021464,"energy":5.28,"price":27}]}
In the build 0.2.2 the [Save & Reboot] button is complaining that the default PW is shorter than 8 Char, but if I change it and also other settings it doesn't save them to the config file.
Get Log is not working when loging is disabled or the log is empty. The Problem ist that the ESP will crash and not recover.
Fantastic project and the ESP-side of the project is well documented. It would help me a lot to have an electrical schema as well where I can see which pin from the SimpleEVSE (DIN) I would connect to what.
This would be very helpful to wire everything up and order the needed components. Could this be added to the readme.md?
Hi,
I wanna connect my wemos d1 Mini to my Evse wb.
I have to connect tx (gpio5) and rx(gpio4)
Is gnd also needed ?
What’s are the differences between version 1.x.x and version 2.x?
Thanks for your help
solved with v0.2.0 patch 280430
I have a bit of a problem with using in a while when I have a timer setting (to run at a low tariff) so the charging is not started, is the problem of the system itself or is the problem elsewhere?
if it's a system problem, would it be good to run timers and run automatically at the set time?
the kind of problem is that if I press the button on the car connector, I will not be charged as I have any other chargers and I have to re-enter the phone (or the button)
I have a 680R resistor (for 20A limit) PP to GND ..
Is this involved well or do I have to engage PPs on the car?
it was not quite clear to me from the description
Martin
wemos d1 pro with evse wifi does not connect to router with wifi 802.11g, only with 802.11b.
(Same problem with sonoff with tasmota version 8.x, version 6.3 can connect wifi g)
Whats the reason ? Bug in arduino/platformio libraries ?
Is it possible to add MQTT feature to Control the EVSE wit MQTT commands ?
Georg
Hi CurtRod,
I like your project and we are working on something similar.
https://github.com/orgs/CFLadestationen/dashboard
I you don't mind I would like to get in conctact with you. skype:leftaf would be great
This question is about EVSE, not WIFI.
I see new firmware and I have a Pickit 3.
http://evracing.cz/evse/evse-wallbox/
Does anybody know the difference between those two?
evse-wb_modbus_rev15_20200217_stateDpower0.hex (17164) evse-wb_modbus_rev15_20200217_stateDpower1.hex (17164)
2020-02-15 revision 15:
It's not possible to authenticate on iOS and MacOS because apple devices do not allow basic auth without https.
In short, it's not possible to use the webUI from and Apple IOS device at all and It's not possible to use the webUI on a Apple Macbook using the Safari webbrowser. It does work on a Macbook when using Chrome or Firefox.
Hey,
Great project and the charging worked nearly out of the box but it just can't neater the Power with the S0 counter.
It stays at 0.00kW the whole time.
I checked the S0 pins and it drags 3.3V down to 0V every 0.5Wh and the pulse is supposed to be 80ms.
Any Idea what could be wrong?
Thx
Sorry, no issue here, just a question:
Can someone confirm that this webui update procedure is correct?
Reboot.
I'm testing to let Domoticz switch off the EVSE via the API when power usage thresholds exceeds and noticed that the charge duration is logged wrongly sometimes.
The duration in EVSE always starts at 00:00 and stops counting when EVSE is deactivated but the logged duration looks like some counter is not reset sometimes after EVSE is deactivated:
Anyone else seen this (is this a bug)? I'm using version 0.3.0 but also experienced this sometimes with 0.2.8
Sorry to post this in issues as this is no issue at all, but no other chance seen to get in touch with the developer. Is there any chance/hidden website that would provide firmware version of the controller board. I bought it recently but would like to see if its rather up to date or better should buy a Pickit3/4....Thanks Norbert
Set setStatus
and setCurrent
commands always return HTTP 200, even in case of failure (
Line 1558 in 2104dec
I was thinking how to limit the current based on fuse size in my house.
For example:
If I have 20A fuses on single phase, and have consumption of 5A for house appliance, I could set the max charge current to 15A. But in case the consumption increases from 5A to 10A then I would like automatically change the maximum charging current to 10A, and vise versa. In this case the car would take as much as he could to have faster charging.
Is there any way to add additional S0 meter to a different GPIO and make the calculation of max current based on that?
I've bought a residual current detector to detect any DC leakage > 6mA (see http://www.stegen.com/en/ev-products/126-residual-current-sensor.html for details and datasheet).
The RCD signal wire is connected to a relay with takeover contacts which cuts power to the contactor relay and disconnects the CP line in the event of current leakage.
This works like a charm but there is no feedback (aside from a led lighting up) and needs manual reset by switching the mains off and on again.
Is it possible to add a fault or error state triggered via a GPIO pin? (signal wire is active high when a fault is detected and low when the fault is cleared. As the RCD uses 12V an optocoupler or transistor is required.)
In the event of DC leakage the EVSE needs to be switched off and cannot be enabled by button/rfid/api etc until the signal wire is low again and the error state is reset via the GUI (for example, the Activate/Deactivate button can be used to clear the error state).
An extra state via API would be very useful, i.e. vehicleState 4 or an extra field with error true/false would be great and easy to integrate.
It would be nice if one could set a treshhold where the charging will be halted when power/current gets below defined value. The idea is to set that value where the SoC is about 80%. Not all cars support charging stop at a certain SoC value and this way the EVSE could manage this. It increases lifetime of the battery and allow full recuperation right after start driving. E.g. Renault ZOE does not have an option to charge at 80% and the battery must be well below ca. 90% to have full recuperation. So charging at 80% is good for battery and lowers your average consumption.
For each car the owner shuld first estimate/assess the actual current at 80% SoC and then set the treshold accordingly. We could publish the values reported by users and have a table in the GUI so users can select their car if they don't want to asses the exact value for their own car (would the BMS change the current/SoC when the SoH changes?)
What's the difference between ESP8266-Pin and ESP8266-GPIO?
I see that one is using GND, the other not.
Hello,
It is possible to modify/recompile version 1.x to run on an ESP32?
https://maker.pro/esp8266/tutorial/how-to-upgrade-from-esp8266-to-esp32
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.