Kaynağa Gözat

[Bug Fix][Modularization][Module_Wifi]

2020.12.10 / Folus Wen

Actions:
1. Module_Wifi cancel set ShmPsuData value to 0x00 after initial.

Files:
1. As follow commit history

Image version: D0.00.XX.XXXX.XX
Image checksum: XXXXXXXX

Hardware PWB P/N : XXXXXXX
Hardware Version : XXXXXXX
FolusWen 4 yıl önce
ebeveyn
işleme
4c0b674932

+ 1 - 2
EVSE/Modularization/Module_Wifi.c

@@ -419,8 +419,7 @@ int InitShareMemory()
 		DEBUG_ERROR("shmat ShmPsuData NG \n");
 		#endif
 		result = FAIL;
-	 }
-	memset(ShmPsuData,0,sizeof(struct PsuData));
+	}
 
     return result;
 }

+ 2 - 0
EVSE/Projects/AW-CCS/Apps/Module_InternalComm.c

@@ -771,6 +771,8 @@ unsigned char Query_AC_MCU_Status(unsigned char fd, unsigned char targetAddr, Ac
 			Ret_Buf->pp_state = rx[17];
 			Ret_Buf->rating_current = rx[18];
 			Ret_Buf->rotatory_switch = (rx[19] & 0x0F);
+			Ret_Buf->socket_e.isSocketEMode = (rx[20] & 0x01);
+			Ret_Buf->socket_e.isSocketEPinOn = ((rx[20]>>1) & 0x01);
 
 			result = PASS;
 		}

+ 17 - 4
EVSE/Projects/AW-CCS/Apps/main.c

@@ -2009,7 +2009,7 @@ void get_firmware_version(unsigned char gun_index)
 	strcpy((char*)ShmSysConfigAndInfo->SysInfo.CsuPrimFwRev, ShmCharger->gun_info[gun_index].ver.Version_FW);
 
 	// Get CSU root file system version
-	sprintf((char*)ShmSysConfigAndInfo->SysInfo.CsuRootFsFwRev, "D0.43.00.0000.00");
+	sprintf((char*)ShmSysConfigAndInfo->SysInfo.CsuRootFsFwRev, "D0.44.00.0000.00");
 
 	// Get AC connector type from model name
 	for(uint8_t idx=0;idx<3;idx++)
@@ -4178,6 +4178,17 @@ int main(void)
 						}
 
 					}
+					else if(ShmCharger->gun_info[gun_index].primaryMcuState.socket_e.isSocketEMode)
+					{
+						DEBUG_INFO("Enter Socket-E Mode charging.\n");
+						ShmCharger->gun_info[gun_index].chargingMode = CHARGING_MODE_SOCKETE;
+						if(ShmCharger->gun_info[gun_index].primaryMcuState.socket_e.isSocketEPinOn == CP_STATE_C)
+							setRelay(gun_index,ON);
+						ocpp_copy_userid_to_starttransaction(gun_index);
+						ocpp_set_starttransaction_req(gun_index, ON);
+
+						setChargerMode(gun_index, SYS_MODE_CHARGING);
+					}
 
 					// Unplug charging gun to Idle mode
 					if((ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_A) && (ShmCharger->gun_info[gun_index].isGunPlugged == YES))
@@ -4269,7 +4280,8 @@ int main(void)
 					if((ShmCharger->gun_info[gun_index].rfidReq == ON) ||
 					   (ShmCharger->gun_info[gun_index].bleConfigData.isRequestStop == ON) ||
 					   ocpp_get_remotestop(gun_index)||
-					   (ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState != CP_STATE_C) ||
+					   ((ShmCharger->gun_info[gun_index].chargingMode != CHARGING_MODE_SOCKETE) && ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState != CP_STATE_C) ||
+					   ((ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_SOCKETE) && !ShmCharger->gun_info[gun_index].primaryMcuState.socket_e.isSocketEPinOn) ||
 					   ocpp_get_reset_req() ||
 					   ocpp_get_unlocker_req(gun_index) ||
 					   (ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].schedule.isTriggerStop == ON) ||
@@ -4658,7 +4670,8 @@ int main(void)
 					   (ShmCharger->gun_info[gun_index].isAuthPassEnd) ||
 					   (ShmCharger->gun_info[gun_index].bleConfigData.isRequestStop == ON) ||
 					   ocpp_get_remotestop(gun_index) ||
-					   ((ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_A) && ocpp_get_StopTransactionOnEVSideDisconnect()) ||
+					   ((ShmCharger->gun_info[gun_index].chargingMode != CHARGING_MODE_SOCKETE) && (ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_A) && ocpp_get_StopTransactionOnEVSideDisconnect()) ||
+					   ((ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_SOCKETE) && !ShmCharger->gun_info[gun_index].primaryMcuState.socket_e.isSocketEPinOn) ||
 					   ocpp_get_reset_req() ||
 					   ocpp_get_unlocker_req(gun_index) ||
 					   (ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].schedule.isTriggerStop == ON) ||
@@ -4837,7 +4850,7 @@ int main(void)
 							}
 						}
 
-						if((ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_C) &&
+						if((((ShmCharger->gun_info[gun_index].chargingMode != CHARGING_MODE_SOCKETE) && (ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_C)) || ((ShmCharger->gun_info[gun_index].chargingMode != CHARGING_MODE_SOCKETE) && ShmCharger->gun_info[gun_index].primaryMcuState.socket_e.isSocketEPinOn)) &&
 						   (ShmCharger->gun_info[gun_index].rfidReq != ON) &&
 						   (ShmCharger->gun_info[gun_index].bleConfigData.isRequestStop != ON)  &&
 						   !ocpp_get_remotestop(gun_index) &&

+ 9 - 1
EVSE/Projects/AW-CCS/Apps/main.h

@@ -178,7 +178,8 @@ enum EV_READY_STATE
 enum CHARGING_MODE
 {
 	CHARGING_MODE_BS=0,
-	CHARGING_MODE_HLC
+	CHARGING_MODE_HLC,
+	CHARGING_MODE_SOCKETE
 };
 
 
@@ -337,6 +338,12 @@ typedef struct PRESENTOUTPUTCURRENT
 	double L3N_L31[2];
 }Presentoutputcurrent;
 
+typedef struct SOCKET_E
+{
+	unsigned char isSocketEMode:1;
+	unsigned char isSocketEPinOn:1;
+}Socket_E;
+
 typedef struct AC_PRIMARY_MCU
 {
 	unsigned char cp_state;
@@ -351,6 +358,7 @@ typedef struct AC_PRIMARY_MCU
 	unsigned char rating_current;
 	unsigned char rotatory_switch;
 	Relay	relayState;
+	Socket_E socket_e;
 }Ac_Primary_Mcu;
 
 typedef struct AC_PRIMARY_MCU_ALARM