Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

This working group focusses on the communication between the charging station (EVerest) and the management system(s) (CPMS)



Meeting Notes:

6 September 2024

Development Update:

update on #745 → no issue on the PR, review done soon

#760 - still under discussion, some input from Piet

#727 PR still, Kai to review, first impression good to go

Issue #770 - root cause unknown, debug still ongoing

Discussion:

Daniel Moore → 2.1. is now out
WG should align on a implementation plan
→ Discuss implications in a separate meeting
→ Schedule a focussed meeting in 2-3 weeks for 2.1. TODO Robert

Daniel Moore → Approach to use cases translating into business logic
Following the discussion from Zulip - profiles should be stored or not - how to handle external constraints in composite schedules - and how to implement that in EVerest core - discussion ongoing


28 August 2024

- OCPP 2.1 draft 1 public review start next week. OCPP 2.1 draft available to everybody, excluding the schema files. EVerest has gotten an excempt, we are allowed to share the 2.1 draft schema files with developers working on EVerest. As long as we promise to migrate to production schema files as soon as they are available.

- We aligned who is working on which Smart Charging use case

- Discussed GetCompositeSchedule in relation to 15118 SASchedule selection. What to return in a CompositeSchedule in the time between SASchedule send to the EV and the EV selected profile being received. Multiple options are then possible at that point in time. In our view this does not really matter as much. It is unclear what the EV will select. The period should be short. the CSMS will be notified when a schedule is selected by sending a NotifyEVChargingScheduleRequest. See K17.


21 August 2024

Development Update
- K08 pull request: processing review comments. Discussed some details. Datatype optimization not part of this PR yet, that is for the next PR.
- Component Schemas and configuration. Simplified the configuration to (re)initialize the database.
- Hardwired monitors are not possible to setup via the configuration: hardwired, factory default or pre-configured. 
- California pricing for 2.0.1: hope to create a pull request soon.
- K02, K03, K04, K05 is almost done, feature branch is ready.

Smart Charging Alignment
- K01 PR: Small clean ups. Review can be requested.
- K08 PR: one of the OCTT beta test cases does not work. Piet will share the logs of the OCTT tool with Chris. As this is a beta test, so might also be a bug in OCTT.
- K09, K10: Is reviewed by AFS, when approved it can be merged.

Open Mic:
- https://github.com/EVerest/libocpp/issues/752
    - The Python tools were always used without the non-modified files.
    - The License does not allow to publish modified versions of the file
    - We wont re-generate this code anymore. That has been done.
- Composite Schedule: Piet will add a function in EVerest core to retrieve the real composite schedule to be then used in libOCPP. PIONIX will work on this.


7 August 2024

Smart Charging Alignment
  Coury: Pull Request for Smart Charging ready to merge: https://github.com/EVerest/libocpp/pull/711
  Coury: Message handlers for Smart Charging are almost done: we can create a branch for early review, we still need to integrate the external constrains into the Energy Manager.
  Piet: We can pick-up the implementation in the Energy Manager.
  Marc: We will integrate in September. I will be on vacation coming weeks. PIONIX will take over my review tasks.
  
  
Open Issues:
  https://github.com/EVerest/libocpp/issues/713
     Coury: Proposal discussed last week to put Smart Charging profiles in the DB and reload into memory after reboot. But keeping them in-memory is no longer needed when stored in the DB. Proposal to make this a backlog item.
     Agreed
  
  https://github.com/EVerest/libocpp/issues/722
      Coury: Unclear requirement from OCPP
      Robert: I will look into this, I also see a question on the TWG mailing list for this.
  
  https://github.com/EVerest/libocpp/issues/723
      Coury: We implemented K01.FR.19 and 20 and already reject a message in that part.
      Marc: K01.FR.19 and 20 are requirements for the CSMS, so no implmementation for EVErest really needed. 48 is the requirement for EVerest.
    
  
Device Model Integration:
  Piet presented a proposal for a configuration service in EVerest. Simplifying to way variables can be defined in a EVerest module. Now not yet really possible, unless the API of the module is updated: extra call added.
  https://github.com/EVerest/libocpp/tree/doc/variables-api/doc/variableAndConfigurationKeyIntegration
  
  https://github.com/EVerest/everest-core/tree/doc/config-service/doc/config_service

Code Coverage:
  Marc: we discussed code coverage a while ago. Any update? 
  Piet/Kai: Andreas was looking into this. There is a pull request, but that never got merged. We will talk to Andreas and look into this.


17 July 2024

  • Alignment on SmartCharging
  • Loadbalancing integration of SmartCharging (discussion moved from general call to this cloud WG call)


10 July 2024

- Stable release 2024-06 is released
  This release contains the fix for a reported security vulnerability: CVE-2024-37310: https://github.com/EVerest/everest-core/security/advisories/GHSA-8g9q-7qr9-vc96

- Work started implementing OCPP & California Pricing Requirements. 

- Error Handling: Discussed the API for reporting errors via libOCPP to the CPMS. 
    Where should MREC be implemented? This is seen as not part of libOCPP, if libOCPP would map errors to MREC codes, then the translation knowledge is still needed in the EVerest software. Proposal is to have the MREC error codes reported to libOCPP.
    Discussed HardwiredNotifications vs Hardwired monitors. Not much documentation about HardwiredNotifications. 
    
- OCPP 2.1: OCA is organizing a plugfest in September for OCPP 2.1. 
    We discussed a bit how to pick up 2.1. 
    We quickly scanned the current draft delta document. For the core part, the change from StatusNotification to EventReport seems to be be biggest change. 
    Only draft schema files for 2.1 are from June 2023. Robert will ask OCA when new files will be available.
    
- No alignment on Smart Charging today. No JOET team not in the call


3 July 2024

EVerest News:
- A company announced that they have passed OCPP 2.0.1 certification using EVerest libOCPP. Hopefully public announcement soon.

Smart Charging:
- Alignment 
    - Dan and his team focusses on K02 - K04, pull request for the basic stuff almost ready.
    - Marc and his team look into K09 - K10, there should not be overlap. Might start on this in two weeks
        - pull request: https://github.com/EVerest/libocpp/pull/668 is blocking following work, can somebody look at this?
        
    - Discussed architecture related topics with regards to ChargePointMaxProfile and minChargingRate
        - Dan made a very nice sequence diagram that shows the interaction between the different modules when a new charging profile is set via OCPP.
          Currently not ready to add to documentation of EVerest, hope to do this later.


26 June 2024

Development update:
- Variable Monitoring work is progressing, first parts are merged
- Some minor updates
- Smart Charging: JOET is working on Smart Charging, to get to a base that can merged in.
 

EVerest release 2024.6: 
  Feature Freeze expected today. 
  Starting two week test period.


Updated the OCPP roadmap


Discussion on Composite Schedules.
  How to take local and minChargingRate into account.
  Currently libOCPP calculates a CompositeSchedule and send that the the EnergyManager. 
  libOCPP calculates profile per EVSE, it does the load balancing.
  EnergyManager does not get ChargePointMaxProfile, minChargingRate etc.
  So it cannot take these parameters into account when it needs to limit below the CompositeSchedules given by libOCPP.
  JOET will make a proposal for a solution.


05 June 2024

Discussed:

  • Smart charging implementation collaboration until July


29 May 2024

Discussed:

  • Couple of OCPP issues that have come up last weeks:
    • ACPhaseSwitchingSupported
    • 15118 certificate per EVSE: Solved in OCPP 2.0.1 edition 3 on page 
    • 2.0.1: MonitoringBase: Switching monitoring base not 100% clear: different terms used: delete, clear, discard customer monitors. All mean: delete.
    • OCPP 1.6: Rounding meter values

Topics for the agenda next week:

  • OCPP roadmap/timeline


22 May 2024

Discussed:



08 May 2024

Discussed:



  • 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

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
  • No labels