NotifyChargingLimit

SmartCharging CS->CSMS OCPP 2.0.1

Sent by the Charging Station to inform the CSMS about a local charging limit imposed by the station's energy management system, such as from a local controller or grid signal.

Quick Reference

Required Fields

chargingLimit ChargingLimitType

Object describing the charging limit source and whether it is critical

chargingLimit.chargingLimitSource ChargingLimitSourceEnumType

Source of the limit: EMS, Other, SO (System Operator), or CSO

Optional Fields

chargingLimit.isGridCritical boolean

Indicates if the limit is grid-critical and should override CSMS schedules

evseId integer

EVSE affected by the limit

chargingSchedule array[ChargingScheduleType]

The actual schedule imposed by the local limit

Example Payload

{
  "chargingLimit": {
    "chargingLimitSource": "EMS",
    "isGridCritical": true
  },
  "evseId": 0
}

Example Full Frame

[
  2,
  "msg-001",
  "NotifyChargingLimit",
  {
    "chargingLimit": {
      "chargingLimitSource": "EMS",
      "isGridCritical": true
    },
    "evseId": 0
  }
]

Format: [MessageType, MessageId, Action, Payload]

Overview

NotifyChargingLimit informs the CSMS that the Charging Station has applied a local charging limit from its internal energy management system (EMS) or a grid signal. This lets the CSMS know the actual power available differs from what was scheduled.

When to Send

  • When a local EMS or smart meter imposes a power limit
  • When a grid operator signal reduces available power
  • When a local limit is applied that overrides CSMS profiles

Expected Response

Empty response {}.

Usage Notes

  • isGridCritical: true signals that this limit must be respected even if CSMS sends a higher profile
  • The CSMS should update its view of available capacity accordingly
  • Use ClearedChargingLimit when the local limit is lifted

Testing Tips

  • Send a grid-critical limit and verify the CSMS acknowledges and does not override it
  • Follow up with ClearedChargingLimit when the limit is removed

Common Errors

TypeConstraintViolation

Cause: chargingLimitSource uses an unsupported value

Solution: Use one of: EMS, Other, SO, CSO