Gérer conditions écran tactile

Bonjour à tous,
j'ai un projet de commande pour l'automatisation de mon bassin. J'ai réussi à faire le plus gros avec l'aide du forum.
Par contre un dernier point ou je n'arrive pas à trouver la solution (avec mes faibles notions).
Je voudrais gérer deux modes, un mode "filtration" qui en fonction de capteurs effectuent des actions et un deuxième mode "baignade" qui coupe l'ensemble de l'alimentation électrique.
A mon stade les deux modes fonctionnent. Par contre je n'arrive pas à naviguer d'un mode à l'autre. Enfin si mais le mode baignade ne reste qu'une seconde et re-bascule sur le mode filtration.
Je vous mets une partie du code, si quelqu'un peut m'éclairer.
je vous remercie d'avance.
Bonne soirée

type or paste code here
void loop(){
            Read_Resistive();
            // showpoint(tp);
            {
            if ((tp.z > 20 && tp.z < 1000) && (tp.x<=300 && tp.y<=200)) 
            {
                mylcd.Set_Text_colour(YELLOW);
                mylcd.Set_Text_Size(2);
                mylcd.Print_String("***Mode BAIGNADE***", 10, 290);
                baignade();
                
                delay(100);}

   
            if ((tp.z > 20 && tp.z < 1000) && (tp.x >300 && tp.y>200)) 
            {
                mylcd.Set_Text_colour(YELLOW);
                mylcd.Set_Text_Size(2);
                mylcd.Print_String("***Mode FIltration***", 10, 290);
                filtration();
                
                delay(100);}

            
                 
}}
void baignade() {
  
 
  
if (digitalRead(FLOTH) == 0 & digitalRead(FLOTB)== 0){
  mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("    Mode BAIGNADE - ****ACTIVE****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(rincage,LOW);
  digitalWrite(tambour,LOW);
  digitalWrite(cascade,LOW);
  digitalWrite(egout,LOW);
  digitalWrite(arduino,LOW); }

void filtration(){
 
  
  unsigned long currentMillis = millis(); // enregistre la lecture du temps écoulé dans currentMillis
 
  
if (digitalRead(FLOTH) == 0 & digitalRead(FLOTB)== 0){
  mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("    Mode DEFAUT - ****NIVEAU HAUT****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(rincage,LOW);
  digitalWrite(tambour,LOW);
  digitalWrite(cascade,LOW);
  digitalWrite(egout,LOW);
  digitalWrite(arduino,LOW); 
  

postez tout le code, là les accolades ne vont pas bien

Merci pour votre aide

/***********************************************************************************
*This program is a demo of how to display picture and 
*how to use rotate function to display string.
*This demo was made for LCD modules with 8bit or 16bit data port.
*This program requires the the LCDKIWI library.

* File                : display_graphics.ino
* Hardware Environment: Arduino UNO&Mega2560
* Build Environment   : Arduino

*Set the pins to the correct ones for your development shield or breakout board.
*This demo use the BREAKOUT BOARD only and use these 8bit data lines to the LCD,
*pin usage as follow:
*                  LCD_CS  LCD_CD  LCD_WR  LCD_RD  LCD_RST  SD_SS  SD_DI  SD_DO  SD_SCK 
*     Arduino Uno    A3      A2      A1      A0      A4      10     11     12      13                            
*Arduino Mega2560    A3      A2      A1      A0      A4      10     11     12      13                           

*                  LCD_D0  LCD_D1  LCD_D2  LCD_D3  LCD_D4  LCD_D5  LCD_D6  LCD_D7  
*     Arduino Uno    8       9       2       3       4       5       6       7
*Arduino Mega2560    8       9       2       3       4       5       6       7 

*Remember to set the pins to suit your display module!
*
* @attention
*
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
* TIME. AS A RESULT, QD electronic SHALL NOT BE HELD LIABLE FOR ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE 
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
**********************************************************************************/

#include <LCDWIKI_GUI.h> //Core graphics library
#include <LCDWIKI_KBV.h> //Hardware-specific library
#include <TouchScreen.h> //touch library
#include <Wire.h>


#define TOUCH_ORIENTATION  0
#define TITLE "TouchScreen.h Calibration"

//if the IC model is known or the modules is unreadable,you can use this constructed function
LCDWIKI_KBV mylcd(ILI9486,A3,A2,A1,A0,A4); //model,cs,cd,wr,rd,reset
//if the IC model is not known and the modules is readable,you can use this constructed function
//LCDWIKI_KBV mylcd(320,480,A3,A2,A1,A0,A4);//width,height,cs,cd,wr,rd,reset

//define some colour values
#define  BLACK   0x0000
#define BLUE    0x001F
#define RED     0xF800
#define GREEN   0x07E0
#define CYAN    0x07FF
#define MAGENTA 0xF81F
#define YELLOW  0xFFE0
#define WHITE   0xFFFF

#define YP A3  // must be an analog pin, use "An" notation!
#define XM A2  // must be an analog pin, use "An" notation!
#define YM 9   // can be a digital pin
#define XP 8   // can be a digital pin

TouchScreen mytouch(XP, YP, XM, YM, 300);
TSPoint tp;   
void Read_Resistive(void)
{
    tp = mytouch.getPoint();
    pinMode(YP, OUTPUT);      //restore shared pins
    pinMode(XM, OUTPUT);
    digitalWrite(YP, HIGH);   //because TFT control pins
    digitalWrite(XM, HIGH);
}

bool is_pressed(void)
{
    bool state;
    Read_Resistive();
    state = (tp.z > 20 && tp.z < 1000);
    return state;
}//Touchscreen_due branch uses Point

//display some string
const int FLOTH = 31; //flotteur haut fil rouge
const int FLOTB = 33; //flotteur bas fil noir
int Airlift = 35;
int O2 = 37;
int UV = 39;
int rincage = 43;
int tambour = 45;
int cascade = 47;
int egout = 49;
int arduino = 51;
uint32_t tx;
uint32_t ty;


int Etat_tambour = LOW;  
unsigned long previousMillis = 0; 
unsigned long interval; 
unsigned long interval1 = 900000 ; 
unsigned int interval2 = 4000;  
void setup() 
{
  Serial.begin(9600);
  
 
  
   tp = mytouch.getPoint();
    pinMode(YP, OUTPUT);     
    pinMode(XM, OUTPUT);
    digitalWrite(YP, HIGH);   
    digitalWrite(XM, HIGH);
  //rinçage tambour
  pinMode(FLOTH,INPUT);
  pinMode(FLOTB,INPUT);
  pinMode(Airlift,OUTPUT);
  pinMode(O2,OUTPUT);
  pinMode(UV,OUTPUT);
  pinMode(rincage,OUTPUT);
  pinMode(tambour,OUTPUT);
  pinMode(arduino, OUTPUT);

  

  //fin de rinçage tambour
  mylcd.Init_LCD();
  Serial.println(mylcd.Read_ID(), HEX);
 delay(500);
  
  for(uint8_t rotation=1; rotation<2; rotation++) 
 {
    mylcd.Set_Rotation(rotation);
   
    
}
  mylcd.Set_Text_Mode(0);
  
  mylcd.Fill_Screen(BLACK); 
  mylcd.Fill_Rect(0, 0, 500, 30, WHITE);
  mylcd.Draw_Pixe(400, 280, YELLOW);
  mylcd.Set_Text_Back_colour(BLACK);
  mylcd.Set_Text_colour(BLACK);
  mylcd.Set_Text_Size(3);
  mylcd.Print_String("GESTION BASSIN", 120, 5);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("Airlift :", 5, 40);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("OFF", 180, 40);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("O2 Filtre", 5, 80);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("OFF", 180, 80);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("UV", 5, 120);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("OFF", 180, 120);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("Rincage", 5, 160);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("OFF", 180, 160);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("Tambour", 5, 200);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("OFF", 180, 200);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("Cascade", 260, 40);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("OFF", 410, 40);

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("Egout", 260, 80);
  mylcd.Print_String("ON", 360, 80);
  mylcd.Print_String("OFF", 410, 80);
  
  mylcd.Set_Text_colour(YELLOW);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("SURFACE :", 260, 160);
  
  mylcd.Set_Text_colour(YELLOW);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("FOND :", 260, 200);
 

  mylcd.Set_Text_colour(WHITE);
  mylcd.Set_Text_Size(2);

  mylcd.Fill_Rect(400, 290, 30, 30, BLACK);
  mylcd.Set_Text_colour(RED);
  mylcd.Fill_Rect(410, 230, 0, 30, BLACK);
  mylcd.Print_String("F" , 410, 290);
  mylcd.Fill_Rect(450, 250, 30, 30, BLACK);
  mylcd.Set_Text_colour(GREEN);
  mylcd.Print_String("B" , 460, 290);

 
  
}

void loop(){



     
    
        
            Read_Resistive();
            // showpoint(tp);
            if ((tp.z > 20 && tp.z < 1000) && (tp.x<=300 && tp.y<=200))
            {
                mylcd.Set_Text_colour(YELLOW);
                mylcd.Set_Text_Size(2);
                mylcd.Print_String("***Mode BAIGNADE***", 10, 290);
                baignade();
                delay(1000);}
           
            
       
            
            if ((tp.z > 20 && tp.z < 1000) && (tp.x>400 && tp.y>300))
            {
                mylcd.Set_Text_colour(YELLOW);
                mylcd.Set_Text_Size(2);
                mylcd.Print_String("**Mode FILTRATION**", 10, 290);
                filtration();
                delay(1000);}
               
             
          
            
        }
     

          
        
void baignade() {
  
 
  
if (digitalRead(FLOTH) == 0 & digitalRead(FLOTB)== 0){
  mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("    Mode BAIGNADE - ****ACTIVE****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(rincage,LOW);
  digitalWrite(tambour,LOW);
  digitalWrite(cascade,LOW);
  digitalWrite(egout,LOW);
  digitalWrite(arduino,LOW); 
  
}


if (digitalRead(FLOTH) == 1 & digitalRead(FLOTB)== 0){
   mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("    Mode BAIGNADE - ****ACTIVE****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(rincage,LOW);
  digitalWrite(tambour,LOW);
  digitalWrite(cascade,LOW);
  digitalWrite(egout,LOW);
  digitalWrite(arduino,LOW); 
  
}
if (digitalRead(FLOTH) == 1 & digitalRead(FLOTB)== 1){
    

   mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("    Mode BAIGNADE - ****ACTIVE****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(rincage,LOW);
  digitalWrite(tambour,LOW);
  digitalWrite(cascade,LOW);
  digitalWrite(egout,LOW);
  digitalWrite(arduino,LOW);  
   
  
  

           
}}     

     
void filtration(){
  unsigned long currentMillis = millis(); 
  
if (digitalRead(FLOTH) == 0 & digitalRead(FLOTB)== 0){
  mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("    Mode DEFAUT - ****NIVEAU HAUT****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(rincage,LOW);
  digitalWrite(tambour,LOW);
  digitalWrite(cascade,LOW);
  digitalWrite(egout,LOW);
  digitalWrite(arduino,LOW); 
  
}


if (digitalRead(FLOTH) == 1 & digitalRead(FLOTB)== 0){
  mylcd.Set_Text_colour(RED);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("     Mode LAVAGE - *****TAMBOUR*****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(GREEN);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  digitalWrite(Airlift,LOW);
  digitalWrite(O2,LOW);
  digitalWrite(UV,LOW);
  digitalWrite(tambour,HIGH);
  digitalWrite(rincage,HIGH);
  digitalWrite(cascade,HIGH);
  digitalWrite(egout,HIGH);
  digitalWrite(arduino,HIGH); 
  mylcd.Print_String("     Mode LAVAGE - *****EN COURS*****", 0, 250);
  delay(12000);
  mylcd.Print_String("     Mode LAVAGE - *****ATTENTE*****", 0, 250);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  digitalWrite(tambour,LOW);
  digitalWrite(rincage,LOW);
  delay(30000); 
  
}
if (digitalRead(FLOTH) == 1 & digitalRead(FLOTB)== 1){
    

  mylcd.Set_Text_colour(GREEN);
  mylcd.Set_Text_Size(2);
  mylcd.Print_String("     Mode FILTRATION - ****ACTIF****", 0, 250);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("OFF", 180, 40);
  mylcd.Print_String("OFF", 180, 80);
  mylcd.Print_String("OFF", 180, 120);
  mylcd.Print_String("OFF", 410, 40);
  mylcd.Print_String("OFF", 410, 80);
  mylcd.Set_Text_colour(GREEN);
  mylcd.Print_String("ON", 120, 40);
  mylcd.Print_String("ON", 120, 80);
  mylcd.Print_String("ON", 120, 120);
  mylcd.Print_String("ON", 360, 40);
  mylcd.Print_String("ON", 360, 80);
  mylcd.Set_Text_colour(WHITE);
  mylcd.Print_String("ON", 120, 160);
  mylcd.Print_String("ON", 120, 200);
  mylcd.Set_Text_colour(RED);
  mylcd.Print_String("OFF", 180, 160);
  mylcd.Print_String("OFF", 180, 200);
 
  digitalWrite(Airlift,HIGH);
  digitalWrite(O2,HIGH);
  digitalWrite(UV,HIGH);
  digitalWrite(rincage,LOW);
  digitalWrite(cascade,HIGH);
  digitalWrite(egout,HIGH);
  digitalWrite(arduino,HIGH); 
  
  if (currentMillis - previousMillis >= interval) 
  {
    previousMillis = currentMillis;  
    if (Etat_tambour == LOW)    
    { 
      Etat_tambour = HIGH;  
      mylcd.Set_Text_Size(2);
      mylcd.Set_Text_colour(WHITE);
      mylcd.Print_String("Rotation Tambour", 50, 290);
      Serial.print("Tambour en rotation");
      mylcd.Set_Text_colour(WHITE);
      mylcd.Print_String("OFF", 180, 200);
      mylcd.Set_Text_colour(GREEN);
      mylcd.Print_String("ON", 120, 200);
      
      interval = interval2;
      delay(100);
      
    } else                  
    {
      Etat_tambour= LOW;
      Serial.print("Tambour arrete");
      mylcd.Print_String("                ", 50, 290);
      mylcd.Set_Text_colour(RED);
      mylcd.Print_String("OFF", 180, 200);
      mylcd.Set_Text_colour(WHITE);
      mylcd.Print_String("ON", 120, 200);//on l'éteint la LED
      interval = interval1;
      delay(100);
       //défini le nouvel intervalle de clignotement
    }
    digitalWrite(tambour, Etat_tambour); //règle l'état de la LED avec le ledState de la variable
  }}
  
  
            }
  
          
   
           
   
          
          
          
          



          
  


   
  

si vous ne mettez que ça dans la loop() pour le moment

void loop() {
  if (is_pressed()) { // met à jour le point tp
    if (tp.x <= 300 && tp.y <= 200) {
      mylcd.Print_String("***Mode BAIGNADE***", 10, 290);
    }
    else if (tp.x > 400 && tp.y > 300) {
      mylcd.Print_String("***Mode FILTRATION***", 10, 290);
    }
    delay(1000);
  }
}

que se passe-t-il?

Merci pour votre retour.
Avec votre code, la navigation se fait bien entre le mode "baignade" et "filtration".
Par contre, dans le mode "filtration", il ne se passe rien si le flotteur est activé par exemple. A priori il faut appuyer pour qu'il "rafraichisse" la suite du code.

le code n'appelle pas vos fonctions donc c'est normal qu'il ne se passe rien. ça veut dire que soit vos fonctions modifient le système, soit ça plante et ça reboote par exemple

Si vous pouvez utiliser le moniteur série, faudrait rajouter des print un peu partout pour comprendre ce qu'il se passe.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.