This working group focusses on the communication between the charging station (EVerest) and the management system(s) (CPMS)
Meeting Notes:
08 May 2024
Discussed:
- OCPP 2.0.1 edition 3 is out: same message, improved documentation. All known errata have been merged into the spec itself.
- Discussed the problem found with root certificates in folders.
More background info. Certificate is printed, but only the old one.
Might not even have worked before.
- Discussed how to handle 15118 V2G certificate per SECC in case of multiple EVSE. OCPP certificate handling does not seem to support this where 15118-1 gives both options.
02 May 2024
Discussed:
17 April 2024
Discussed:
- Database Migrations now merged. Documentation added to explain how it works. When migrating to this version the first version needs manuel work. After this it will be automatic.
- Size of PRs. Larger or small, pros and cons
- Discussed meeting format: stick to weekly. Try to discuss ongoing on next planned use cases.
10 April 2024
Discussed:
- OCPP 2.0.1 status document merged. When adding new OCPP 2.0.1 features, please update the document.
- Pull request for database migrations is open. Developer documentation will be added.
- Discussed how to handle custom data fields.
3 April 2024
Discussed:
- Function requirement status doc:
- OCPP 2.0.1 status: Piet checked all not yet completed
- OCTT 2.0.1 test cases status: Robert will convert sheet do markdown and put in EVerest documentation or core.
- Configurable TxStart/TxStop points:
- Proposal to put functionality for this in EVerest core, not libOCPP for now. Quicker to implement, this functionality can later be moved to libOCPP.
- Nobody requires this functionality in libOCPP already.
27 March 2024
Discussed:
- Drop websocketpp and move to libwebsockets
- moving websocketpp to new websocket interface appears to require a lot of effort
- discussion about dropping support for websocketpp → decision postponed
- Review pull request process
- Draft PRs can be used for internal reviews
- Once PR is converted for review the maintainers will start the review process
- How to get list of functional requirements up to date
- List of past OCTT test cases
- We will not add this to libocpp since it cannot be guaranteed that tests pass only with using libocpp → Correct integration of libocpp is required
- Such a list could be added to everest-core
20 March 2024
Discussed:
- Optional requirements:
- Long term EVerest should support as much functionality as possible.
- For now it is ok to skip optional requirements.
- If an optional requirement just allows (slightly) incorrect behaviou
- K01.FR.44 specific: we will not implement, this allows bad behavior from a CSMS, not ideal.
- Document implemented use case/functional requirements status:
- Add the list of use cases in one file in Github, make it a table
- Requirement number, status, remark
- Table per functional block
- Add status of Google Sheet in this file
- Add checkmark to the pull request template
Action Items:
- Robert: Make table of OCPP 2.0.1 function requirements in Github
- Robert: Move status from Google sheet into the github list
- Robert: Update pull request template: Add "list of functional requirements updated."
13 March 2024
Discussed
- WebSocket compression. Is required for an CSMS, optional for a Charging Station. But a really nice to have.
- How to setup security profile 2 and 3. Proposal to make an MRE to demonstrate this.
- PKI and governance and policies for validation of certificates
- Device Model
- Currently supports all standardized variables (specified in the OCPP2.0.1 spec)
- Defined mechanism to access EVSE and Connector components upcoming (Piet will create issue)
- Functional requirements are sometimes ambigous because its not clear to wich component a referenced variable belongs to
6 March 2024
Discussed:
- Pull requests: 440 & 452
- Possible multi-threading problem during reconnects and (re)sending message during reconnects: triggering another reconnect 3 seconds later.
- IdToken case insensitive, required by OCPP, where to handle this in EVerest? libOCPP? Some use cases might need case sensitive tokens.
Action Items:
- Put Signed MeterValues on Agenda General Call next week.
- Write documentation on how to change OCPP 2.0.1 CSMS URL.
21 February 2024
CSR flexibility
Update on websocket refactor
OCPP1.6 handling while in Pending
Other:
14 February 2024
General updates
Smart Charging implementation: https://github.com/EVerest/libocpp/issues/468
- Slight incompatabilities between 1.6 and 2.0.1 for Smart Charging make it hard to find a common implementation for both
- Decision made to have separate implementations of OCPP1.6 and OCPP2.0.1 Smart Charging
OCPP Test naming convention: https://github.com/EVerest/libocpp/issues/467
Status: Websocket refactor update @Soumya Subramanya @Maaike Zijderveld @Marc Emmers
Auth Cache Cleanup PR: https://github.com/EVerest/libocpp/pull/243
7 February 2024
When to send signed meter values
- End of the transaction is most logical.
- Looks like code currently does not store values in the DB.
- An libOCPP API change is needed to merge the signed meter values pull request.
- The is an existing old pull request that also provides such a change.
DB Migration tools: See issue: https://github.com/EVerest/libocpp/issues/450
- List of tools to investigate:
- Action Item: Robert will ask LFE for tools used in other projects.
Status OCPP 2.0.1 development:
- Shared sheet is not updated. Current coverage is getting to 100%, but that is not reflected in the sheet as agreed.
- OCTT takes about 2 days to run all tests manually, API for CI/CD integration not yet available
- Action Item: Robert will ask OCA about potential license issues with OCTT running in LFE build pipelines.
31 January 2024:
Faking MeterValue
- Make faking MeterValue and TransactionEvent timestamps a configurable feature
- Keep talking to OCA and OCTT team to find out more detailed requirements
Websocket refactoring:
- Alfen to work on charge_point and websocket interface
- Pionix to support on websocketpp and libwebsocket implementations of the interfaces
- Discussion how we split up PRs (between interfaces and implementations) still ongoing @Soumya to provide feedback
Smart Charging:
- Bug found within clear charging profiles: https://github.com/EVerest/libocpp/issues/432
- Agreed on common base classes for OCPP1.6 and OCPP2.0.1 Smart Charging handling
- Goal is to reuse as much of OCPP1.6 implementation for common smart charging implementation