Where and how change nfc tag id

Morning,
I have made an door lock system base on arduino UNO and DFR0231 reader.
Everything work but i just notice that the card reader unlunck the door whatever the tag, even if it's new

I wondering how put in the code my own tag's ID.... an email by exemple: text@gmail.com

Thanks before for your assistance

/*
 # Product: NFC Module for Arduino
 # SKU    : DFR0231

 command list: 
 #wake up reader
 send: 55 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 03 fd d4 14 01 17 00
 return: 00 00 FF 00 FF 00 00 00 FF 02 FE D5 15 16 00

 #get firmware
 send: 00 00 FF 02 FE D4 02 2A 00
 return: 00 00 FF 00 FF 00 00 00 FF 06 FA D5 03 32 01 06 07 E8 00

 #read the tag
 send: 00 00 FF 04 FC D4 4A 01 00 E1 00
 return: 00 00 FF 00 FF 00 00 00 FF 0C F4 D5 4B 01 01 00 04 08 04 XX XX XX XX 5A 00
 XX is tag.
 mine:   00 00 FF 00 FF 00 00 00 FF 0C F4 D5 4B 01 01 00 04 08 04 07 8C FC 4F F0 00
 (In this program, I'll use XX XX XX XX 5A as tag ID)
 */




#define wake_result 15
#define firmware_result 19
#define tag_result 25

const unsigned char wake[24]={
  0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03, 0xfd, 0xd4, 0x14, 0x01, 0x17, 0x00};//wake up NFC module
const unsigned char firmware[9]={
  0x00, 0x00, 0xFF, 0x02, 0xFE, 0xD4, 0x02, 0x2A, 0x00};
const unsigned char tag[11]={
  0x00, 0x00, 0xFF, 0x04, 0xFC, 0xD4, 0x4A, 0x01, 0x00, 0xE1, 0x00};
const unsigned char std_ACK[25] = {
  0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x0C, \
0xF4, 0xD5, 0x4B, 0x01, 0x01, 0x00, 0x04, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x4b, 0x00};
unsigned char old_id[5];
unsigned char cur_id[5];
unsigned char receive_ACK[25];

const int redPin = 4;  // R petal on RGB LED module connected to digital pin 11 
const int greenPin = 5;  // G petal on RGB LED module connected to digital pin 10 
const int bluePin = 6;  // B petal on RGB LED module connected to digital pin 9 

//open the door
boolean door_open = false;


#include <Stepper.h>
 

#define gearratio 64 //This is used to make the gear ration 1:64 
const int stepsPerRevolution = 2048;  

 
Stepper garage_door(stepsPerRevolution, 8, 10, 9, 11); 
 



uint32_t time;




void setup()
{
  Serial.begin(115200);   
  delay(100);

  Serial.println("wake card");
  delay(100);
  wake_card();
  delay(100);
  read_ACK(wake_result);
  delay(100);
  display(wake_result);

  firmware_version();
  delay(100);
  read_ACK(firmware_result);
  delay(100);
  display(firmware_result);


  garage_door.setSpeed(0.15*gearratio);


  delay(500);
  

pinMode(redPin, OUTPUT); 
  pinMode(greenPin, OUTPUT); 
  pinMode(bluePin, OUTPUT);
  
 

}


void loop()
{

  send_tag();
  read_ACK(tag_result);
  read_id();
  if (!no_detection()) {
    print_id();
    
  }


  
delay(500);
  time = millis();

  if (door_open){
   

 
 garage_door.step(-stepsPerRevolution/20); 

    while (door_open){  
        
      
      if (millis()-time > 30000) door_open = false;
      color(0,255, 0); 
    }
    garage_door.step(stepsPerRevolution/20); 
 

    
    delay(100);
  }  
  
}
void color (unsigned char red, unsigned char green, unsigned char blue)    
{    
  analogWrite(redPin, red);   
  analogWrite(greenPin, green); 
  analogWrite(bluePin, blue); 
}

void UART_Send_Byte(unsigned char command_data)
{
  Serial.write(command_data);
  Serial.flush();
}

void wake_card(void)
{
  unsigned char i;
  for(i=0;i<24;i++) 
    UART_Send_Byte(wake[i]);
}

void firmware_version(void)
{
  unsigned char i;
  for(i=0;i<9;i++) 
    UART_Send_Byte(firmware[i]);
}

void send_tag(void)
{
  unsigned char i;
  for(i=0;i<11;i++) 
    UART_Send_Byte(tag[i]);
}

void read_ACK(unsigned char temp)
{
  unsigned char i;
  for(i=0;i<temp;i++) {
    receive_ACK[i]= Serial.read();
  }
}

void display(unsigned char tem)
{
  for (int i=0;i<tem;i++)
  {
    if (receive_ACK[i] < 16)
      Serial.print("0");
    Serial.print(receive_ACK[i], HEX);
    if (i<(tem-1)) Serial.print(" ");
  }
  Serial.println();
}

void copy_id (void)
{
  int i;
  for (i=0 ; i<5 ; i++) {
    old_id[i] = cur_id[i];
  }
}


void read_id (void) {
  int ai, ci;
  for (ci=0, ai=19; ci<5; ci++,ai++) {
    cur_id[ci] = receive_ACK[ai];
  }
}


char same_id (void)
{
  int ai, oi;
  for (oi=0,ai=19; oi<5; oi++,ai++) {
    if (old_id[oi] != receive_ACK[ai])
      return 0;
  }
  return 1;
}

char no_detection(void) {
  
  int i;
  
  for (i=0 ; i<sizeof(cur_id) ; i++) {
    if (cur_id[i] != 255) {
 
 
        door_open = true;
        
   
    delay(500);
    
  
    } 
      else {
       
        door_open = false;
        i = 16;

      }
       color(255, 0, 0); 
    
   
    delay(1000);
    

      
      return 0;
  }
  return 1;
  
}

void print_id() {
  for (int i=0 ; i<sizeof(cur_id) ; i++) {
    if (cur_id[i] < 16) 
      Serial.print("0");
    Serial.print(cur_id[i], HEX);
    if (i<(sizeof(cur_id)-1)) Serial.print(" ");
  }
 
  Serial.println();
}

Everything work but i just notice that the card reader unlunck the door whatever the tag, even if it's new

I guess that's one (strange) definition of "working".

First thing to do is to get rid of all the useless comments relating to hardware you don't have.

I wondering how put in the code my own tag's ID.... an email by exemple: text@gmail.com

Is your tag's ID really a bogus email address? I find that hard to believe.

@Paul, i have already removed the commented code.... sorry
Write now, my ID code should be FF FF FF FF FF, but, actually, my hardware is triggered whatever the Tag's ID, even if the tag has'nt ID.
I need to understand why the code don't work for tag with only FF FF FF FF FF id.
i would also to know how replace the sample id with another one

THANKS