Skip to main content
Version: 1.0.0

CT Test

CT Test is divided into three actions, corresponding to three API interfaces;

NOTE This function can only be used in the following two scenarios

  1. Master inverter in a master-slave system
  2. Three-phase single-inverter system

Action 1: Acquire the status of the front inverter and determine whether it meets the CT detection requirements

Request

curl --location -g '{{EU}}/device/getInerterBMSMeterStatus?sn=Z112200109XXX04A' \
--header 'Token: {{TOKEN}}' \

Response

{
"errorCode": 0,
"info": null,
"body": {
"meterStatus": 1,
"checking": 0,
"meterConnected": 1,
"faultArmFlag2": 0,
"deviceStatus": 2
},
"successful": true
}

Explanation of response body

① deviceStatus

**Device work status ** : Does it meet the requirements for continued testing

Status CodeStatus DescriptionPass or fail
0PragmaticFail
1PragmaticFail
2Normal grid connectionPass
3FaultFail
4UpdatingFail
5off-grid power generationPass
-1OfflineFail

② faultArmFlag2

BMS communication status:Whether the requirements for continued testing are met is determined here by fault alarms

Status CodeStatus DescriptionPass or fail
1Alarm, BMS communication abnormalityFail
0No alarms, normal communicationPass

③ meterStatus

Meter access status:Whether the requirements for continued testing

Status CodeStatus DescriptionPass or fail
1Meter access is normalPass
0Meter access anomalyFail

④ checking

Whether a CT test is already in progress to determine if the next action can be taken

Status CodeStatus DescriptionPass or fail
1TestingFail
0WaitingPass

Action 2: Issue a CT test command

Request

curl --location -g '{{EU}}/device/startCheck' \
--header 'Token: {{TOKEN}}' \
--data '{
"deviceSn": "Z112200109XXX04A"
}'

Response

Returns true, representing successful issuance.

{
"errorCode": 0,
"info": null,
"body": true,
"successful": true
}

Request

curl --location -g '{{EU}}/device/getCheckResult?sn=A11220010963004A' \
--header 'Token: {{TOKEN}}' \

Handling of polling results

  1. Step 1: Identify if the detection is complete
    1. Bit1:1; Bit2:0; Testing
    2. Bit1:0; Bit2:0; Test failed
    3. Bit1:0; Bit2:1; Test finished,Start querying the Bit3 bit to recognize the detection result
  2. Step 2: Identify test results
    1. Bit3:0;Test results are normal and the process is over
    2. Bit3:1;The test result is abnormal, the inverter is connected to the meter incorrectly, continue to query the specific cause of the error.
  3. Step 3: Determine the specific exception results, the following is the description of the returned results
    1. phaseFlag:Error code
    2. inverterSide:Standard Line Phase Sequence
    3. smartSide:CT Side Phase Sequence
    4. sensorAns:Test result, 0: normal, 1: abnormal
    5. The rest are not used and are not described

Response

Normal Status

{
"errorCode": 0,
"info": null,
"body": {
"meterCheckConfigVOS": null,
"bit0": 1,
"bit1": 0,
"bit2": 0,
"bit3": null,
"meterStatus": null
},
"successful": true
}

Testing Status

{
"errorCode": 0,
"info": null,
"body": {
"meterCheckConfigVOS": null,
"bit0": 1,
"bit1": 1,
"bit2": 0,
"bit3": null,
"meterStatus": null
},
"successful": true
}

Finish Status

{
"errorCode": 0,
"info": null,
"body": {
"meterCheckConfigVOS": null,
"bit0": 1,
"bit1": 0,
"bit2": 1,
"bit3": 1,
"meterStatus": 1549
},
"successful": true
}

Finish Status-Abnormal(No test results reported, possible interference)

{
"errorCode": 0,
"info": null,
"body": {
"meterCheckConfigVOS": null,
"bit0": 1,
"bit1": 0,
"bit2": 0,
"bit3": null,
"meterStatus": null
},
"successful": true
}

Finish Status(Existence of results reporting)

{
"errorCode": 0,
"info": null,
"body": {
"meterCheckConfigVOS": [
{
"id": "6510f5a18c59e563fb0092d8",
"phaseFlag": "652",
"resultType": "1",
"resultDescri": null,
"resultDescriLanguageCode": "41002",
"inverterSide": "L1",
"smartSide": "L1",
"sensorAns": "1"
},
{
"id": "6510f5a18c59e563fb0092d7",
"phaseFlag": "652",
"resultType": "1",
"resultDescri": null,
"resultDescriLanguageCode": "41002",
"inverterSide": "L2",
"smartSide": "L2",
"sensorAns": "0"
},
{
"id": "6510f5a18c59e563fb0092d6",
"phaseFlag": "652",
"resultType": "1",
"resultDescri": null,
"resultDescriLanguageCode": "41002",
"inverterSide": "L3",
"smartSide": "L3",
"sensorAns": "0"
}
],
"bit0": 1,
"bit1": 0,
"bit2": 1,
"bit3": 1,
"meterStatus": 25901
},
"successful": true
}