Add extracted tools: CitrineOS, OpenOCPP, ShapeShifter
- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
This commit is contained in:
78
tools/EVerest-main/lib/everest/ieee2030_1_1/README.md
Normal file
78
tools/EVerest-main/lib/everest/ieee2030_1_1/README.md
Normal file
@@ -0,0 +1,78 @@
|
||||
# C++ implementation of IEEE Std 2030.1.1-2021
|
||||
|
||||
This is a C++ open source implementation of the IEEE Std 2030.1.1-2021 communication protocol.
|
||||
|
||||
> **Note:** This is a "rump library" (Work In Progress). It currently implements a subset of the full protocol stack and is not production-ready.
|
||||
|
||||
## Overview
|
||||
|
||||
`libIEEE2030.1.1` implements the digital communication parameters for DC Quick and Bidirectional Chargers as defined in **IEEE Std 2030.1.1-2021**. This standard specifies the interface for rapid energy transfer between Electric Vehicles (EVs) and DC chargers.
|
||||
|
||||
## Relationship to CHAdeMO
|
||||
|
||||
The IEEE 2030.1.1 standard is technically derived from CHAdeMO specifications with the permission of the CHAdeMO Association. Consequently, this library serves as a foundation for systems intended to interoperate with vehicles using the CHAdeMO protocol.
|
||||
|
||||
## Supported Versions
|
||||
|
||||
The library targets the following protocol definitions:
|
||||
* **1.1 / 1.2**
|
||||
* **2.0.1**
|
||||
|
||||
## Compliance and Certification
|
||||
|
||||
Implementation of this library does not grant compliance with CHAdeMO requirements. While the IEEE standard and CHAdeMO share core specifications, commercial chargers require official certification and adherence to CHAdeMO Association governance.
|
||||
|
||||
## Features
|
||||
|
||||
* **CAN Communication:** Handling of standard ID allocation (Vehicle: H'100-H'102, Charger: H'108-H'109).
|
||||
* **Sequence Control:** Basic state machine for charge control sequences (Start, Charging, Stop).
|
||||
* **Error Handling:** Definitions for standard error flags.
|
||||
|
||||
## Integration with EVerest
|
||||
|
||||
This library will be (but is not yet) integrated within the `IEEE2030.1.1` module within [EVerest](https://github.com/EVerest/EVerest) — the complete software stack for your charging station. It is recommended to use EVerest together with this IEEE 2030.1.1 implementation.
|
||||
|
||||
## Dependencies
|
||||
|
||||
To build this library you need [everest-cmake](https://github.com/EVerest/everest-cmake) checkout in the same directory as `libIEEE2030.1.1`. If no `everest-cmake` is available, it is retrieved via FetchContent.
|
||||
|
||||
For Debian GNU/Linux 12 you will need the following dependencies:
|
||||
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install build-essential cmake
|
||||
```
|
||||
|
||||
For Fedora 42+ you will need the following dependencies:
|
||||
|
||||
```bash
|
||||
sudo dnf update
|
||||
sudo dnf install gcc gcc-c++ git make cmake
|
||||
```
|
||||
|
||||
The build system `ninja` is optional.
|
||||
|
||||
## Getting started
|
||||
|
||||
```
|
||||
# Run cmake (BUILD_TESTING to enable/disable unit tests)
|
||||
cmake -S . -B build -G Ninja -DBUILD_TESTING=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
|
||||
|
||||
# Run cmake with disabled compiler warnings
|
||||
cmake -S . -B build -G Ninja -DBUILD_TESTING=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DIEEE2030_COMPILE_OPTIONS_WARNING=""
|
||||
|
||||
# Build
|
||||
ninja -C build
|
||||
|
||||
# Running tests
|
||||
ninja -C build test
|
||||
```
|
||||
|
||||
## Get Involved
|
||||
|
||||
See the [Contribution Guideline](https://everest.github.io/nightly/project/contributing.html) of the EVerest project to get involved.
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the Apache License 2.0. See the [LICENSE](./LICENSE) file for details.
|
||||
|
||||
Reference in New Issue
Block a user