Hi,
Yes with ISP pin it's working well.
I can't post all project. But here after related things.
Electronic part :

Code part :
function called after reset and initialisation who start ISP if tag present in eeprom.
static void ISPCheck(void)
{
uint8_t isp[3]={'?','?','?'};
uint32_t st=0;
uint8_t ispmode=6U;
if(E2P_I2C_Read(EP2_ISPADDRESS, isp, sizeof(isp))==kStatus_Success)
{
if(isp[0]=='I' && isp[1]=='S' && isp[2]=='P')
{
LED_J_Set(false);
isp[0]='?';
isp[1]='?';
isp[2]='?';
E2P_I2C_Write(EP2_ISPADDRESS, isp, sizeof(isp));
//delayms(100);
//CLI_DirectPrintLine("!!! MODE ISP !!!");
USART_Deinit(FLEXCOMM0_PERIPHERAL);
//delayms(100);
//__disable_irq();
GPIO_PinWrite(GPIO, 0, 4, 0);
delayms(100);
IAP_ReinvokeISP(ispmode, &st); // Ne retourne pas si OK
CLI_DirectPrintLine("ISP : Fail !");
}
// else
// CLI_DirectPrintLine("ISP : No request");
}
else
CLI_DirectPrintLine("ISP : Read Error");
}