Appendix: Communication Interface Parameters

Board Level Data Objects

The data objects for the board itself. These objects are to be interpreted at the CPIM1000 level.

Index.

SubIndex

Description

Payload

Object

Type

Data

Type

Access

Signed

1009.00

Hardware Version

Visible String payload consisting the HWVersion

VAR

Visible String

R

N

100a.00

Software Version

SHA

32-byte SHA representing
the software version of the CPIM1000

ARR[32]

UINT8

R

N

100a.01

Boot version SHA

32-byte SHA representing the boot version of the CPIM1000

ARR[32]

UINT8

R

N

100a.02

Safety Version

SHA

32-byte SHA containing the safety version of the CPIM1000

ARR[32]

UINT8

R

N

100a.03

MIDClosed Measuring Instruments Directive LRS

Version SHA

32-byte SHA containing the mid approved lrs version of the CPIM1000

ARR[32]

UINT8

R

N

100a.80

Device Identity

See Device Identity

ARR[288]

UINT8

R

Y

40.01

Board Status

See Board Status

VAR

UINT32

R

N

40.02

Holster Light

An unsigned 8-bit value controlling the holster light brightness. Off is

represented by 0x00

VAR

UINT8

W

N

40.03

Board Self Test

See Board

VAR

UINT32

R

N

40.04

AC Board Temperature

See AC Board Temperature Register

VAR

UINT32

R

N

40.05

Power Plate Temperature

See Power Plate Temperature Register

VAR

UINT32

R

N

40.0A

Reset Cause

32 bit register

 

Contains a copy of the STM32G473 RCC_CSR Register

VAR

UINT32

R

N

40.0B

Board Voltages 1

32 bit register

 

  • Bit 0 to 15: Power Supply Voltage

  • Bit 16-31: Holster Motor Voltage

VAR

UINT32

R

N

N40.0C

Board Voltages 2

32 bit register

 

  • Bit 0 to 15: MCU Voltage

  • Bit 16-31: Diff Coil Voltage

VAR

UINT32

R

N

40.0D

Device ID (DBGMCU

_IDCODE) 1

32 bit register

 

Contains the STM32G4 DBGMCU_IDCODE code

VAR

UINT32

R

N

40.0E

Diagnostic Register

 

VAR

UINT32

W

N

40.OF

Manufacturing Info

This is a 448-byte chunk of flash reserved for manufacturing information

VAR

Visible String

R

N

40.10

Calibration Data

The calibration data stored in flash memory

ARR[144]

UINT8

R

N

40.11

Meter Log Rate

An 8-bit integer that controls the sample rate for the meter log buffer

VAR

UINT8

W

N

40.13

Thread Flags

See Thread Flags Register

VAR

UINT8

R

N

Device Identity

288 byte payload consisting of the following:

  • CPIM1000 Public Key: 64-byte public key of the CPIM1000

  • Payload Signature: 64-byte signature of the Device Identity

  • UDID: 16-byte unique device identifier of the CPIM1000

  • Reserved: 112 bytes reserved, filled with 0’s

  • Boot Version: 32-byte SHA representing the boot version of the CPIM1000

  • App Version: 32-byte SHA representing the software version of the CPIM1000

  • Safety Version: 32-byte SHA containing the safety version of the CPIM1000

  • LRS Version: 32-byte SHA containing the MIDClosed Measuring Instruments Directive approved LRS Hash of the CPIM1000

Board Status

16-bit register as explained in the table below:

Bit

Name

Meaning

Status register operation

AC Board Response

System Response

0

 

 

 

 

 

BOOT

 

 

 

 

 

Indicates that the

board is booting.

This bit clears

when the board

becomes

operational

 

This is normally

transitory. Will

not charge when

set

 

 

Information only

 

 

 

 

 

1

 

 

 

 

 

INIT Err

 

 

 

 

 

Indicates that an

error occurred

during

initialization

 

 

 

Will not charge

 

 

 

 

 

System should

read the

initialization error

register for

diagnostics and

reboot

2

INIT

Indicates that the firmware is initializing

 

This is normally transitory. Will

not charge when set

Information only

3

STKOVR

The stack has overflowed

 

Will not charge

Reboot required

4

CLK Err

Indicates a Clock error

 

Will not charge

Reboot required

5

RAM Err

Indicates a RAM error

 

Will not charge

Reboot required

6

FLSH Err

Indicates a Flash error

 

Will not charge

Reboot required

7

RESERVED

 

 

 

 

9:8

PPlate Type

01 = North America

10 = Europe

All other values illegal

 

N/A

Verify

10

WDMA

Weld DMA test time out

 

Will not charge

Reboot required

11

CPU Err

Periodic cpu test failed

 

Will not charge

Reboot required

12

ADCClosed Analog-Digital Converter Err

Indicates an ADCClosed Analog-Digital Converter error

 

Will not charge

 

13

THREAD

Safety-critical thread time out

 

Will not charge

Log Thread Register; reboot required

14

GFERR

DiffCoil initialization

 

Will not charge

Log Thread; May recover

15

RESERVED

 

 

 

 

1 See STM32G4 family reference manual, RM0440, 46.6.1 MCU device ID code

Board Self-Test

An unsigned 8-bit value, indicating which initialization step failed. If the board detects a malfunction during initialization, it will not become operational. This value contains a code that indicates the specific malfunction. This is diagnostic information.

AC Board Temperature Register

32-bit register as explained below:

Bit

Name

Function

Details

31:24

RESERVED

N/A

N/A

23:16

LTMP

Left AC Path Temp

See note

15:8

RTMP

Right AC Path Temp

See note

7:0

MTMP

STM32G temp

See note

Note: values are signed 8-bit numbers representing the temperature in °C. Values are clamped to 127 C°.

Power Plate Temperature Register

32-bit register as explained below:

Bit

Name

Function

Details

31:24

RESERVED

N/A

N/A

23:16

Temp 1

Power Plate 3 temperature

See note

15:8

Temp 2

Power Plate 2 temperature

See note

7:0

Temp 3

Power Plate 1 temperature

See note

Note: values are signed 8-bit numbers representing the temperature in °C. Values are clamped to 127 C

Thread Flags Register

8-bit register. Gives information on whether independent threads associated with a safety-critical determination are running as expected

Bit Number

Function

0

Reserved

1

If set, Indicates that the meter process has not completed in 1 second

2

If set, Indicates that the pilot process has not completed in 1 second

3

If set, Indicates that the diff coil process has not completed in 1 second

4

If set, Indicates that the self-tests have not completed in 60 seconds

5

Reserved

6

Reserved

7

Reserved

Port Level Objects

This section lists the object for the individual ports.

Index.

SubIndex

Description

Payload

Object

Type

Data

Type

Access

Signed

41.01

 

41.81

PortStatus

See Port Status

VAR

UINT32

R

N

41.03

 

41.83

Charge Control

32-bit register

 

  • Bit 0: CHA (Charging Control). 0 means charging disabled, 1 means charging enabled. CHA will reset automatically when Pilot status = (State A | State E | State F)

  • Bit 1 to 31L UNUSED

VAR

UINT32

W

N

41.04

 

41.84

SEVCClosed Smart Electric Vehicle Cable

Power

8-bit register

 

  • Bit 0: ENSC (Enable Smart Cable). 0 means smart cable power off, 1 means smart cable power on

  • Bit 1 to 7: UNUSED

VAR

UINT8

RW

N

41.05

 

41.85

Holster Motor

8-bit register

 

  • Bit 0: HLSTP (Holster Motor Control). 0 means move motor pin out, 1 means move motor pin in

  • Bit 1 to 7: UNUSED

VAR

UINT8

RW

N

41.06

 

41.86

Coil Voltage

A floating-point number representing the relay coil voltage. This number is significant only when the REN bit in the Port Status register is set (indicating  the  relay  coil  is

energized).

VAR

FLOAT

R

N

41.07

 

41.80

Holster Sense

32-bit register

 

  • Bit 0 to 11: 12-bit value proportional to the voltage of the motor sense pin. To convert the value to volts, divide by 1241

  • Bit 12 to 31: UNUSED

VAR

UINT32

R

N

42.01

 

42.81

Signed Meter Blob

See Signed Meter Blob

ARR

UINT32

R

Y

42.02

 

42.82

Unsigned Meter Blob

See Unsigned Meter Blob

ARR

UINT32

R

N

43.01

 

43.81

Negative Energy Accumulat

or

Reports the energy transmitted to EVs during the lifetime of the meter. Reported as watt-Hr, formatted as

IEEE single precision floating point

VAR

FLOAT

R

N

43.02

 

43.82

Positive Energy

Accumulat or

Reports the energy transmitted from EVs during the lifetime of the meter.

Reported as watt-Hr, formatted as IEEE single precision floating point

VAR

FLOAT

R

N

43.03

 

43.83

Negative SumISqua red

Reports the Sum (Integral) of I2 for negative currents. Reports in A2- hours or W / Ohm. Returns as IEEE single precision floating point

VAR

FLOAT

R

N

43.04

 

43.84

Positive SumISqua red

Reports the Sum (Integral) of I2 for positive currents. Reports in A2-

hours or W / Ohm. Returns as IEEE single precision floating point

VAR

FLOAT

R

N

44.00

 

44.80

Line 1

Voltage

(Line A – Line D)

Line to Line Voltage for Line 1 in volts

VAR

FLOAT

R

N

44.01

 

44.81

Line 2

Voltage (Line B –

Line D)

Line to Line Voltage for Line 2 in in volts

VAR

FLOAT

R

N

44.02

 

44.82

Line 3

Voltage (Line C – Line D)

Line to Line Voltage for Line 3 in volts

VAR

FLOAT

R

N

45.00

 

45.80

Va

Raw Line A Voltage in volts

VAR

FLOAT

R

N

45.01

 

45.81

Vb

Raw Line B Voltage in volts

VAR

FLOAT

R

N

45.02

 

45.82

Vc

Raw Line C Voltage in volts v

VAR

FLOAT

R

N

45.03

 

45.83

Vd

Raw Line D Voltage in volts

VAR

FLOAT

R

N

47.00

 

47.80

Line A current

Line A current in amps

VAR

FLOAT

R

N

47.01

 

47.81

Line B current

Line B current in volts

VAR

FLOAT

R

N

47.02

 

47.82

Line C current

Line C current in volts

VAR

FLOAT

R

N

47.03

 

47.83

Line D current

Line D current in volts

VAR

FLOAT

R

N

47.04

 

47.84

Current (Single Phase)

Single Phase Current in amps

VAR

FLOAT

R

N

48.00

 

48.80

Line A Power Factor

Line A Power Factor

VAR

FLOAT

R

N

48.01

 

48.81

Line B Power Factor

Line B Power Factor

VAR

FLOAT

R

N

48.02

 

48.83

Line C Power Factor

Line C Power Factor

VAR

FLOAT

R

N

48.03

 

48.83

Line D Power Factor

Line D Power Factor

VAR

FLOAT

R

N

49.00

 

49.80

Apparent Power

Apparent Power in watts

 

 

 

 

49.01

 

49.81

L1

Apparent Power

L1 Apparent Power in watts

 

 

 

 

49.02

 

49.82

L2

Apparent Power

L2 Apparent Power in watts

 

 

 

 

49.03

 

49.83

L3

Apparent Power

L3 Apparent Power in watts

 

 

 

 

4a.01

 

4a.81

Frequency

In Hz

VAR

FLOAT

R

N

4b.01

 

4b.81

Weld Voltage

An internal voltage in volts

VAR

FLOAT

R

N

4b.02

 

4b.82

Pilot Voltage

See Safe Pilot Voltage

VAR

FLOAT

R

N

4b.03

 

4b.83

Ground resistance

An internal resistance measurement in ohms

VAR

FLOAT

R

N

4b.04

 

4b.84

GM Test ADCClosed Analog-Digital Converter

 

VAR

FLOAT

R

N

4b.05

 

4b.85

GM ADCClosed Analog-Digital Converter

 

VAR

FLOAT

R

N

4c.00

 

4c.80

Meter sample

Buffer – VA

Meter Sample buffer Va

 

See Sample Buffers

ARR

INT16

R

N

4c.00

 

4c.80

Meter sample Buffer – IA

Meter Sample buffer for Ia

 

See Sample Buffers

ARR

INT16

R

N

4c.01

 

4c.81

Meter sample Buffer – VB

Meter Sample buffer for Vb

 

See Sample Buffers

ARR

INT16

R

N

4c.02

 

4c.82

Meter sample Buffer – IB

Meter Sample buffer for Ib

 

See Sample Buffers

ARR

INT16

R

N

4c.03

 

4c.83

Meter sample Buffer – VC

Meter Sample buffer for Vc

 

See Sample Buffers

ARR

INT16

R

N

4c.04

 

4c.84

Meter sample Buffer – IC

Meter Sample buffer for Ic

 

See Sample Buffers

ARR

INT16

R

N

4c.05

 

4c.85

Meter sample Buffer – VD

Meter Sample buffer for Vd

 

See Sample Buffers

ARR

INT16

R

N

4c.06

 

4c.86

Meter sample

Buffer – origin

Meter Sample buffer for Id

 

See Sample Buffers

ARR

INT16

R

N

Port Status

32-bit register as explained below.

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

16

 

CHA

SHTRIP

LOGS

 

GMERR

RLYP

Weld

 

R

R

R

R

R

R

R

R

RC

RC

RC

RC

RC

RC

RC

RC

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

 

 

COVR

RSC

RSO

GMF

GFERR

GF

IGF

DCGF

HPOS

HWERR

REN

SAFEP

RC

RC

RC

RC

RC

RC

RC

RC

RC

R

R

R

R

R

R

R

 

Bits indicated “R” are read-only and not sticky.  They represent the condition when read. Bits indicated “RC” are sticky. They will stay clear only when the condition has cleared, and the bit has been cleared by writing a “1” to the register. Unless specifically noted conditions clear when the detected condition resolves. For example, GMF clears when the unit is grounded.

Bit

Name

Meaning

Status register operation

AC Board Response

System Response

2:0

SAFEP

Safety pilot state

see Error! Reference source not found.

Relay will close and remain closed only when SAFEP is safe to charge; Relay will open within 100 ms if pilot is in state A and within 2 seconds when SAFEP is not in safe to charge

System should check that status reported by AC board matches status reported by SEVBClosed Smart Ethernet Vehicle Board

3

REN

Relay coil energized

“1” - the relay

coil is energized (contacts are closed or closing)

“0” - the relay coil is de-

energized

 

Information

only

4

RESERVED

 

 

 

 

5

RESERVED

 

 

 

 

6

DCGF

DC ground fault (EU only)

Sets when fault occurs.

See SHTRIP

Meter logging stops

Read Meter log,

Write clear DCGF

7

IGF

Non-retriable ground fault (N.A. only)

Sets when ground fault occurs.

Fault clears when EVClosed Electric Vehicle disconnects (SAFEP =

State A)

Relay opens Evident ind. Lights

Meter logging stops

Turn off pilot OSC.

Read meter log,

8

GF

Ground Fault (N.A. only)

NA: AC ground fault EU: DC ground fault

Sets when ground fault occurs.

Fault clears when EVClosed Electric Vehicle disconnects (SAFEP =

State A) or after 15 seconds.

Relay opens Evident ind. Blinks. After 15 seconds AND system has done write- clear, relay will close again.

Meter logging stops

Must turn off pilot OSC. Read meter log. After 15 seconds, system may restart charging.

9

GFERR

DiffCoil initialization

Sets when error is detected.

NA: opens the relays.

EU: see SHTRIP.

If persistent, maintenance is required

10

GMF

Grounding monitor fault

Sets when ground input impedance is high

Relay opens Evident ind. Lights Meter logging stops

Turn off pilot OSC; when fault clears system should

retry

11

RSO

Relay stuck open

Sets when a relay contact

that should be closed is open.

 

System should retry. How

many retries, etc., is TBD

12

RSC

relay struck closed

Sets when a relay contact that should be open is closed

NA: Clamp pilot Evident indicator on EU: see SHTRIP

NA:

System should put pilot into state F.

13

COVR

Contact over-current

Sets when the current on any path (A, B, C, or D) exceeds 50 A for 10 seconds or more.

Relay opens

System can retry at reduced power. If persistent reduce “pilot” PWM duty

cycle (or 15118 equivalent).

14-

16

RESERVED

 

 

 

 

17

WELD

Weld detection circuit not operating (minimum voltage not reached)

Sets when the weld detect circuit is not operating or the input voltage is zero.

Stop charging Evident indicator on

System should put pilot into state F

18

RLYP

Incorrect Relay Coil GPIOClosed General Purpose Input Output state

Sets when a GPIOClosed General Purpose Input Output pin is in a

unexpected state

 

 

19

GMERR

Grounding monitor circuit malfunction: GPIOClosed General Purpose Input Output pins wrong or sense signal wrong

Sets when the grounding monitor circuit is not operating (NA only)

NA: Stop charging Evident Indicator on

EU: not applicable

System should turn off oscillator. May retry if condition goes away.

20

RESERVED

 

 

 

 

21

LOGS

Logging stopped

Sets on certain faults

Logging stops

until cleared by software

Capture logs,

then clear LOGS

22

SHTRIP

Shunt trip (EU only)

Sets when RCCBClosed Residual Current Circuit Breaker shunt trip is activated. Cleared by software.

Shunt trip relevant side.

Note: Port is out of service. Maintenance required.

System should clear fault.

23

CHA

Charging Authorized (alias of CHA bit in Port Charge Control Register)

0: charging disabled

1: charging enabled

CHA will reset automatically when Pilot status = (State

A | State E | State F)

 

 

31:24

RESERVED

 

 

 

 

Signed Meter Blob

Byte Stream, containing the signed meter blob at that point in time. This consists of (in order)

  1. Header: 32-bit unsigned integer consisting of

    • Unused: 24-bit unused section

    • Version: 8-bit version number of the blob

  2. SequenceNumber: 4-byte unsigned integer, containing a monotonically increasing sequence number.

  3. PosEnergy – 8-bytes accumulated delivered positive energy in WattHour, stored in IEEE

    double precision of 15 digits

  4. NegEnergy – 8-bytes accumulated delivered negative energy in WattHour, stored in IEEE double precision of 15 digits

  5. PosSumISquared – 8-bytes WattHour/Ohm delivered energy, stored in IEEE double precision of 15 digits

  6. NegativeSumISquared – 8-bytes WattHour/Ohm delivered energy, stored in IEEE double precision of 15 digits

  7. Signature: 512-bit byte stream, containing the ECDSAClosed Elliptic Curve Digital Signature Algorithm secp256k1 signature of the payload

Unsigned Meter Blob

Byte Stream, containing the unsigned meter blob at that point in time. This consists of (in order)

  1. Header: 32-bit unsigned integer consisting of

    • Unused: 24-bit unused section

    • Version: 8-bit version number of the blob

  2. SequenceNumber: 4-byte unsigned integer, containing a monotonically increasing sequence number.

  3. PosEnergy – 8-bytes accumulated delivered positive energy in WattHour, stored in IEEE double precision of 15 digits

  4. NegEnergy – 8-bytes accumulated delivered negative energy in WattHour, stored in IEEE double precision of 15 digits

  5. PosSumISquared – 8-bytes WattHour/Ohm delivered energy, stored in IEEE double precision of 15 digits

  6. NegativeSumISquared – 8-bytes WattHour/Ohm delivered energy, stored in IEEE double precision of 15 digits

  7. Signature: All 0’s and Unused

Safe Pilot Voltage

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

16

 

 

 

 

Maximum

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

 

 

 

 

Minimum

R-0

R-0

R-0

R-0

R-0

R-0

R-0

R-0

RW-0

RW-0

RW-0

RW-1

RW-0

RW-0

RW-0

RW-0

 

Minimum and Maximum are 12 -bit unsigned integers representing the highest and lowest sample values from the Safe Pilot signal. To convert to volts:

V = Value – 2016.5
151.4

Sample Buffers

Each sub-item is an array of SAMPLE_BUFFER_SIZE (currently 800) int16 sample values. Samples are stored at the rate determined by the Meter Log Rate Register. Voltages are deciVolts (tenth of a volt) and currents in centiAmps (one-hundredth of an Amp).

Samples are stored in a circular buffer. The current add point index is available in the Meter Sample Buffer – origin object. Note that reading any of the Meter Sample Buffer object will set the LOGS bit in the port status register. This freezes the buffer until the LOGS bit is cleared by software.