Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

115 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SmartEVSE v3

GitHub release

An open source EVSE (Electric Vehicle Supply Equipment).

Changes to original firmware v3.0.0

  • Adaptation for a 3 phases installation with single phase fixed cable or socket
  • New solar boost feature to allow charging over max mains when solar power surplus available
  • Device screen on Smart/Solar mode renders decimal amps for phases consumption
  • Added scheduled charging with switch on and off time (operating hours)
  • New web status page (UI design, Rest API and no webSockets)
  • New max EVSE temperature menu and settings
  • New RGB leds enabled/disabled menu and settings
  • Support for API meter readings (Sensorbox v2)
  • Massive code refactor to C++ objects
  • Improved timers and tasks
  • Special thanks to Serkri for his work (https://github.com/serkri/SmartEVSE-3)

Status page

Status page

Status page

Status page

$~$

Menu options and configuration

$~$

How to install the hardware


$~$

Setting up WiFi

Documentation from: https://github.com/tzapu/WiFiManager

  • From SmartEVSE menu select WIFI option and SetupWifi suboption

  • In 5 seconds Wifi portal will start and SmartEVSE will display Wifi access point name and password

  • using any wifi enabled device with a browser (computer, phone, tablet) connect to the newly created Access Point

  • because of the Captive Portal and the DNS server you will either get a 'Join to network' type of popup or get any domain you try to access redirected to the configuration portal

  • choose one of the access points scanned, enter password, click save

  • SmartEVSE will try to connect. If successful, it relinquishes control back to your app. If not, reconnect to AP and reconfigure.

  • When your SmartEVSE starts up, it sets it up in Station mode and tries to connect to a previously saved Access Point

  • if this is unsuccessful (or no previous network saved) it moves the SmartEVSE into Access Point mode and spins up a DNS and WebServer (default ip 192.168.4.1)

ESP8266 WiFi Captive Portal Homepage ESP8266 WiFi Captive Portal Configuration

$~$

Building the firmware

$~$

Updating firmware on the device

Important

You need to flash both files firmware.bin and spiffs.bin to fully update firmware.

File firmware.bin contains C++ compiled code and file spiffs.bin contains embeded webserver HTML content.

Caution

YOU CANNOT FLASH HTML content WITH ANOTHER FILENAME rather than spiffs.bin!

Option 1: WiFi flashing

  • Configure SmartEVSE WiFi
  • Open device /update endpoint on browser without HTTPS (ex: http://your-smartevse-address/update)
  • Select the firmware.bin archive
  • After OK, select spiffs.bin
  • If you get FAIL, check your wifi connection and try again
  • After OK, wait 10-30 seconds and your new firmware including the webserver should be online!
  • Repeat same steps with spiffs.bin archive

$~$

Option 2: USB flashing

You can use the following flashing software:

  1. PlatformIO:

    pio run -t upload
    pio run -t uploadfs
    

    THIS IS THE PREFERRED WAY, because it also flashes your bootloader and the partitions.bin; so whatever you messed up, this will fix it!

  2. ESPTool:

    sudo apt install esptool
    esptool --port /dev/ttyUSB0 write_flash 0x10000 firmware.bin
    esptool --port /dev/ttyUSB0 write_flash 0x1c0000 firmware.bin 
    
  3. Flash it with a 3rd party tool: A nice 3rd party tool can be found here: https://github.com/marcelstoer/nodemcu-pyflasher Follow the instructions in the screenshot posted here: dingo35#79 Remember to flash to both partitions, 0x10000 and 0x1c0000 !!!

$~$

Embeded webserver HTML content

  • It is packed inside spiffs.bin file previously built

$~$

Erasing flash memory from the device / factory reset

  • pip install esptool
  • Download boot section https://github.com/SmartEVSE/SmartEVSE-3/files/8864695/boot_app0.zip
  • extract boot_app0.zip
  • Replace COM4 port with your SmartEVSE device port (check via Windows device manager)
esptool.py.exe --chip esp32 --port COM4 --before default_reset --after hard_reset write_flash 0xe000 boot_app0.bin
esptool.py.exe --chip esp32 --port COM4 --before default_reset --after hard_reset erase_region 0xe000 0x2000
esptool.py.exe --chip esp32 --port COM4 erase_flash

About

Smart Electric Vehicle Charging Station (EVSE)

Resources

Stars

5 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages