Skip to content
Documentation Menu

TC_072_CS — Stacking Charging Profiles

TC_072_CS — Stacking Charging Profiles

Source: OCPP 1.6 — Compliancy Testing Tool — Test Case Document (Trial 2025-06, Draft). System Under Test: Charge Point, page 92.

Identification

FieldValue
Test case nameStacking Charging Profiles
Test case IdTC_072_CS
System under testCharge Point

Description

The Central System sends 2 ChargingProfiles to a Charge Point and then requests (and validates) the composite schedule.

Purpose

To check whether the Charge Point is able to stack ChargingProfiles as specified in OCPP.

Prerequisite(s)

The Charge Point supports the Smart Charging feature profile.

Before (Preparations)

Configuration State(s):

  • N/a

Memory State(s):

  • SetChargingProfile with ChargingProfile 1: chargingProfilePurpose is TxDefaultProfile chargingProfileKind should be Absolute stackLevel should be 0 connectorId<Configured ConnectorId> validFrom<current dateTime - <Configured max time deviation> seconds> validTo<current dateTime + <Configured max time deviation> + 401 seconds> startSchedule<current dateTime - <Configured max time deviation> seconds> numberPhases<Configured numberPhases> ChargingSchedule: duration<400 + <Configured max time deviation> seconds> chargingRateUnit<Configured chargingRateUnit>
  • Note: If <Configured chargingRateUnit> is W, then the limit field will be multiplied by 1000. startPeriod0, limit6 startPeriod100, limit8 startPeriod200, limit10 ChargingProfile 2: chargingProfilePurpose is TxDefaultProfile chargingProfileKind should be Absolute stackLevel should be 1 connectorId<Configured ConnectorId> validFrom<current dateTime - <Configured max time deviation> seconds> validTo<current dateTime + <Configured max time deviation> + 401 seconds> startSchedule<current dateTime - <Configured max time deviation> seconds> numberPhases<Configured numberPhases> ChargingSchedule: duration<150 + <Configured max time deviation> seconds> chargingRateUnit<Configured chargingRateUnit>
  • Note: If <Configured chargingRateUnit> is W, then the limit field will be multiplied by 1000. startPeriod0, limit7 startPeriod100, limit9

Reusable State(s):

  • N/a

Scenario Detail(s)

Charge Point (SUT)Central System (Tool)
2. The Charge Point responds with a GetCompositeSchedule.conf1. The Central System sends a GetCompositeSchedule.req

Tool validation(s)

Charge Point side:

Step 2:

(Message: GetCompositeSchedule.conf) statusAccepted connectorId is <Configured ConnectorId> ChargingSchedule: duration350 chargingRateUnit<Configured chargingRateUnit> scheduleStart<The time the GetCompositeSchedule.req was transmitted +/- <Configured max time deviation>> Note: If <Configured chargingRateUnit> is W, then the limit field will be multiplied by 1000. Note: The period of time between the scheduleStart from the SetChargingProfile.req with ChargingProfile 2 and the scheduleStart from the GetCompositeSchedule.conf is called x. Note: The period of time between the scheduleStart from the SetChargingProfile.req with ChargingProfile 1 and the scheduleStart from the GetCompositeSchedule.conf is called y. startPeriod0, limit7 startPeriod(100 - x), limit9 startPeriod(150 - x + <Configured max time deviation>), limit8 startPeriod(200 - y), limit10

Central System side:

Step 1:

(Message: GetCompositeSchedule.req)

  • connectorId is <Configured ConnectorId>
  • duration is 350
  • chargingRateUnit is <Configured Charging Rate Unit>

Expected result(s) / behaviour

Charge Point side:

The Charge Point is able to stack multiple ChargingProfiles from the Central System and return a composite schedule.

Central System side:

  • N/a