SLAC (Signal Level Attenuation Characterization) simulation and implementation according to ISO 15118-3
- A clean, comprehensive, and executable specification of the EV/EVSE matching process as described in ISO 15118-3.
- A portable, robust and correct implementation in idiomatic C++20.
The project includes an executable SLAC model (simulation) which needs https://github.com/cepsdev/machines4ceps.git as runtime environment - any unixish OS will run the simulation. SLAC MMEs are directly supported, i.e. the model operates with real SLAC messages. However, SLAC messages are send/received via an SCTP connection (That's TCP with preserved message boundaries and some fancy stuff on top - essentially). This approach has major benefits, e.g. the SLAC model can run as a cloud service, but it probably requires a tiny little bit of effort to make it work with your hardware (the details of such a 'routing' mechanism are straightforward and depend on your particular situation). The sctp user-space libraries are required if you intend to build the whole thing, although sctp is part of the Linux Kernel since at least version 2.6 the required libraries for user-space applications are not a default part of most distributions. For Ubuntu derived Linux distributions the sctp user libraries can be obtained by installing the package libsctp-dev (e.g. for Ubuntu execute the following command with elevated privileges: # apt install libsctp-dev).