BlueAndi / evecc

Electric Vehicle Easee Charger Controller

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

evecc

Electric Vehicle Easee Charge Controller

License Repo Status

Purpose

The idea is to drive the electric vehicle charging according to the available solar power.

The EVECC just limits the charging current of the site circuit. A circuit may have one or more chargers. For most users a circuit will have just one charger.

Currently its just a small script, but may change in the future.

Its a early bird! I couldn't test it completly, because my chargers are not registered in the Easee cloud yet. Hopefully it will change in the upcoming weeks.

Overview

Overview

Design

Possible ways to influence the charging current:

  • Per charger
    • maxChargerCurrent
      • Stored non-volatile, which means will survive a powerloss.
      • /api/chargers/{id}/settings
      • Max. access frequcency: 20 requests per minute.
    • dynamicChargerCurrent
      • Stored volatile, which means will not survice a powerloss.
      • /api/chargers/{id}/settings
      • Max. access frequcency: 20 requests per minute.
  • Per circuit
    • maxCircuitCurrent{phase}
      • Stored non-volatile, which means will survive a powerloss.
      • /api/sites/{siteId}/circuits/{circuitId}/settings
      • Max. access frequcency: 20 requests per minute.
    • dynamicCircuitCurrent{phase}
      • Stored volatile, which means will not survice a powerloss.
      • /api/sites/{siteId}/circuits/{circuitId}/settings
      • Max. access frequcency: 20 requests per minute.
      • Used by EVECC.

Installation

$ git clone https://github.com/BlueAndi/evecc.git
$ cd evecc
$ python setup.py install

Usage

Show help information:

$ evecc --help

Examples

Get current charging power limitation

$ evecc --username <username> --password <password> --siteKey <site-key> --circuitPanelId <circuit-panel-id> getCircuitPowerLimit

Result:

11040.0

Limit charging power

The following example limits it to 3.68 kW.

$ evecc --username <username> --password <password> --siteKey <site-key> --circuitPanelId <circuit-panel-id> setCircuitPowerLimit 3680
Single phase loading enabled: 16 A

If the power limit is lower or equal than 3.68 kW, charging will be done via single phase otherwise with all 3 phases.

Setup Development Toolchain

  • Install python 3.9.x
  • Ensure pip, setuptools and wheel are up to date:
$ python -m pip install --upgrade pip setuptools wheel

Informations about Easee Charger

Used Libraries

Issues, Ideas And Bugs

If you have further ideas or you found some bugs, great! Create a issue or if you are able and willing to fix it by yourself, clone the repository and create a pull request.

License

The whole source code is published under the MIT license. Consider the different licenses of the used third party libraries too!

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be licensed as above, without any additional terms or conditions.

About

Electric Vehicle Easee Charger Controller

License:MIT License


Languages

Language:Python 100.0%