@@ -121,6 +121,54 @@ enum ElectricalComponentStatus {
121121 ELECTRICAL_COMPONENT_STATUS_INACTIVE = 2 ;
122122}
123123
124+ // `ElectricalComponentControlMode` explicitly defines whether an electrical
125+ // component is intended to be active (enabled) or inactive (disabled). This
126+ // intentional setting directly determines component availability to downstream
127+ // agents, applications, and services.
128+ //
129+ // !!! note "Control Mode & Component Availability"
130+ // The Control Mode explicitly represents the user's or automation's
131+ // intention to make the component either ACTIVE or INACTIVE. This directly
132+ // impacts availability:
133+ // - ACTIVE indicates the component is intended to be available and usable
134+ // by downstream agents and services.
135+ // - INACTIVE indicates the component is intended to be unavailable for use
136+ // by downstream agents and services.
137+ //
138+ // !!! note "Relationship with Operational State"
139+ // Control Mode explicitly represents intention, distinct from the
140+ // component's actual internal Operational State.
141+ // Operational State is independently reported by the component hardware
142+ // (e.g., READY, CHARGING, DISCHARGING, ERROR).
143+ //
144+ // !!! caution "Immediate Operational Impact"
145+ // Changing the Control Mode of an electrical component (e.g., via the
146+ // Microgrid API) takes immediate effect on its availability to downstream
147+ // agents and services. Setting a component to `INACTIVE` can thus instantly
148+ // interrupt ongoing operations or cause service disruptions. Setting a
149+ // component to `ACTIVE` may immediately connect it with other components,
150+ // potentially causing electrical damage. Therefore, ensure changes are
151+ // coordinated or planned appropriately to avoid unintended impact and/or
152+ // damages.
153+ //
154+ // !!! example "Control Mode Change Impact"
155+ // If a battery component's Control Mode is switched from `ACTIVE` to
156+ // `INACTIVE`, it immediately becomes unavailable to downstream
157+ // services and agents, potentially disrupting scheduled
158+ // charging/discharging cycles.
159+ enum ElectricalComponentControlMode {
160+ // The control mode is unspecified (should never be explicitly used).
161+ ELECTRICAL_COMPONENT_CONTROL_MODE_UNSPECIFIED = 0 ;
162+
163+ // The component is explicitly enabled and intended to be available for
164+ // downstream usage.
165+ ELECTRICAL_COMPONENT_CONTROL_MODE_ACTIVE = 1 ;
166+
167+ // The component is explicitly disabled and intended to be unavailable for
168+ // downstream usage.
169+ ELECTRICAL_COMPONENT_CONTROL_MODE_INACTIVE = 2 ;
170+ }
171+
124172// Microgrid electrical component details.
125173message ElectricalComponent {
126174 // The component ID.
0 commit comments