MicroOcpp icon indicating copy to clipboard operation
MicroOcpp copied to clipboard

Can not pass some OCTT test case for Smart Charging

Open JungHeum-Park opened this issue 1 year ago • 1 comments

Hi. I'm using microocpp v1.1. I'm doing test about Smart Charging with OCTT. But I can't pass 4 test cases.

Failed test cases list. TC_056 Central Smart Charging - TxDefaultProfile TC_066 Get Composite Schedule TC_067 Clear Charging Profile TC_072 Stacking Charging Profiles

Log starts with [MO] is from esp32, with timestamp is from OCTT.

TC_056 When "SetChargingProfile" is done and then "GetCompositeSchedule", the previously set limit is not returned

[MO] Recv: [2, "1fd93fbf-ac86-4701-9464-ba596da46ce5", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":41,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:55:10Z","validTo":"2024-08-22T02:00:18Z","chargingSchedule":{"duration":304,"startSchedule":"2024-08-22T01:55:10Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"1fd93fbf-ac86-4701-9464-ba596da46ce5",{"status":"Accepted"}]
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T01:55:13.615Z, nextChange = 2037-01-01T00:00:00.000Z, limit = {-1.000000,-1.000000,-1}
[MO] Recv: [2, "762d1d8e-e8f5-46a1-97be-48a302c0b229", "GetCompositeSchedule", {"connectorId":1,"duration":300,"chargingRateUnit":"A"}]
[MO] Send: [3,"762d1d8e-e8f5-46a1-97be-48a302c0b229",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T01:55:13.956Z","chargingSchedule":{"duration":300,"startSchedule":"2024-08-22T01:55:13.956Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":-1,"numberPhases":-1}]}}]


[01:55:14:084] [info]  ========================== Starting Main Testcase Steps ==========================
[01:55:14:085] [info]  Entering state SetChargingProfile
[01:55:14:085] [REQUEST]
[01:55:14:085] [msg-out]  [2, "1fd93fbf-ac86-4701-9464-ba596da46ce5", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":41,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:55:10Z","validTo":"2024-08-22T02:00:18Z","chargingSchedule":{"duration":304,"startSchedule":"2024-08-22T01:55:10Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1}]}}}]
[01:55:14:087] [info]  Waiting for response message of type SetChargingProfileResponse
[01:55:14:451] [RESPONSE]
[01:55:14:451] [msg-in]  [3,"1fd93fbf-ac86-4701-9464-ba596da46ce5",{"status":"Accepted"}]
[01:55:14:467] [info]  Received response message of the expected type.
[01:55:14:467] [info]  Reached state SetChargingProfile
[01:55:14:468] [REQUEST]
[01:55:14:468] [msg-out]  [2, "762d1d8e-e8f5-46a1-97be-48a302c0b229", "GetCompositeSchedule", {"connectorId":1,"duration":300,"chargingRateUnit":"A"}]
[01:55:14:468] [info]  Waiting for response message of type GetCompositeScheduleResponse
[01:55:14:799] [RESPONSE]
[01:55:14:799] [msg-in]  [3,"762d1d8e-e8f5-46a1-97be-48a302c0b229",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T01:55:13.956Z","chargingSchedule":{"duration":300,"startSchedule":"2024-08-22T01:55:13.956Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":-1,"numberPhases":-1}]}}]
[01:55:14:808] [info]  Received response message of the expected type.
[01:55:14:809] [warning]  Limit 1 should be 6.000000
[01:55:14:809] [info]  The value of 'Reset CS after testcase' is false
[01:55:14:911] [verdict]  FAIL
[01:55:14:911] [info]  The test case has ended.
[01:55:14:911] [stopped_testcase]  

Test case result : FAIL

TC_066 Length of chargingSchedulePeriod is not aligned with the expected.

[MO] Recv: [2, "9b8b3f08-a1f3-4a69-b627-62943299d715", "GetConfiguration", {"key":["SupportedFeatureProfiles"]}]
[MO] Send: [3,"9b8b3f08-a1f3-4a69-b627-62943299d715",{"configurationKey":[{"key":"SupportedFeatureProfiles","readonly":true,"value":"Core,FirmwareManagement,SmartCharging,RemoteTrigger"}]}]
[MO] Recv: [2, "b5577cf9-ddf7-4ec8-9159-f87409b95913", "GetConfiguration", {"key":["MaxChargingProfilesInstalled"]}]
[MO] Send: [3,"b5577cf9-ddf7-4ec8-9159-f87409b95913",{"configurationKey":[{"key":"MaxChargingProfilesInstalled","readonly":true,"value":"10"}]}]
[MO] Recv: [2, "e807ca03-fa80-4108-b734-fe7966b7bb38", "GetConfiguration", {"key":["ChargingScheduleMaxPeriods"]}]
[MO] Send: [3,"e807ca03-fa80-4108-b734-fe7966b7bb38",{"configurationKey":[{"key":"ChargingScheduleMaxPeriods","readonly":true,"value":"24"}]}]
[MO] Recv: [2, "bf7b6aa5-f8c3-4e96-a75e-56d18ffe617e", "GetConfiguration", {"key":["AuthorizeRemoteTxRequests"]}]
[MO] Send: [3,"bf7b6aa5-f8c3-4e96-a75e-56d18ffe617e",{"configurationKey":[{"key":"AuthorizeRemoteTxRequests","readonly":true,"value":"false"}]}]
[MO] Recv: [2, "7bb631db-1243-46ea-a893-194388fb04cf", "RemoteStartTransaction", {"connectorId":1,"idTag":"289f5765"}]
[MO] warning (Connector.cpp:519): deleted dangling silent or aborted tx for new transaction
[MO] Send: [3,"7bb631db-1243-46ea-a893-194388fb04cf",{"status":"Accepted"}]
[MO] info (StatusNotification.cpp:52): New status: Preparing (connectorId 1)
[MO] Send: [2,"1000028","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"Preparing","timestamp":"2024-08-22T01:56:47.105Z"}]
[MO] Recv: [3, "1000028", {}]
[MO] Recv: WS pong
[MO] Recv: WS pong
[MO] info (Connector.cpp:292): Session mngt: trigger StartTransaction
[MO] info (StartTransaction.cpp:49): StartTransaction initiated
[MO] Send: [2,"1000029","StartTransaction",{"connectorId":1,"idTag":"289f5765","meterStart":0,"timestamp":"2024-08-22T01:56:48.713Z"}]
[MO] info (StatusNotification.cpp:52): New status: SuspendedEV (connectorId 1)
[MO] Recv: [3, "1000029", {"idTagInfo":{"status":"Accepted"},"transactionId":1724291696}]
[MO] info (StartTransaction.cpp:143): Request has been accepted
[MO] Send: [2,"1000030","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"SuspendedEV","timestamp":"2024-08-22T01:56:48.848Z"}]
[MO] Recv: [3, "1000030", {}]
[MO] info (StatusNotification.cpp:52): New status: Charging (connectorId 1)
[MO] Send: [2,"1000031","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"Charging","timestamp":"2024-08-22T01:56:53.219Z"}]
[MO] Recv: [3, "1000031", {}]
[MO] Recv: [2, "123d666c-a591-4749-b471-09446981b79a", "SetChargingProfile", {"connectorId":0,"csChargingProfiles":{"chargingProfileId":42,"stackLevel":0,"chargingProfilePurpose":"ChargePointMaxProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:56:50Z","validTo":"2024-08-22T02:03:39Z","chargingSchedule":{"duration":86404,"startSchedule":"2024-08-22T01:56:50Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":10.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"123d666c-a591-4749-b471-09446981b79a",{"status":"Accepted"}]
[main] Smart Charging allows maximum charge rate: -1, 10, 1
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T01:56:53.625Z, nextChange = 2024-08-23T01:56:54.000Z, limit = {-1.000000,10.000000,1}
[MO] Recv: [2, "8e483ac2-0b83-4b5a-8f1e-e19cf3fcdf11", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":43,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:56:50Z","validTo":"2024-08-22T02:03:39Z","chargingSchedule":{"duration":304,"startSchedule":"2024-08-22T01:56:50Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1},{"startPeriod":60,"limit":10.000000,"numberPhases":1},{"startPeriod":120,"limit":8.000000,"numberPhases":1},{"startPeriod":180,"limit":15.000000,"numberPhases":1},{"startPeriod":260,"limit":8.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"8e483ac2-0b83-4b5a-8f1e-e19cf3fcdf11",{"status":"Accepted"}]
[main] Smart Charging allows maximum charge rate: -1, 6, 1
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T01:56:54.079Z, nextChange = 2024-08-23T01:56:54.000Z, limit = {-1.000000,10.000000,1}
[MO] Recv: [2, "dc6838d3-7dd6-4516-b7b7-fbbe061b0fb2", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":44,"transactionId":1724291696,"stackLevel":0,"chargingProfilePurpose":"TxProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:56:50Z","validTo":"2024-08-22T02:03:39Z","chargingSchedule":{"duration":264,"startSchedule":"2024-08-22T01:56:50Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":8.000000,"numberPhases":1},{"startPeriod":50,"limit":11.000000,"numberPhases":1},{"startPeriod":140,"limit":16.000000,"numberPhases":1},{"startPeriod":200,"limit":6.000000,"numberPhases":1},{"startPeriod":240,"limit":12.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"dc6838d3-7dd6-4516-b7b7-fbbe061b0fb2",{"status":"Accepted"}]
[main] Smart Charging allows maximum charge rate: -1, 8, 1
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T01:56:54.594Z, nextChange = 2024-08-23T01:56:54.000Z, limit = {-1.000000,10.000000,1}
[MO] Recv: [2, "734e9ef9-1e1d-4e53-b819-2a973d2255e5", "GetCompositeSchedule", {"connectorId":1,"duration":400,"chargingRateUnit":"A"}]
[MO] Send: [3,"734e9ef9-1e1d-4e53-b819-2a973d2255e5",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T01:56:54.975Z","chargingSchedule":{"duration":400,"startSchedule":"2024-08-22T01:56:54.975Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":8,"numberPhases":1},{"startPeriod":46,"limit":10,"numberPhases":1},{"startPeriod":136,"limit":10,"numberPhases":1},{"startPeriod":196,"limit":6,"numberPhases":1},{"startPeriod":236,"limit":10,"numberPhases":1},{"startPeriod":260,"limit":8,"numberPhases":1},{"startPeriod":300,"limit":10,"numberPhases":1}]}}]



[01:56:46:160] [info]  ========================= Starting Testcase Preparation ==========================
[01:56:46:160] [REQUEST]
[01:56:46:160] [msg-out]  [2, "9b8b3f08-a1f3-4a69-b627-62943299d715", "GetConfiguration", {"key":["SupportedFeatureProfiles"]}]
[01:56:46:161] [info]  Waiting for response message of type GetConfigurationResponse
[01:56:46:540] [RESPONSE]
[01:56:46:540] [msg-in]  [3,"9b8b3f08-a1f3-4a69-b627-62943299d715",{"configurationKey":[{"key":"SupportedFeatureProfiles","readonly":true,"value":"Core,FirmwareManagement,SmartCharging,RemoteTrigger"}]}]
[01:56:46:560] [info]  Received response message of the expected type.
[01:56:46:561] [REQUEST]
[01:56:46:561] [msg-out]  [2, "b5577cf9-ddf7-4ec8-9159-f87409b95913", "GetConfiguration", {"key":["MaxChargingProfilesInstalled"]}]
[01:56:46:562] [info]  Waiting for response message of type GetConfigurationResponse
[01:56:46:848] [RESPONSE]
[01:56:46:848] [msg-in]  [3,"b5577cf9-ddf7-4ec8-9159-f87409b95913",{"configurationKey":[{"key":"MaxChargingProfilesInstalled","readonly":true,"value":"10"}]}]
[01:56:46:861] [info]  Received response message of the expected type.
[01:56:46:862] [REQUEST]
[01:56:46:862] [msg-out]  [2, "e807ca03-fa80-4108-b734-fe7966b7bb38", "GetConfiguration", {"key":["ChargingScheduleMaxPeriods"]}]
[01:56:46:862] [info]  Waiting for response message of type GetConfigurationResponse
[01:56:47:155] [RESPONSE]
[01:56:47:155] [msg-in]  [3,"e807ca03-fa80-4108-b734-fe7966b7bb38",{"configurationKey":[{"key":"ChargingScheduleMaxPeriods","readonly":true,"value":"24"}]}]
[01:56:47:162] [info]  Received response message of the expected type.
[01:56:47:162] [info]  Entering state Charging
[01:56:47:162] [REQUEST]
[01:56:47:162] [msg-out]  [2, "bf7b6aa5-f8c3-4e96-a75e-56d18ffe617e", "GetConfiguration", {"key":["AuthorizeRemoteTxRequests"]}]
[01:56:47:163] [info]  Waiting for response message of type GetConfigurationResponse
[01:56:47:461] [RESPONSE]
[01:56:47:461] [msg-in]  [3,"bf7b6aa5-f8c3-4e96-a75e-56d18ffe617e",{"configurationKey":[{"key":"AuthorizeRemoteTxRequests","readonly":true,"value":"false"}]}]
[01:56:47:463] [info]  Received response message of the expected type.
[01:56:47:464] [REQUEST]
[01:56:47:464] [msg-out]  [2, "7bb631db-1243-46ea-a893-194388fb04cf", "RemoteStartTransaction", {"connectorId":1,"idTag":"289f5765"}]
[01:56:47:464] [info]  Waiting for response message of type RemoteStartTransactionResponse
[01:56:47:993] [RESPONSE]
[01:56:47:993] [msg-in]  [3,"7bb631db-1243-46ea-a893-194388fb04cf",{"status":"Accepted"}]
[01:56:48:008] [info]  Received response message of the expected type.
[01:56:48:009] [info]  Waiting for request message of type StatusNotificationRequest
[01:56:48:015] [REQUEST]
[01:56:48:015] [msg-in]  [2,"1000028","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"Preparing","timestamp":"2024-08-22T01:56:47.105Z"}]
[01:56:48:048] [info]  Received request message of the expected type.
[01:56:48:049] [RESPONSE]
[01:56:48:049] [msg-out]  [3, "1000028", {}]
[01:56:48:049] [prompt]  Please plug in your cable on EV side.
[01:56:49:728] [REQUEST]
[01:56:49:728] [msg-in]  [2,"1000029","StartTransaction",{"connectorId":1,"idTag":"289f5765","meterStart":0,"timestamp":"2024-08-22T01:56:48.713Z"}]
[01:56:50:388] [info]  Got 'Continue' on the previous API request, continuing.
[01:56:50:388] [api_dismissed]  b18a527a-7411-4660-a329-2c50b0583458
[01:56:50:389] [info]  Waiting for request messages of type StatusNotificationRequest and StartTransactionRequest. Not all message types are mandatory, as some are optional. Please refer to the testcase document to see which ones are mandatory.
[01:56:50:390] [RESPONSE]
[01:56:50:390] [msg-out]  [3, "1000029", {"idTagInfo":{"status":"Accepted"},"transactionId":1724291696}]
[01:56:50:390] [info]  Waiting for request message of type StatusNotificationRequest
[01:56:50:943] [REQUEST]
[01:56:50:943] [msg-in]  [2,"1000030","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"SuspendedEV","timestamp":"2024-08-22T01:56:48.848Z"}]
[01:56:50:955] [RESPONSE]
[01:56:50:955] [msg-out]  [3, "1000030", {}]
[01:56:50:956] [info]  Automatically replying to StatusNotification request (will not be picked up by the testcase): status has to do with SuspendedEV(SE).
[01:56:54:117] [REQUEST]
[01:56:54:117] [msg-in]  [2,"1000031","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"Charging","timestamp":"2024-08-22T01:56:53.219Z"}]
[01:56:54:121] [RESPONSE]
[01:56:54:121] [msg-out]  [3, "1000031", {}]
[01:56:54:122] [info]  Reached state Charging
[01:56:54:122] [info]  Entering state SetChargingProfile
[01:56:54:123] [REQUEST]
[01:56:54:123] [msg-out]  [2, "123d666c-a591-4749-b471-09446981b79a", "SetChargingProfile", {"connectorId":0,"csChargingProfiles":{"chargingProfileId":42,"stackLevel":0,"chargingProfilePurpose":"ChargePointMaxProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:56:50Z","validTo":"2024-08-22T02:03:39Z","chargingSchedule":{"duration":86404,"startSchedule":"2024-08-22T01:56:50Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":10.000000,"numberPhases":1}]}}}]
[01:56:54:124] [info]  Waiting for response message of type SetChargingProfileResponse
[01:56:54:514] [RESPONSE]
[01:56:54:514] [msg-in]  [3,"123d666c-a591-4749-b471-09446981b79a",{"status":"Accepted"}]
[01:56:54:522] [info]  Received response message of the expected type.
[01:56:54:522] [info]  Reached state SetChargingProfile
[01:56:54:522] [info]  Entering state SetChargingProfile
[01:56:54:525] [REQUEST]
[01:56:54:525] [msg-out]  [2, "8e483ac2-0b83-4b5a-8f1e-e19cf3fcdf11", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":43,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:56:50Z","validTo":"2024-08-22T02:03:39Z","chargingSchedule":{"duration":304,"startSchedule":"2024-08-22T01:56:50Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1},{"startPeriod":60,"limit":10.000000,"numberPhases":1},{"startPeriod":120,"limit":8.000000,"numberPhases":1},{"startPeriod":180,"limit":15.000000,"numberPhases":1},{"startPeriod":260,"limit":8.000000,"numberPhases":1}]}}}]
[01:56:54:525] [info]  Waiting for response message of type SetChargingProfileResponse
[01:56:54:969] [RESPONSE]
[01:56:54:969] [msg-in]  [3,"8e483ac2-0b83-4b5a-8f1e-e19cf3fcdf11",{"status":"Accepted"}]
[01:56:54:986] [info]  Received response message of the expected type.
[01:56:54:986] [info]  Reached state SetChargingProfile
[01:56:54:986] [info]  Entering state SetChargingProfile
[01:56:54:987] [REQUEST]
[01:56:54:987] [msg-out]  [2, "dc6838d3-7dd6-4516-b7b7-fbbe061b0fb2", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":44,"transactionId":1724291696,"stackLevel":0,"chargingProfilePurpose":"TxProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:56:50Z","validTo":"2024-08-22T02:03:39Z","chargingSchedule":{"duration":264,"startSchedule":"2024-08-22T01:56:50Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":8.000000,"numberPhases":1},{"startPeriod":50,"limit":11.000000,"numberPhases":1},{"startPeriod":140,"limit":16.000000,"numberPhases":1},{"startPeriod":200,"limit":6.000000,"numberPhases":1},{"startPeriod":240,"limit":12.000000,"numberPhases":1}]}}}]
[01:56:54:988] [info]  Waiting for response message of type SetChargingProfileResponse
[01:56:55:483] [RESPONSE]
[01:56:55:483] [msg-in]  [3,"dc6838d3-7dd6-4516-b7b7-fbbe061b0fb2",{"status":"Accepted"}]
[01:56:55:489] [info]  Received response message of the expected type.
[01:56:55:489] [info]  Reached state SetChargingProfile
[01:56:55:489] [info]  ========================== Starting Main Testcase Steps ==========================
[01:56:55:489] [REQUEST]
[01:56:55:489] [msg-out]  [2, "734e9ef9-1e1d-4e53-b819-2a973d2255e5", "GetCompositeSchedule", {"connectorId":1,"duration":400,"chargingRateUnit":"A"}]
[01:56:55:490] [info]  Waiting for response message of type GetCompositeScheduleResponse
[01:56:55:869] [RESPONSE]
[01:56:55:869] [msg-in]  [3,"734e9ef9-1e1d-4e53-b819-2a973d2255e5",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T01:56:54.975Z","chargingSchedule":{"duration":400,"startSchedule":"2024-08-22T01:56:54.975Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":8,"numberPhases":1},{"startPeriod":46,"limit":10,"numberPhases":1},{"startPeriod":136,"limit":10,"numberPhases":1},{"startPeriod":196,"limit":6,"numberPhases":1},{"startPeriod":236,"limit":10,"numberPhases":1},{"startPeriod":260,"limit":8,"numberPhases":1},{"startPeriod":300,"limit":10,"numberPhases":1}]}}]
[01:56:55:889] [info]  Received response message of the expected type.
[01:56:55:890] [warning]  Length of chargingSchedulePeriod is not aligned with the expected.
[01:56:55:890] [info]  The value of 'Reset CS after testcase' is false
[01:56:55:992] [verdict]  FAIL
[01:56:55:993] [info]  The test case has ended.
[01:56:55:994] [stopped_testcase]  


Test case result : FAIL

TC_067 Limit 1 should be 7.000000

[MO] Recv: [2, "a0272a00-4ed3-4b31-84e4-f533248dcad9", "GetConfiguration", {"key":["SupportedFeatureProfiles"]}]
[MO] Send: [3,"a0272a00-4ed3-4b31-84e4-f533248dcad9",{"configurationKey":[{"key":"SupportedFeatureProfiles","readonly":true,"value":"Core,FirmwareManagement,SmartCharging,RemoteTrigger"}]}]
[MO] Recv: [2, "8bcec90a-560c-4e83-8268-9d5f7a49d339", "GetConfiguration", {"key":["MaxChargingProfilesInstalled"]}]
[MO] Send: [3,"8bcec90a-560c-4e83-8268-9d5f7a49d339",{"configurationKey":[{"key":"MaxChargingProfilesInstalled","readonly":true,"value":"10"}]}]
[MO] Recv: [2, "e145d484-820b-4fc9-9bfd-e814a6c591cc", "GetConfiguration", {"key":["ChargingScheduleMaxPeriods"]}]
[MO] Send: [3,"e145d484-820b-4fc9-9bfd-e814a6c591cc",{"configurationKey":[{"key":"ChargingScheduleMaxPeriods","readonly":true,"value":"24"}]}]
[MO] Recv: [2, "67ca067f-5903-4fd6-a1ae-f56c0f8d1a14", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":49,"stackLevel":1,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T02:00:24Z","validTo":"2024-08-22T02:07:13Z","chargingSchedule":{"duration":404,"startSchedule":"2024-08-22T02:00:24Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1},{"startPeriod":100,"limit":8.000000,"numberPhases":1},{"startPeriod":200,"limit":10.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"67ca067f-5903-4fd6-a1ae-f56c0f8d1a14",{"status":"Accepted"}]
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T02:00:27.878Z, nextChange = 2037-01-01T00:00:00.000Z, limit = {-1.000000,-1.000000,-1}
[MO] Recv: [2, "0904af81-1970-49cc-893e-bab74332bf31", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":50,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T02:00:24Z","validTo":"2024-08-22T02:07:13Z","chargingSchedule":{"duration":404,"startSchedule":"2024-08-22T02:00:24Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":7.000000,"numberPhases":1},{"startPeriod":100,"limit":9.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"0904af81-1970-49cc-893e-bab74332bf31",{"status":"Accepted"}]
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T02:00:28.307Z, nextChange = 2037-01-01T00:00:00.000Z, limit = {-1.000000,-1.000000,-1}
[MO] Recv: [2, "f9a0cdba-5ef1-44ef-b196-3eeaa2b621ad", "SetChargingProfile", {"connectorId":0,"csChargingProfiles":{"chargingProfileId":51,"stackLevel":0,"chargingProfilePurpose":"ChargePointMaxProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T02:00:25Z","validTo":"2024-08-22T02:07:14Z","chargingSchedule":{"duration":86404,"startSchedule":"2024-08-22T02:00:27Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":11.000000,"numberPhases":1},{"startPeriod":200,"limit":12.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"f9a0cdba-5ef1-44ef-b196-3eeaa2b621ad",{"status":"Accepted"}]
[main] Smart Charging allows maximum charge rate: -1, 11, 1
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T02:00:28.721Z, nextChange = 2024-08-22T02:03:47.000Z, limit = {-1.000000,11.000000,1}
[MO] Recv: [2, "9485fcf7-a963-4101-9473-7d07ba15fdb6", "ClearChargingProfile", {"id":49}]
[MO] Send: [3,"9485fcf7-a963-4101-9473-7d07ba15fdb6",{"status":"Accepted"}]
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T02:00:29.070Z, nextChange = 2024-08-22T02:03:47.000Z, limit = {-1.000000,11.000000,1}
[MO] Recv: [2, "a927203f-eb25-484f-8ef0-9b405ed7963c", "GetCompositeSchedule", {"connectorId":1,"duration":350,"chargingRateUnit":"A"}]
[MO] Send: [3,"a927203f-eb25-484f-8ef0-9b405ed7963c",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T02:00:29.455Z","chargingSchedule":{"duration":350,"startSchedule":"2024-08-22T02:00:29.455Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":11,"numberPhases":1},{"startPeriod":198,"limit":12,"numberPhases":1}]}}]






[02:00:27:278] [info]  ========================= Starting Testcase Preparation ==========================
[02:00:27:278] [REQUEST]
[02:00:27:278] [msg-out]  [2, "a0272a00-4ed3-4b31-84e4-f533248dcad9", "GetConfiguration", {"key":["SupportedFeatureProfiles"]}]
[02:00:27:279] [info]  Waiting for response message of type GetConfigurationResponse
[02:00:27:626] [RESPONSE]
[02:00:27:626] [msg-in]  [3,"a0272a00-4ed3-4b31-84e4-f533248dcad9",{"configurationKey":[{"key":"SupportedFeatureProfiles","readonly":true,"value":"Core,FirmwareManagement,SmartCharging,RemoteTrigger"}]}]
[02:00:27:639] [info]  Received response message of the expected type.
[02:00:27:639] [REQUEST]
[02:00:27:639] [msg-out]  [2, "8bcec90a-560c-4e83-8268-9d5f7a49d339", "GetConfiguration", {"key":["MaxChargingProfilesInstalled"]}]
[02:00:27:640] [info]  Waiting for response message of type GetConfigurationResponse
[02:00:27:931] [RESPONSE]
[02:00:27:931] [msg-in]  [3,"8bcec90a-560c-4e83-8268-9d5f7a49d339",{"configurationKey":[{"key":"MaxChargingProfilesInstalled","readonly":true,"value":"10"}]}]
[02:00:27:940] [info]  Received response message of the expected type.
[02:00:27:940] [REQUEST]
[02:00:27:940] [msg-out]  [2, "e145d484-820b-4fc9-9bfd-e814a6c591cc", "GetConfiguration", {"key":["ChargingScheduleMaxPeriods"]}]
[02:00:27:941] [info]  Waiting for response message of type GetConfigurationResponse
[02:00:28:239] [RESPONSE]
[02:00:28:239] [msg-in]  [3,"e145d484-820b-4fc9-9bfd-e814a6c591cc",{"configurationKey":[{"key":"ChargingScheduleMaxPeriods","readonly":true,"value":"24"}]}]
[02:00:28:241] [info]  Received response message of the expected type.
[02:00:28:241] [info]  Entering state SetChargingProfile
[02:00:28:242] [REQUEST]
[02:00:28:242] [msg-out]  [2, "67ca067f-5903-4fd6-a1ae-f56c0f8d1a14", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":49,"stackLevel":1,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T02:00:24Z","validTo":"2024-08-22T02:07:13Z","chargingSchedule":{"duration":404,"startSchedule":"2024-08-22T02:00:24Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1},{"startPeriod":100,"limit":8.000000,"numberPhases":1},{"startPeriod":200,"limit":10.000000,"numberPhases":1}]}}}]
[02:00:28:243] [info]  Waiting for response message of type SetChargingProfileResponse
[02:00:28:716] [RESPONSE]
[02:00:28:716] [msg-in]  [3,"67ca067f-5903-4fd6-a1ae-f56c0f8d1a14",{"status":"Accepted"}]
[02:00:28:724] [info]  Received response message of the expected type.
[02:00:28:724] [info]  Reached state SetChargingProfile
[02:00:28:724] [info]  Entering state SetChargingProfile
[02:00:28:725] [REQUEST]
[02:00:28:725] [msg-out]  [2, "0904af81-1970-49cc-893e-bab74332bf31", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":50,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T02:00:24Z","validTo":"2024-08-22T02:07:13Z","chargingSchedule":{"duration":404,"startSchedule":"2024-08-22T02:00:24Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":7.000000,"numberPhases":1},{"startPeriod":100,"limit":9.000000,"numberPhases":1}]}}}]
[02:00:28:725] [info]  Waiting for response message of type SetChargingProfileResponse
[02:00:29:149] [RESPONSE]
[02:00:29:149] [msg-in]  [3,"0904af81-1970-49cc-893e-bab74332bf31",{"status":"Accepted"}]
[02:00:29:165] [info]  Received response message of the expected type.
[02:00:29:165] [info]  Reached state SetChargingProfile
[02:00:29:165] [info]  Entering state SetChargingProfile
[02:00:29:166] [REQUEST]
[02:00:29:166] [msg-out]  [2, "f9a0cdba-5ef1-44ef-b196-3eeaa2b621ad", "SetChargingProfile", {"connectorId":0,"csChargingProfiles":{"chargingProfileId":51,"stackLevel":0,"chargingProfilePurpose":"ChargePointMaxProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T02:00:25Z","validTo":"2024-08-22T02:07:14Z","chargingSchedule":{"duration":86404,"startSchedule":"2024-08-22T02:00:27Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":11.000000,"numberPhases":1},{"startPeriod":200,"limit":12.000000,"numberPhases":1}]}}}]
[02:00:29:166] [info]  Waiting for response message of type SetChargingProfileResponse
[02:00:29:557] [RESPONSE]
[02:00:29:557] [msg-in]  [3,"f9a0cdba-5ef1-44ef-b196-3eeaa2b621ad",{"status":"Accepted"}]
[02:00:29:568] [info]  Received response message of the expected type.
[02:00:29:568] [info]  Reached state SetChargingProfile
[02:00:29:569] [info]  ========================== Starting Main Testcase Steps ==========================
[02:00:29:570] [REQUEST]
[02:00:29:570] [msg-out]  [2, "9485fcf7-a963-4101-9473-7d07ba15fdb6", "ClearChargingProfile", {"id":49}]
[02:00:29:570] [info]  Waiting for response message of type ClearChargingProfileResponse
[02:00:29:908] [RESPONSE]
[02:00:29:908] [msg-in]  [3,"9485fcf7-a963-4101-9473-7d07ba15fdb6",{"status":"Accepted"}]
[02:00:29:911] [info]  Received response message of the expected type.
[02:00:29:912] [REQUEST]
[02:00:29:912] [msg-out]  [2, "a927203f-eb25-484f-8ef0-9b405ed7963c", "GetCompositeSchedule", {"connectorId":1,"duration":350,"chargingRateUnit":"A"}]
[02:00:29:913] [info]  Waiting for response message of type GetCompositeScheduleResponse
[02:00:30:303] [RESPONSE]
[02:00:30:303] [msg-in]  [3,"a927203f-eb25-484f-8ef0-9b405ed7963c",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T02:00:29.455Z","chargingSchedule":{"duration":350,"startSchedule":"2024-08-22T02:00:29.455Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":11,"numberPhases":1},{"startPeriod":198,"limit":12,"numberPhases":1}]}}]
[02:00:30:318] [info]  Received response message of the expected type.
[02:00:30:321] [warning]  Limit 1 should be 7.000000
[02:00:30:322] [info]  The value of 'Reset CS after testcase' is false
[02:00:30:425] [verdict]  FAIL
[02:00:30:425] [info]  The test case has ended.
[02:00:30:425] [stopped_testcase]  


Test case result : FAIL

TC_072 Length of chargingSchedulePeriod is not aligned with the expected

[MO] Recv: [2, "6d301acf-072e-4c83-a81e-01994fee7ea7", "GetConfiguration", {"key":["SupportedFeatureProfiles"]}]
[MO] Send: [3,"6d301acf-072e-4c83-a81e-01994fee7ea7",{"configurationKey":[{"key":"SupportedFeatureProfiles","readonly":true,"value":"Core,FirmwareManagement,SmartCharging,RemoteTrigger"}]}]
[MO] Recv: [2, "ec350afd-93e0-45af-8fea-8002057729ad", "GetConfiguration", {"key":["MaxChargingProfilesInstalled"]}]
[MO] Send: [3,"ec350afd-93e0-45af-8fea-8002057729ad",{"configurationKey":[{"key":"MaxChargingProfilesInstalled","readonly":true,"value":"10"}]}]
[MO] Recv: [2, "4805c239-7bcf-4e57-863d-ff2d448032c9", "GetConfiguration", {"key":["ChargingScheduleMaxPeriods"]}]
[MO] Send: [3,"4805c239-7bcf-4e57-863d-ff2d448032c9",{"configurationKey":[{"key":"ChargingScheduleMaxPeriods","readonly":true,"value":"24"}]}]
[MO] Recv: [2, "f93df8dd-7f4b-4ceb-8e50-57a7766de5a7", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":47,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:58:21Z","validTo":"2024-08-22T02:05:10Z","chargingSchedule":{"duration":404,"startSchedule":"2024-08-22T01:58:21Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1},{"startPeriod":100,"limit":8.000000,"numberPhases":1},{"startPeriod":200,"limit":10.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"f93df8dd-7f4b-4ceb-8e50-57a7766de5a7",{"status":"Accepted"}]
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T01:58:24.746Z, nextChange = 2037-01-01T00:00:00.000Z, limit = {-1.000000,-1.000000,-1}
[MO] Recv: [2, "b968cd39-dd2a-4e17-a836-742b02f202a1", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":48,"stackLevel":1,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:58:21Z","validTo":"2024-08-22T02:05:10Z","chargingSchedule":{"duration":154,"startSchedule":"2024-08-22T01:58:23Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":7.000000,"numberPhases":1},{"startPeriod":100,"limit":9.000000,"numberPhases":1}]}}}]
[MO] Send: [3,"b968cd39-dd2a-4e17-a836-742b02f202a1",{"status":"Accepted"}]
[MO] info (SmartChargingService.cpp:509): New limit for connector 1, scheduled at = 2024-08-22T01:58:25.156Z, nextChange = 2037-01-01T00:00:00.000Z, limit = {-1.000000,-1.000000,-1}
[MO] Recv: [2, "5bfb7f44-8087-4dd3-b434-2950685acfc1", "GetCompositeSchedule", {"connectorId":1,"duration":350,"chargingRateUnit":"A"}]
[MO] Send: [3,"5bfb7f44-8087-4dd3-b434-2950685acfc1",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T01:58:25.486Z","chargingSchedule":{"duration":350,"startSchedule":"2024-08-22T01:58:25.486Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":-1,"numberPhases":-1}]}}]



[01:58:24:180] [info]  ========================= Starting Testcase Preparation ==========================
[01:58:24:181] [REQUEST]
[01:58:24:181] [msg-out]  [2, "6d301acf-072e-4c83-a81e-01994fee7ea7", "GetConfiguration", {"key":["SupportedFeatureProfiles"]}]
[01:58:24:181] [info]  Waiting for response message of type GetConfigurationResponse
[01:58:24:538] [RESPONSE]
[01:58:24:538] [msg-in]  [3,"6d301acf-072e-4c83-a81e-01994fee7ea7",{"configurationKey":[{"key":"SupportedFeatureProfiles","readonly":true,"value":"Core,FirmwareManagement,SmartCharging,RemoteTrigger"}]}]
[01:58:24:541] [info]  Received response message of the expected type.
[01:58:24:541] [REQUEST]
[01:58:24:541] [msg-out]  [2, "ec350afd-93e0-45af-8fea-8002057729ad", "GetConfiguration", {"key":["MaxChargingProfilesInstalled"]}]
[01:58:24:542] [info]  Waiting for response message of type GetConfigurationResponse
[01:58:24:847] [RESPONSE]
[01:58:24:847] [msg-in]  [3,"ec350afd-93e0-45af-8fea-8002057729ad",{"configurationKey":[{"key":"MaxChargingProfilesInstalled","readonly":true,"value":"10"}]}]
[01:58:24:862] [info]  Received response message of the expected type.
[01:58:24:864] [REQUEST]
[01:58:24:864] [msg-out]  [2, "4805c239-7bcf-4e57-863d-ff2d448032c9", "GetConfiguration", {"key":["ChargingScheduleMaxPeriods"]}]
[01:58:24:865] [info]  Waiting for response message of type GetConfigurationResponse
[01:58:25:159] [RESPONSE]
[01:58:25:159] [msg-in]  [3,"4805c239-7bcf-4e57-863d-ff2d448032c9",{"configurationKey":[{"key":"ChargingScheduleMaxPeriods","readonly":true,"value":"24"}]}]
[01:58:25:164] [info]  Received response message of the expected type.
[01:58:25:164] [info]  Entering state SetChargingProfile
[01:58:25:165] [REQUEST]
[01:58:25:165] [msg-out]  [2, "f93df8dd-7f4b-4ceb-8e50-57a7766de5a7", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":47,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:58:21Z","validTo":"2024-08-22T02:05:10Z","chargingSchedule":{"duration":404,"startSchedule":"2024-08-22T01:58:21Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":6.000000,"numberPhases":1},{"startPeriod":100,"limit":8.000000,"numberPhases":1},{"startPeriod":200,"limit":10.000000,"numberPhases":1}]}}}]
[01:58:25:165] [info]  Waiting for response message of type SetChargingProfileResponse
[01:58:25:545] [RESPONSE]
[01:58:25:545] [msg-in]  [3,"f93df8dd-7f4b-4ceb-8e50-57a7766de5a7",{"status":"Accepted"}]
[01:58:25:565] [info]  Received response message of the expected type.
[01:58:25:565] [info]  Reached state SetChargingProfile
[01:58:25:565] [info]  Entering state SetChargingProfile
[01:58:25:566] [REQUEST]
[01:58:25:566] [msg-out]  [2, "b968cd39-dd2a-4e17-a836-742b02f202a1", "SetChargingProfile", {"connectorId":1,"csChargingProfiles":{"chargingProfileId":48,"stackLevel":1,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Absolute","validFrom":"2024-08-22T01:58:21Z","validTo":"2024-08-22T02:05:10Z","chargingSchedule":{"duration":154,"startSchedule":"2024-08-22T01:58:23Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":7.000000,"numberPhases":1},{"startPeriod":100,"limit":9.000000,"numberPhases":1}]}}}]
[01:58:25:567] [info]  Waiting for response message of type SetChargingProfileResponse
[01:58:25:961] [RESPONSE]
[01:58:25:961] [msg-in]  [3,"b968cd39-dd2a-4e17-a836-742b02f202a1",{"status":"Accepted"}]
[01:58:25:967] [info]  Received response message of the expected type.
[01:58:25:967] [info]  Reached state SetChargingProfile
[01:58:25:967] [info]  ========================== Starting Main Testcase Steps ==========================
[01:58:25:967] [REQUEST]
[01:58:25:967] [msg-out]  [2, "5bfb7f44-8087-4dd3-b434-2950685acfc1", "GetCompositeSchedule", {"connectorId":1,"duration":350,"chargingRateUnit":"A"}]
[01:58:25:968] [info]  Waiting for response message of type GetCompositeScheduleResponse
[01:58:26:298] [RESPONSE]
[01:58:26:298] [msg-in]  [3,"5bfb7f44-8087-4dd3-b434-2950685acfc1",{"status":"Accepted","connectorId":1,"scheduleStart":"2024-08-22T01:58:25.486Z","chargingSchedule":{"duration":350,"startSchedule":"2024-08-22T01:58:25.486Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":-1,"numberPhases":-1}]}}]
[01:58:26:308] [info]  Received response message of the expected type.
[01:58:26:320] [warning]  Length of chargingSchedulePeriod is not aligned with the expected.
[01:58:26:321] [info]  The value of 'Reset CS after testcase' is false
[01:58:26:422] [verdict]  FAIL
[01:58:26:423] [info]  The test case has ended.
[01:58:26:423] [stopped_testcase]  


Test case result : FAIL

All other test cases about smartcharging are passed.

I feel like I need to look inside the library to solve this problem, but I have difficulties with it, so I ask for help

JungHeum-Park avatar Aug 22 '24 02:08 JungHeum-Park

Hey @JungHeum-Park,

Did you manage to pass the OCPP Certification? We also have exactly those failed test cases.

PS: we use v1.2.0

Cheers, R

razvanphp avatar May 31 '25 06:05 razvanphp