#1109 Proposal: Improving how to locate electric points within an AC electric power system

Rick Jennings Fri 5 Apr

Thanks to Stephen Frank and other members of the EVSE working group for their support, which has led to the creation of this proposal.

We believe that this proposal would benefit Project Haystack's appeal to applications beyond EV charging, including building electrification and battery energy storage.

We request feedback from the Project Haystack community on this proposal. Thanks in advance for your support.


At present, the scope of the phase tag is broad: it applies to electric voltage, current, power, energy, and power factor points in split-phase and 3-phase electric power systems. The appropriate enumerations for the phase tag differ by the physical quantity being measured, which makes validation difficult and can cause confusion. In addition, the existing enumerations do not cover all types of measurements that may apply.

The goals of the proposal are to improve the existing phase tag by:

  • Clarifying definitions for line measurements
  • Adding tags or enumerations for neutral and ground measurements
  • Using globally recognized enum values
  • Specifying line, line-to-neutral, or phase average measurements

This proposal takes these aspects into account and improves how Project Haystack defines the location of an electric point within an AC electric power system.


Globally recognized enum values

Phase enum values "A", "B", "C", "AB", "BC", "CA", etc. are referenced in North America. However, other regions of the world do not use these references (e.g., Europe).

Therefore, we propose to instead use the following enum values:

  • L1
  • L2
  • L3
  • L1-L2
  • L2-L3
  • L3-L1
  • L1-N
  • L2-N
  • L3-N

In relation to three-phase systems in North America, "L1" = "A", "L2" = "B", and "L3" = "C".

Note: These enum values apply to split-phase and 3-phase phase electric power systems. However, split-phase electric power systems would not use "L3", "L2-L3", "L3-L1", and "L3-N" enum values.

New enums to replace the phase enum

We recommend to deprecate the phase tag. Instead, quantity-specific enum tags will define

  • lineVolt: "L1-L2", "L2-L3", or "L3-L1"
  • phaseVolt: "L1-N", "L2-N", or "L3-N"
  • lineCurrent: "L1", "L2", or "L3"
  • phaseCurrent: "L1-L2", "L2-L3", or "L3-L1"
  • linePower: "L1-L2", "L2-L3", or "L3-L1"
  • phasePower: "L1", "L2", or "L3"
  • linePf: "L1-L2", "L2-L3", or "L3-L1"
  • phasePf: "L1", "L2", or "L3"
  • lineEnergy: "L1-L2", "L2-L3", or "L3-L1"
  • phaseEnergy: "L1", "L2", or "L3"

These tags and enumerations are based on the common understanding of "line" vs. "phase" quantities when referencing, voltage, current, power, energy, and power factor in three-phase power systems.

In Xeto (and conceptually), the correct values for these quantity-specific tags can be defined by the following generic enums:

  • ElecLine, which has "L1", "L2", and "L3" values
  • ElecLineToLine, which has "L1-L2", "L2-L3", and "L3-L1" values
  • ElecLineToNeutral, which has "L1-N", "L2-N", and "L3-N" values

These generic enums are applied as follows:

  • lineVolt : ElecLineToLine
  • phaseVolt : ElecLineToNeutral
  • lineCurrent : ElecLine
  • phaseCurrent : ElecLineToLine
  • linePower : ElecLineToLine
  • phasePower : ElecLine
  • linePf : ElecLineToLine
  • phasePf : ElecLine
  • lineEnergy : ElecLineToLine
  • phaseEnergy : ElecLine

Note: volt is intentionally proposed instead of voltage for consistency and backwards compatibility with the existing volt tag, i.e. to avoid further breaking changes to Project Haystack.

A key motivation for this proposal was to balance having database queries that are simple, explicit, and understandable without either (a) listing all possible enumeration values in the query or (b) using and not syntax.

New marker tags for defining an average

We propose to introduce the lineAvg and phaseAvg tags which may be applied to electrical voltage, current, power, energy, and power factor points. When applied these tags indicate a point that is the average of line-to-line, line-to-neutral, or line sensor values (depending on the quantity).

Here are several examples of how these tags may be applied:

  • lineAvg applied to an electric current point is defined as the average of lineCurrent "L1", "L2", and "L3" sensor values
  • lineAvg applied to an electric power point is defined as the average of linePower "L1-L2", "L2-L3", and "L3-L1" sensor values
  • phaseAvg applied to an electric voltage point is defined as the average of phaseVolt "L1-N", "L2-N", and "L3-N" sensor values
  • phaseAvg applied to an electric current point is defined as the average of phaseCurrent "L1-L2", "L2-L3", and "L3-L1" sensor values

Ground marker tag for current measurements

There is no existing way to define a point that measures current on an electrical ground conductor. Therefore we propose to introduce the ground marker tag for this application.

Neutral marker tag for current measurements

At present, the phase: "N" tag is used to designate the current measured on a neutral conductor. Because the phase tag will be deprecated for use with electrical power measurement, we propose adding a neutral marker tag for this application.

Leroy Simms Wed 10 Apr

Thanks for putting this together Rick, I know the topic has been kicked around for awhile now, so it is nice to see someone taking the initiative to get it pushed forward.

Reading through I feel the following definitions seem very clear to me:

  • lineVolt: "L1-L2", "L2-L3", or "L3-L1"
  • phaseVolt: "L1-N", "L2-N", or "L3-N"
  • lineCurrent: "L1", "L2", or "L3"'

However, the phaseCurrent definition seems less clear to me:

  • phaseCurrent: "L1-L2", "L2-L3", or "L3-L1"

I'm not sure I am familar with a phase to phase current reading, and can't get my head around what that would represent. Are their applications for that I am just not aware of, or is that more of a carry over of the formatting of the voltage side?

Rick Jennings Thu 11 Apr

Hi Leroy, thanks for the feedback.

phaseCurrent applies to 3-phase delta connected loads and single phase loads that connect line-to-line in a 3-phase power system. Also, there might be other real world applications for phaseCurrent involving power sources.


There might be (40) single phase, 80A Level 2 AC EVSE fed by a 3-phase, 208Y/120V, 600A panelboard. Typically each of these EVSE have a current sensor and setpoint.

The load management algorithm that would be used to prevent overloads or exceeding demand limits requires an understanding of how each of these EVSE are connected. phaseCurrent provides that insight on point entities to allow for simple queries.

todd gibson Thu 11 Apr

Hi Rick, I agree thanks to you and the WG for the detailed proposal.

Could you provide some point examples which include all tags that would be applied? Curious how existing tags such as pf, avg, volt, current, energy, and power would be used along with the proposed concatenated tags that include these tags.


Rick Jennings Thu 11 Apr

Hi Todd, thanks for the feedback.

We explicitly define every elec point proposed with Xeto specs here. Every spec has a meticulously thought about definition.

FYI, we have proposals brewing to clarify elec setpoints must be either max, min, or effective. The outcome of these proposals would still need applied to elec.xeto.

I realize Xeto is a new concept within Project Haystack and we have more work to do to make this understandable to the broader community. Let me try to explain this in another way.

For example, let's consider elec power points within AC power systems. Here are the possible location related tags with the new proposal:

  • total
  • lineAvg
  • phaseAvg
  • phasePower: "L1"
  • phasePower: "L2"
  • phasePower: "L3"
  • linePower: "L1-L2"
  • linePower: "L2-L3"
  • linePower: "L3-L1"

The power tag would still need to be applied regardless which location is applied. The avg tag can be applied if desired, but we think lineAvg and phaseAvg replace the need for it. Also, there is no need for the formerly defined phase tag.

I believe you would be able to use the original proposal with this example to get an idea of what this looks like for other elec point types pf, volt, current, and energy within AC power systems. Elec points for DC power systems are simpler and described in elec.xeto.

FYI, we intentionally decided not to propose non-aggregate tags, such as phaseDemand and lineDemand, to demand points at this time. The rationale behind this is our understanding that in practice only total demand is applicable or understandable.

We would appreciate any additional feedback you may have. Thanks in advance.

Login or Signup to reply.