I do not know about the ESP8266.
The emonLib function that reads the voltage calcVI( )
MUST have a voltage input to work, because it needs to count the number of half-cycles at mains frequency (60 Hz for you? ).
If it does not have a voltage, it waits for 2 s, then it tries again.
The timeout for calcVI( )
is set to 2000 ms (= 2 s) here:
emon1.calcVI(20,2000); // Calculate all. No.of half wavelengths (crossings), time-out
If your watchdog timer is set to less than 2 s, then your watchdog will reset. I think that is what “Soft WDT reset” means.
First, make your watchdog timer longer. We use 8 s.
If that does not work, reduce the calcVI( )
timeout to 400 (= 24 mains cycles).