ไฟแจ้งเตือนสถานะบนแอป Blynk ทำงานแยกกันไม่ได้ค่ะ

ช่วยดูโค้ดหน่อยค่ะ ไฟแสดงสถานะปั๊มทำงานจะติดตลอดตามที่กำหนดระยะให้ปั๊มทำงานในโหมดออโต้ แต่พอปรับมาใช้โหมดแมนนวลไฟแสดงสถานะที่ควรจะดับในตอนที่กดปุ่มปิดมันไม่ดับตลอด จะดับแค่ช่วงเดียวแล้วติดเหมือนเดิม

#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <BlynkSimpleEsp8266.h>
#include<SoftwareSerial.h>
#include <TridentTD_LineNotify.h>
#include <SimpleTimer.h>
SoftwareSerial mySerial(D5,D6);
SimpleTimer timer;
#define LINE_TOKEN "arVfAiThZfWRaGfjr4CFJaa2HQqONiWng9ctEnfRwaO"
#define flow_sensor 2
char auth[] = "aNlhXZZvBaF0gAN5kqxZgXmDuOf14few";

char ssid[] = "許玉林";
char pass[] = "fern2543";
unsigned char data[4]={};
int distance;
int waterlevel;

const int Auto = D0;
const int Relay = D1;

int ATON=0; // เช็คการทำงานของ Pump ON
int ATOFF=0; // เช็คการทำงานของ Pump OFF
int CHLV1=0; // เช็คการทำงานของ Leval 1
int CHLV2=0; // เช็คการทำงานของ Leval 2
int CHLV3=0; // เช็คการทำงานของ Leval 3
int VL=0; // ปริมาตรของน้ำ
int K=0; // เช็คการทำงานของ Auto mode
int L=0; // เช็คการทำงานของ Manual mode
int FL=0; // เช็คการทำงานของ FLOW
WidgetLCD LCD(V0);
WidgetLED LEDPUMP(V4); // PUMP
WidgetLED LEDAuto(V5); // Auto
WidgetLED LEDManual(V6); // Manual

void setup()
 {
  Blynk.begin(auth, ssid, pass, "blynk.iot-cm.com", 8080); 
  LINE.setToken(LINE_TOKEN);
  pinMode(flow_sensor, INPUT);
  pinMode(Auto, OUTPUT);
  pinMode(Relay, OUTPUT);
  pinMode(D2, OUTPUT);
  Serial.begin(57600);
  mySerial.begin(9600);
  
  digitalWrite(Auto, HIGH);
  digitalWrite(Relay, HIGH);
  digitalWrite(D2, HIGH);
  
  LEDPUMP.off();
  timer.setInterval(100, sensor);
 }

void sensor()
 {
  do{
     for(int i=0;i<4;i++)
     {
     data[i]=mySerial.read();
     }
    }while(mySerial.read()==0xff);

mySerial.flush();

if(data[0]==0xff)
 {
  int sum;
  sum=(data[0]+data[1]+data[2])&0x00FF;
  if(sum==data[3])
   {
    distance=(data[1]<<8)+data[2];
    if(distance>280)
     {
      Serial.print("distance=");
      Serial.print(distance/10);
      Serial.println("cm");
     }
else
 {
  Serial.println("Below the lower limit");
 }
}
else Serial.println("ERROR");
}
delay(100);
}

void ControlPump()
{
  sensor();
   
   waterlevel=(550-(distance/10));
   Serial.println(waterlevel);
   Blynk.virtualWrite(V10,waterlevel);
  
   VL= (waterlevel*0.01*6*86.7); 
   Blynk.virtualWrite(V11,VL);  
 
 if((waterlevel>200))
 { 
   ATON++;
   ATOFF=0;
  LEDPUMP.on();
  digitalWrite(Relay, LOW);   
  Serial.println(" Pump ON");
  Serial.println("ATON=");
  Serial.println(ATON);

  
  if( ATON==1)
   {
     Serial.println("OPEN");
     LINE.notify("PUMP ON");
   } 
 }

 if(waterlevel <= 200)
 {
   ATOFF++;
   ATON=0;
   FL=0;
   LEDPUMP.off();
   digitalWrite(Relay, HIGH);
   Serial.println("Pump OFF");
   Serial.println("ATOFF=");
   Serial.println(ATOFF);
 
  if(ATOFF==1)
   {
     Serial.println("CLOSE");
     LINE.notify("PUMP OFF");
  }  
 }
}
void checklevel()
{
  sensor();
  if (waterlevel <260)
 {
  
   CHLV1++;
   CHLV2=0;
   CHLV3=0;
   Serial.println("CHLV1=");
    Serial.println(CHLV1);
    LCD.clear();
    LCD.print(0,0,"     Level 1     ");
    LCD.print(0,1,"    It's OK.     ");
   if( CHLV1==1)
  {
  Serial.println("slightly higher water");
  Serial.println("Level 1");
  LINE.notify("Level 1");
  LINE.notify("slightly higher water");
   }
 }

 if((waterlevel >=260) && (waterlevel <300))
 {
  
   CHLV2++;
   CHLV1=0;
   CHLV3=0;
   Serial.println("CHLV2=");
   Serial.println(CHLV2);
   LCD.clear();
  LCD.print(0,0,"     Level 2     ");
  LCD.print(0,1,"  Will you pump? ");
   if( CHLV2==1)
  {
  Serial.println("medium water level");
  Serial.println("Level 2");
  LINE.notify("Level 2");
  LINE.notify("medium water level");
   }
 }
 
 if (waterlevel >=300)
 {  
   CHLV3++;
   CHLV1=0;
   CHLV2=0;
     Serial.println("CHLV3=");
     Serial.println(CHLV3);
     LCD.clear();
  LCD.print(0,0,"     Level 3     ");
  LCD.print(0,1,"  It's crisis!   ");
   if( CHLV3==1)  
  {
  Serial.println("It's crisis!");
  Serial.println("Level 3");
  LINE.notify("Level 3");
  LINE.notify("It's crisis!");
 
 }
 }
}

void flow()
{
uint32_t pulse = pulseIn(flow_sensor,HIGH);
  float Hz = 1/(2*pulse*pow(10,-6));
    float flow = 7.2725*(float)Hz + 3.2094;
    Serial.print(Hz);
    Serial.print("Hz\t");
    Serial.print(flow/60);
    Serial.println(" L/minute");
    Blynk.virtualWrite(V14,(flow/60));
    if((pulse < 1)&&(waterlevel>200))
     {
        FL++;    
          
     }
  if(( FL==1)&&(waterlevel>200))
  {
    delay(5000);
      LINE.notify("น้ำไม่ไหล กรุณารีบไปแก้ไขโดยด่วน");  
   
  }
 
 delay(1000);
 } 
  

  BLYNK_WRITE(V1) // Auto/Manual
{
  int buttonState = param.asInt();
if(buttonState == 1)
{
  
  digitalWrite(Auto, LOW); 
  LEDAuto.on();
  LEDManual.off();
   
}

if(buttonState == 0)
{
  
  digitalWrite(Auto, HIGH); 
  LEDAuto.off();
  LEDManual.on();    

}
}


BLYNK_WRITE(V2) //  Start Manual
{
  int buttonState = param.asInt();
if(buttonState == 1)
{
  digitalWrite(D2, LOW); 
  LEDPUMP.on();
  LINE.notify("PUMP ON");
}
}

BLYNK_WRITE(V3) //  Stop Manual
{
  int buttonState = param.asInt();
if(buttonState == 1)
{
  digitalWrite(D2, HIGH);
  LEDPUMP.off();
  LINE.notify("PUMP OFF");
}
}


void loop()
{
  sensor();
  ControlPump();
  checklevel();
  flow();
  timer.run();
  Blynk.run();
}

หมายถึงไฟไหน ในแอพ blynk หรือที่เป็น hardware จริงๆ มี log ไหมเอามาดูหน่อยครับ


หน้าแอพค่ะ แอพหน้าตาประมาณนี้ มี LED ที่ใช้บอกสถานะปั๊มตัวเดียว แต่จะบอกสถานะทั้งในตอนที่เป็นโหมดแมนนวลและออโต้ค่ะ
ส่วนการต่อรีเลย์จะเป็นประมาณนี้ค่ะ

ไล่โปรแกรมแล้วก็ดูเหมือนไม่มีอะไรนะครับ ถ้ายหรืออัดวีดีโอที่เป็นปัญหามาดูหน่อย