|
@@ -39,7 +39,7 @@
|
|
|
#define GPIO_OUT_RST_QCA 115
|
|
|
#define GPIO_OUT_RST_ETH 89
|
|
|
|
|
|
-#define MtdBlockSize 0x600000
|
|
|
+#define MtdBlockSize 0x300000
|
|
|
|
|
|
#define DB_FILE "/Storage/ChargeLog/localCgargingRecord.db"
|
|
|
//==========================
|
|
@@ -1782,12 +1782,15 @@ int LoadSysConfigAndInfo(struct SysConfigData *ptr)
|
|
|
sleep(5);
|
|
|
system("reboot -f");
|
|
|
}
|
|
|
+
|
|
|
ChkSum=0;
|
|
|
- for(wrd=0;wrd<MtdBlockSize-4;wrd++)
|
|
|
+ for(wrd=ARRAY_SIZE(ptr->CsuBootLoadFwRev);wrd<MtdBlockSize-4;wrd++)
|
|
|
{
|
|
|
ChkSum+=buf[wrd];
|
|
|
}
|
|
|
memcpy(&ChkSumOrg,buf+(MtdBlockSize-4),sizeof(ChkSumOrg));
|
|
|
+ memcpy(&ptr->ModelName,buf+(ARRAY_SIZE(ptr->CsuBootLoadFwRev)),ARRAY_SIZE(ptr->ModelName));
|
|
|
+ memcpy(&ptr->SerialNumber,buf+(ARRAY_SIZE(ptr->CsuBootLoadFwRev)+ARRAY_SIZE(ptr->ModelName)+ARRAY_SIZE(ptr->AcModelName)),ARRAY_SIZE(ptr->SerialNumber));
|
|
|
|
|
|
//================================================
|
|
|
// Load configuration from mtdblock11
|
|
@@ -1796,7 +1799,7 @@ int LoadSysConfigAndInfo(struct SysConfigData *ptr)
|
|
|
{
|
|
|
DEBUG_ERROR("Primary SysConfigData checksum NG, read backup\n");
|
|
|
system("nanddump /dev/mtd11 -f /mnt/EvseConfig.bin");
|
|
|
- fd = open("/mnt/EvseConfig", O_RDWR);
|
|
|
+ fd = open("/mnt/EvseConfig.bin", O_RDWR);
|
|
|
if (fd < 0)
|
|
|
{
|
|
|
free(buf);
|
|
@@ -1830,8 +1833,9 @@ int LoadSysConfigAndInfo(struct SysConfigData *ptr)
|
|
|
sleep(5);
|
|
|
system("reboot -f");
|
|
|
}
|
|
|
+
|
|
|
ChkSum=0;
|
|
|
- for(wrd=0;wrd<MtdBlockSize-4;wrd++)
|
|
|
+ for(wrd=ARRAY_SIZE(ptr->CsuBootLoadFwRev);wrd<MtdBlockSize-4;wrd++)
|
|
|
{
|
|
|
ChkSum+=buf[wrd];
|
|
|
}
|
|
@@ -1876,12 +1880,16 @@ int LoadSysConfigAndInfo(struct SysConfigData *ptr)
|
|
|
sleep(5);
|
|
|
system("reboot -f");
|
|
|
}
|
|
|
+
|
|
|
ChkSum=0;
|
|
|
- for(wrd=0;wrd<MtdBlockSize-4;wrd++)
|
|
|
+ for(wrd=ARRAY_SIZE(ptr->CsuBootLoadFwRev);wrd<MtdBlockSize-4;wrd++)
|
|
|
{
|
|
|
ChkSum+=buf[wrd];
|
|
|
}
|
|
|
memcpy(&ChkSumOrg,buf+(MtdBlockSize-4),sizeof(ChkSumOrg));
|
|
|
+ memcpy(buf+(ARRAY_SIZE(ptr->CsuBootLoadFwRev)), &ptr->ModelName, ARRAY_SIZE(ptr->ModelName));
|
|
|
+ memcpy(buf+(ARRAY_SIZE(ptr->CsuBootLoadFwRev)+ARRAY_SIZE(ptr->ModelName)+ARRAY_SIZE(ptr->AcModelName)), &ptr->SerialNumber, ARRAY_SIZE(ptr->SerialNumber));
|
|
|
+
|
|
|
if(ChkSum!=ChkSumOrg)
|
|
|
{
|
|
|
DEBUG_WARN("factory default SysConfigData checksum NG, restore factory default\n");
|
|
@@ -5276,7 +5284,6 @@ int main(void)
|
|
|
if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_BS)
|
|
|
{
|
|
|
setRelay(gun_index, OFF);
|
|
|
- setRequest(gun_index, OFF);
|
|
|
ShmCharger->gun_info[gun_index].isChargerStopByCondition = YES;
|
|
|
}
|
|
|
else if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_HLC)
|
|
@@ -5291,7 +5298,6 @@ int main(void)
|
|
|
if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_BS)
|
|
|
{
|
|
|
setRelay(gun_index, OFF);
|
|
|
- setRequest(gun_index, OFF);
|
|
|
ShmCharger->gun_info[gun_index].isChargerStopByCondition = YES;
|
|
|
}
|
|
|
else if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_HLC)
|
|
@@ -5329,7 +5335,6 @@ int main(void)
|
|
|
if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_BS)
|
|
|
{
|
|
|
setRelay(gun_index, OFF);
|
|
|
- setRequest(gun_index, OFF);
|
|
|
ShmCharger->gun_info[gun_index].isChargerStopByCondition = YES;
|
|
|
}
|
|
|
else if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_HLC)
|
|
@@ -5344,7 +5349,6 @@ int main(void)
|
|
|
if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_BS)
|
|
|
{
|
|
|
setRelay(gun_index, OFF);
|
|
|
- setRequest(gun_index, OFF);
|
|
|
ShmCharger->gun_info[gun_index].isChargerStopByCondition = YES;
|
|
|
}
|
|
|
else if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_HLC)
|
|
@@ -5373,12 +5377,10 @@ int main(void)
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_BS)
|
|
|
- {
|
|
|
- setRequest(gun_index, OFF);
|
|
|
- }
|
|
|
+ if(ShmCharger->gun_info[gun_index].primaryMcuState.relay_state > 0)
|
|
|
+ DEBUG_INFO("Connector-%d can not charging in off line\n", gun_index);
|
|
|
+
|
|
|
setRelay(gun_index, OFF);
|
|
|
- DEBUG_INFO("Connector-%d can not charging in off line\n", gun_index);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -5433,9 +5435,6 @@ int main(void)
|
|
|
(ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].schedule.isTriggerStop == ON) ||
|
|
|
((ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_HLC) && (ShmCharger->gun_info[gun_index].acCcsInfo.EVChargeProgress == HLC_STOP_MODE)))
|
|
|
{
|
|
|
- if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_BS)
|
|
|
- setRequest(gun_index, OFF);
|
|
|
-
|
|
|
setRelay(gun_index, OFF);
|
|
|
setLedMotion(gun_index, LED_ACTION_STOP);
|
|
|
|
|
@@ -5534,7 +5533,6 @@ int main(void)
|
|
|
else
|
|
|
{
|
|
|
setRelay(gun_index, OFF);
|
|
|
- setRequest(gun_index, OFF);
|
|
|
}
|
|
|
|
|
|
if((ShmCharger->gun_info[gun_index].systemAlarmCode.SystemAlarmCode == 0))
|