:orphan: .. _everest_interfaces_grid_support: ############ grid_support ############ | Interface implemented by a DER device (inverter / grid-support hardware abstraction). A protocol backend optionally requires this interface to push DER/grid-code directives down to the device, and subscribes to the device's declared capability and to the grid alarms it raises. ********* Variables ********* | **capability**: *object* (:ref:`grid_support-EVSECapability `) | The device's DER capability for an EVSE. Published on startup and on every capability change. The protocol backend uses it to enable its DER device-model component and advertise the supported control modes. | **alarm**: *object* (:ref:`grid_support-GridAlarm `) | Grid event alarm raised by the device. alarm_ended=false marks the condition turning on, alarm_ended=true marks it clearing/turning off. Forwarded upstream by the protocol backend. ******** Commands ******** | **set_active_directives**: *object* | Apply the set of currently active DER directives for one EVSE. Called by the protocol backend whenever the active set changes, and on the backend heartbeat. This is a full replacement of the active set for the given EVSE: the device must apply exactly the directives contained in this call and clear any previously applied directive not present here. An empty directives array clears all active directives for the EVSE. | **directives**: *object* (:ref:`grid_support-ActiveDirectiveSet `) | The active directive set to apply for one EVSE. | **Result**: *object* (:ref:`grid_support-SetDirectivesResponse `) | Whether the device accepted the directive set.