Code Monkey home page Code Monkey logo

ccs32's Introduction

CCS Charging Experiments with ESP32

Goal

This project intends to use the ESP32-based WT32-ETH01 board together with a tpLink Homeplug modem containing an AR7420, to build the vehicle side of a CCS charging system for electrical cars.

The basis of this port is the python-variant in https://github.com/uhi22/pyPLC

News / Change history / functional status

2023-04-05 Charging loop on Alpitronics works

  • After fixing several topics regarding the NeighborSolicitation, the SDP succeeds, and we come to the charging loop on alpitronics hypercharger.

2023-03-25 LC Display works

  • The three-line-OLED display (see https://github.com/uhi22/SerialToOLED) shows the charging progress.
  • Simulated charging works with simulated EVSE (Win10, pyPlc).
  • The main crash reason was a heap leakage because receive buffer was not free'd. This is fixed.
  • Sporadically still crashes: panic'ed (Unhandled debug exception). Debug exception reason: Stack canary watchpoint triggered (emac_rx)

2023-03-19 PEV state machine until Charging Loop

With simulated EVSE (Win10, pyPlc) on the opposite end, the WT32-ETH01 makes the SLAC, SDP, NeighborDiscovery, TCP and the charging state machine. It runs until the charging loop. Unfortunately, the controller is not really stable. Several ethernet issues are visible:

  • Sometimes the eth raises ETHERNET_EVENT_DISCONNECTED.
  • Sporadically we get emac_esp32_transmit(229): insufficient TX buffer size
  • Often esp.emac: no mem for receive buffer
  • Sporadically a complete crash: panic'ed (Unhandled debug exception). Debug exception reason: Stack canary watchpoint triggered (emac_rx)

2023-03-11 Reading the HomePlug software versions works

Initial Arduino sketch, which is able to send and receive HomePlug messages on the Ethernet port of the WT-ETH01. Debug console is the Arduino IDE, via the RX0/TX0, which are also used for programming. As test, the sketch sends GetSoftwareVersion requests and shows the related responses on the debug console.

Benefits of this solution

  • much faster startup time (2s) compared to the Raspberry or Notebook
  • much less current consumption compared to the Raspberry or Notebook
  • more compact design

Drawbacks

  • no log file for offline analysis

Todos

[x] porting of all required homeplug stuff from python to C. [x] porting the SLAC state machine [ ] porting the Syslog message transmission [x] porting the UDP and SDP [x] integrating TCP [x] integrating the EXI decoder/encoder [x] porting the pev state machine

ccs32's People

Contributors

uhi22 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.