Interacting Nodemcu with PN532

I am testing Nodemcu with PN532

I have tested code on Arduino uno its working fine.But when i tried same code using nodemcu i get errors. code upload successfully
Is there any example code available with node mcu

#include <Wire.h>
#include <PN532_I2C.h>
#include <PN532.h>
#include <NfcAdapter.h>

PN532_I2C pn532i2c(Wire);
PN532 nfc(pn532i2c);

void setup(void)
{
  Serial.begin(115200);
  Serial.println("Hello!");
  pinMode(D0,OUTPUT);
   
  nfc.begin();

  uint32_t versiondata = nfc.getFirmwareVersion();
  if (! versiondata) {
    Serial.print("Didn't find PN53x board");
    while (1); // halt
  }

  // Got ok data, print it out!
  Serial.print("Found chip PN5"); Serial.println((versiondata >> 24) & 0xFF, HEX);
  Serial.print("Firmware ver. "); Serial.print((versiondata >> 16) & 0xFF, DEC);
  Serial.print('.'); Serial.println((versiondata >> 8) & 0xFF, DEC);

  // Set the max number of retry attempts to read from a card
  // This prevents us from waiting forever for a card, which is
  // the default behaviour of the PN532.
  nfc.setPassiveActivationRetries(0xFF);

  // configure board to read RFID tags
  nfc.SAMConfig();

  Serial.println("Waiting for an ISO14443A card");
}

void loop(void) {
  boolean success;
  uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 };  // Buffer to store the returned UID
  uint8_t uidLength;                        // Length of the UID (4 or 7 bytes depending on ISO14443A card type)

  // Wait for an ISO14443A type cards (Mifare, etc.).  When one is found
  // 'uid' will be populated with the UID, and uidLength will indicate
  // if the uid is 4 bytes (Mifare Classic) or 7 bytes (Mifare Ultralight)
  success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, &uid[0], &uidLength);

  if (success) {
    Serial.println("Found a card!");
    Serial.print("UID Length: "); Serial.print(uidLength, DEC); Serial.println(" bytes");
    Serial.print("UID Value: ");
    String hex_value = "";
    for (uint8_t i = 0; i < uidLength; i++)
    {
      Serial.print(" 0x"); Serial.print(uid[i], HEX);
      //Serial.print(" ");Serial.print(uid[i], HEX);
      hex_value += (String)uid[i];
    }

    Serial.println(", value=" + hex_value);

    if (hex_value == "6610042131") {
      Serial.println("This is Key Tag. ");
      digitalWrite(D0,HIGH);
    }
    else if (hex_value == "115231429") {
      Serial.println("This is Card Tag. ");
       digitalWrite(D0,LOW);
    }
    else if (hex_value == "63156295") {
      Serial.println("This is Phone Tag. ");
    }
    else
      Serial.println("I don't know.");


    Serial.println("");
    // Wait 1 second before continuing
    delay(1000);
  }
  else
  {
    // PN532 probably timed out waiting for a card
    Serial.println("Waiting for a card...");
  }
}

ctx: cont
sp: 3ffef990 end: 3ffefb70 offset: 01b0

stack>>>
3ffefb40: feefeffe 3ffee868 3ffeeb24 40202518
3ffefb50: 3fffdad0 00000000 3ffeeb40 402033d8
3ffefb60: feefeffe feefeffe 3ffeeb50 40100710
<<<stack<<<

ets Jan 8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v614f7c32
~ld
Hello!
Didn’t find PN53x board
Soft WDT reset