Watchdog timer Particle Electron

Hi,

I have seen a few posts regarding IWDG watchdog timer on Electron. Seems like, nothing really conclusive so far.
I tried on 3.0 electron, the basic code like below, but didn;t work. it’s never reset. Also the bits were all 0.
So, my only option so far is to use external WDT. But, nowadays, there are not so many options.
Any suggestion ?

And has anyone tried IWDG on B Series ?

code :

IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
            
         
            delay(500);
            IWDG_SetPrescaler(IWDG_Prescaler_256);
            delay(500);
            
            delay(500);
            IWDG_SetReload(0xFFF);
            
          
            delay(500);
            
            uint8_t pvu = IWDG_GetFlagStatus(IWDG_FLAG_PVU) == SET;
            Serial.printlnf("pvu %u", pvu);
            uint8_t rvu = IWDG_GetFlagStatus(IWDG_FLAG_RVU) == SET;
            Serial.printlnf("rvu %u", rvu);
            delay(500);
            Serial.println("Reload");
            IWDG_ReloadCounter();
            
            delay(500);
            Serial.println("WD enable");
            IWDG_Enable();

Thank you