#[repr(i32)]pub enum ElectricalComponentDiagnosticCode {
Show 55 variants
Unspecified = 0,
Unknown = 1,
SwitchOnFault = 2,
Undervoltage = 3,
Overvoltage = 4,
Overcurrent = 5,
OvercurrentCharging = 6,
OvercurrentDischarging = 7,
Overtemperature = 8,
Undertemperature = 9,
HighHumidity = 10,
FuseError = 11,
PrechargeError = 12,
PlausibilityError = 13,
FaultCurrent = 14,
ShortCircuit = 15,
ConfigError = 16,
IllegalComponentStateCodeRequested = 17,
HardwareInaccessible = 18,
Internal = 19,
Unauthorized = 20,
ExcessLeakageCurrent = 21,
LowSystemInsulationResistance = 22,
GroundFault = 23,
ArcFault = 24,
FanFault = 25,
HardwareFault = 26,
ProtectiveShutdown = 27,
GridOvervoltage = 30,
GridUndervoltage = 31,
GridOverfrequency = 32,
GridUnderfrequency = 33,
GridDisconnected = 34,
GridVoltageImbalance = 35,
GridAbnormal = 36,
EvUnexpectedPilotFailure = 40,
EvChargingCableUnpluggedFromStation = 41,
EvChargingCableUnpluggedFromEv = 42,
EvChargingCableLockFailed = 43,
EvChargingCableInvalid = 44,
EvConsumerIncompatible = 45,
BatteryImbalance = 50,
BatteryLowSoh = 51,
BatteryBlockError = 52,
BatteryControllerError = 53,
BatteryRelayError = 54,
BatteryCalibrationNeeded = 56,
RelayCycleLimitReached = 60,
PvReversalPolarity = 70,
PvUnderperformance = 71,
PvFault = 72,
PvReverseCurrent = 73,
PvGroundFault = 74,
InverterDcUndervoltage = 80,
InverterDcOvervoltage = 81,
}Expand description
A representation of all possible diagnostic codes that can occur for electrical component, across all their categories. These diagnostic codes can be used to refer to warnings or errors that are reported by the component.
Variants§
Unspecified = 0
Default value. No specific error is specified.
Unknown = 1
The component is reporting an unknown or an undefined error, and the sender cannot parse the component error to any of the variants below.
SwitchOnFault = 2
The component could not be switched on.
Undervoltage = 3
The component is operating under the minimum rated voltage.
Overvoltage = 4
The component is operating over the maximum rated voltage.
Overcurrent = 5
The component is drawing more current than the maximum rated value.
OvercurrentCharging = 6
The component’s consumption current is over the maximum rated value during charging.
OvercurrentDischarging = 7
The component’s production current is over the maximum rated value during discharging.
Overtemperature = 8
The component is operating over the maximum rated temperature.
Undertemperature = 9
The component is operating under the minimum rated temperature.
HighHumidity = 10
The component is exposed to high humidity levels over the maximum rated value.
FuseError = 11
The component’s fuse has blown.
PrechargeError = 12
The component’s precharge unit has failed.
PlausibilityError = 13
There are plausibility issues within the component, causing its internal sanity checks to fail.
FaultCurrent = 14
A fault current has been detected in the component.
ShortCircuit = 15
A short circuit has been detected in the component.
ConfigError = 16
The component has been configured incorrectly.
IllegalComponentStateCodeRequested = 17
A illegal state has been requested for the component.
HardwareInaccessible = 18
The hardware of the component is inaccessible.
Internal = 19
There is an internal error within the component.
The component is unauthorized to perform the last requested action.
ExcessLeakageCurrent = 21
There is excessive leakage current in the component. The threshold for excessive leakage current is defined by the component manufacturer.
LowSystemInsulationResistance = 22
The component is inoperable due to the insulation resistance being too low. The threshold for low insulation resistance is defined by the component manufacturer, or can be configured by the user in the component.
GroundFault = 23
The component is inoperable due to the faulty grounding.
ArcFault = 24
The component is inoperable due to arcing.
FanFault = 25
The component is inoperable due to its fan being faulty.
HardwareFault = 26
The component is inoperable due to the component’s hardware being faulty.
ProtectiveShutdown = 27
The component is inoperable due to its hardware being faulty.
GridOvervoltage = 30
The component is inoperable due to the grid voltage being too high.
GridUndervoltage = 31
The component is inoperable due to the grid voltage being too low.
GridOverfrequency = 32
The component is inoperable due to the grid frequency being too high.
GridUnderfrequency = 33
The component is inoperable due to the grid frequency being too low.
GridDisconnected = 34
The component is inoperable due to the grid being disconnected, despite the AC relay being closed.
GridVoltageImbalance = 35
The component is inoperable due to the grid voltage being imbalanced. This happens when the voltage of one or more phases is outside the acceptable range.
GridAbnormal = 36
The component is inoperable due to the grid being in a non-standard configuration.
EvUnexpectedPilotFailure = 40
There is an unexpected pilot failure in an electric vehicle (EV) component.
EvChargingCableUnpluggedFromStation = 41
The electric vehicle (EV) cable was abruptly unplugged from the charging station.
EvChargingCableUnpluggedFromEv = 42
The electric vehicle (EV) cable was abruptly unplugged from the vehicle.
EvChargingCableLockFailed = 43
There is a cable lock failure with the electric vehicle (EV).
EvChargingCableInvalid = 44
The electric vehicle (EV) charging cable is invalid.
EvConsumerIncompatible = 45
The incompatible electric vehicle (EV) charging plug is invalid.
BatteryImbalance = 50
There is a battery system imbalance.
BatteryLowSoh = 51
The battery has a low state of health (SOH).
BatteryBlockError = 52
At least one of the battery blocks is in an error state.
BatteryControllerError = 53
The battery controller is in an error state.
BatteryRelayError = 54
The battery’s DC contactor or relay is in an error state.
BatteryCalibrationNeeded = 56
The battery needs calibration.
RelayCycleLimitReached = 60
The battery’s DC contactor or relays have reached end of life.
PvReversalPolarity = 70
The PV panels have been connected with reversed polarity.
PvUnderperformance = 71
The PV panels are underperforming.
PvFault = 72
The PV panels have a fault. The component is not able to determine or specify the fault.
PvReverseCurrent = 73
The PV panels are receiving a reverse current.
PvGroundFault = 74
The PV panels are not grounded properly.
InverterDcUndervoltage = 80
The inverter is inoperable due to the DC voltage being too low.
InverterDcOvervoltage = 81
The inverter is inoperable due to the DC voltage being too high.
Implementations§
Source§impl ElectricalComponentDiagnosticCode
impl ElectricalComponentDiagnosticCode
Sourcepub fn is_valid(value: i32) -> bool
pub fn is_valid(value: i32) -> bool
Returns true if value is a variant of ElectricalComponentDiagnosticCode.
Sourcepub fn from_i32(value: i32) -> Option<ElectricalComponentDiagnosticCode>
👎Deprecated: Use the TryFrom<i32> implementation instead
pub fn from_i32(value: i32) -> Option<ElectricalComponentDiagnosticCode>
Use the TryFrom<i32> implementation instead
Converts an i32 to a ElectricalComponentDiagnosticCode, or None if value is not a valid variant.
Source§impl ElectricalComponentDiagnosticCode
impl ElectricalComponentDiagnosticCode
Sourcepub fn as_str_name(&self) -> &'static str
pub fn as_str_name(&self) -> &'static str
String value of the enum field names used in the ProtoBuf definition.
The values are not transformed in any way and thus are considered stable (if the ProtoBuf definition does not change) and safe for programmatic use.
Sourcepub fn from_str_name(value: &str) -> Option<Self>
pub fn from_str_name(value: &str) -> Option<Self>
Creates an enum from field names used in the ProtoBuf definition.
Trait Implementations§
Source§impl Clone for ElectricalComponentDiagnosticCode
impl Clone for ElectricalComponentDiagnosticCode
Source§fn clone(&self) -> ElectricalComponentDiagnosticCode
fn clone(&self) -> ElectricalComponentDiagnosticCode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Default for ElectricalComponentDiagnosticCode
impl Default for ElectricalComponentDiagnosticCode
Source§fn default() -> ElectricalComponentDiagnosticCode
fn default() -> ElectricalComponentDiagnosticCode
Source§impl From<ElectricalComponentDiagnosticCode> for i32
impl From<ElectricalComponentDiagnosticCode> for i32
Source§fn from(value: ElectricalComponentDiagnosticCode) -> i32
fn from(value: ElectricalComponentDiagnosticCode) -> i32
Source§impl Ord for ElectricalComponentDiagnosticCode
impl Ord for ElectricalComponentDiagnosticCode
Source§fn cmp(&self, other: &ElectricalComponentDiagnosticCode) -> Ordering
fn cmp(&self, other: &ElectricalComponentDiagnosticCode) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for ElectricalComponentDiagnosticCode
impl PartialEq for ElectricalComponentDiagnosticCode
Source§fn eq(&self, other: &ElectricalComponentDiagnosticCode) -> bool
fn eq(&self, other: &ElectricalComponentDiagnosticCode) -> bool
self and other values to be equal, and is used by ==.Source§impl PartialOrd for ElectricalComponentDiagnosticCode
impl PartialOrd for ElectricalComponentDiagnosticCode
Source§impl TryFrom<i32> for ElectricalComponentDiagnosticCode
impl TryFrom<i32> for ElectricalComponentDiagnosticCode
Source§type Error = UnknownEnumValue
type Error = UnknownEnumValue
Source§fn try_from(
value: i32,
) -> Result<ElectricalComponentDiagnosticCode, UnknownEnumValue>
fn try_from( value: i32, ) -> Result<ElectricalComponentDiagnosticCode, UnknownEnumValue>
impl Copy for ElectricalComponentDiagnosticCode
impl Eq for ElectricalComponentDiagnosticCode
impl StructuralPartialEq for ElectricalComponentDiagnosticCode
Auto Trait Implementations§
impl Freeze for ElectricalComponentDiagnosticCode
impl RefUnwindSafe for ElectricalComponentDiagnosticCode
impl Send for ElectricalComponentDiagnosticCode
impl Sync for ElectricalComponentDiagnosticCode
impl Unpin for ElectricalComponentDiagnosticCode
impl UnsafeUnpin for ElectricalComponentDiagnosticCode
impl UnwindSafe for ElectricalComponentDiagnosticCode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request