https://github.com/dzurikmiroslav/esp32-evse
ESP32 EVSE firmware
https://github.com/dzurikmiroslav/esp32-evse
charging-station esp-idf esp32 evse lua modbus mqtt ota rest
Last synced: about 1 month ago
JSON representation
ESP32 EVSE firmware
- Host: GitHub
- URL: https://github.com/dzurikmiroslav/esp32-evse
- Owner: dzurikmiroslav
- License: gpl-3.0
- Created: 2020-07-14T15:42:52.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2025-08-11T07:06:17.000Z (about 2 months ago)
- Last Synced: 2025-08-11T09:21:42.254Z (about 2 months ago)
- Topics: charging-station, esp-idf, esp32, evse, lua, modbus, mqtt, ota, rest
- Language: C
- Homepage:
- Size: 43.1 MB
- Stars: 103
- Watchers: 14
- Forks: 38
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
- awesome-ev-charging - dzurikmiroslav/esp32-evse
README

J1772 EVSE firmware for ESP32 based devices.

[](https://github.com/dzurikmiroslav/esp32-evse/releases/latest)
[](LICENSE.md)
[](https://github.com/sponsors/dzurikmiroslav)
[](https://dzurikmiroslav.github.io/esp32-evse/web-installer)## Key features
- Hardware abstraction for device design
- Responsive web-interface
- OTA update
- Integrated energy meter
- [REST](https://github.com/dzurikmiroslav/esp32-evse/wiki/Rest) API
- WebDAV
- [Modbus](https://github.com/dzurikmiroslav/esp32-evse/wiki/Modbus) (RS485, TCP)
- [Lua scripting](https://github.com/dzurikmiroslav/esp32-evse/wiki/Lua)
- [Nextion HMI](https://github.com/dzurikmiroslav/esp32-evse/wiki/Nextion)
- Scheduler### Web installer
Easy initial installation of esp32-evse firmware can be performed using your browser (currently Google Chrome or Microsoft Edge).
[ Web installer](https://dzurikmiroslav.github.io/esp32-evse/web-installer)
### Device definition method
_One firmware to rule them all._ Not really :-) one per device platform (ESP32, ESP32-S2...).
There is no need to compile the firmware for your EVSE design.
Source code ist not hardcoded to GPIOs or other hardware design features.
All code is written in ESP-IDF without additional mapping layer like Arduino.All configuration is written outside firmware in configuration file named _board.yaml_ on dedicated partition.
For example, on following scheme is minimal EVSE circuit with ESP32 devkit.
For this circuit there is config file _board.yaml_, for more information's see [YAML schema](board-config/board-config-schema-1.json).
```yaml
deviceName: ESP32 minimal EVSEbuttonGpio: 0
pilot:
gpio: 33
adcChannel: 7
levels: [2410, 2104, 1797, 1491, 265]acRelayGpio: 32
```### Web interface
Fully responsive web interface is accessible local network IP address on port 80.
Dashboard page

Settings page

Mobile dashboard page

## Hardware
### ESP32DevkitC EVSE
Dev board with basic functionality, single phase energy meter, RS485. One side pcb, for DIY makers easy to make at home conditions ;-)
[EasyEDA project](https://oshwlab.com/dzurik.miroslav/esp32-devkit-evse)

### ESP32-S2 EVSE DIY ALPHA
ESP32-S2 based EVSE with advanced functionality, three phase energy meter, RS485, UART, 1WIRE, RCM, socket lock.
[EasyEDA project](https://oshwlab.com/dzurik.miroslav/esp32s2-diy-evse)

Quick demonstration video
[](https://www.youtube.com/shorts/r6YkWEet1aA)
## Donations
ESP32 EVSE firmware is free, but costs money to develop harware and time to develop software.
This gift to the developer would demonstrate your appreciation of this software & hardware and help its future development.[](https://github.com/sponsors/dzurikmiroslav)