Please explain why my manual inputs go low.

Hi.
I have quite long sketch here, ive been working on it for the last month also learning in the same time. right on the beginning i have just simple 10 buttons. 8 of them control either up or down, another 2 set 4 up and 4 down. everything was fine until i decide to make automatic up with interrupting after 10second if value was not reached. now, im trying to figure it what happend, this is my 2nd day by at least 12h and i just don`t know what is going on.

Simply the entire inputs are low as soon as few seconds after reset, also double click quits after milisecond. just led bliks for half second and thats it.

I appreciate if you could spend little time tweaking thru my sketch.

First Part

void setup()
{
  Serial.begin(9600);
  
  // initialize and set the contrast to 0x18
  glcd.begin(0x18);

  glcd.display(); // show Logo
  delay(3000);
  glcd.clear();
  
  //▼RGB
  setColor(0, 0, 0);
  count = EEPROM.read(10);
  pinMode(RGBbut, INPUT_PULLUP);
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);     
  //▼Buttons
  pinMode(FLUp, INPUT_PULLUP);
  pinMode(FLDown, INPUT_PULLUP);
  pinMode(FRUp, INPUT_PULLUP);
  pinMode(FRDown, INPUT_PULLUP);
  pinMode(RLUp, INPUT_PULLUP);
  pinMode(RLDown, INPUT_PULLUP);
  pinMode(RRUp, INPUT_PULLUP);
  pinMode(RRDown, INPUT_PULLUP);
  pinMode(allUp, INPUT_PULLUP);
  pinMode(allDown, INPUT_PULLUP);
  pinMode(autoAllUp, INPUT_PULLUP);
  pinMode(autoAllDown, INPUT_PULLUP);
  pinMode(RGBbut, INPUT_PULLUP); 
  //▼Solenoids  
  pinMode(FLSolUp, OUTPUT);
  pinMode(FLSolDown, OUTPUT);
  pinMode(FRSolUp, OUTPUT);
  pinMode(FRSolDown, OUTPUT);
  pinMode(RLSolUp, OUTPUT);
  pinMode(RLSolDown, OUTPUT);
  pinMode(RRSolUp, OUTPUT);
  pinMode(RRSolDown, OUTPUT);
  //▼Pressure Sensors
  pinMode(sensor1, INPUT);
  pinMode(sensor2, INPUT);
  pinMode(sensor3, INPUT);
  pinMode(sensor4, INPUT);
  pinMode(sensor5, INPUT);

}



void loop()
{
  
//Single
   digitalWrite(FLSolUp, !digitalRead(FLUp));
   digitalWrite(FLSolDown, !digitalRead(FLDown));
   digitalWrite(FRSolUp, !digitalRead(FRUp));
   digitalWrite(FRSolDown, !digitalRead(FRDown));
   digitalWrite(RLSolUp, !digitalRead(RLUp));
   digitalWrite(RLSolDown, !digitalRead(RLDown));
   digitalWrite(RRSolUp, !digitalRead(RRUp));
   digitalWrite(RRSolDown, !digitalRead(RRDown));
   
 //All UP
 if (digitalRead(allUp) == LOW)
 {
   digitalWrite (FLSolUp, HIGH);
   digitalWrite (FRSolUp, HIGH);
   digitalWrite (RLSolUp, HIGH);
   digitalWrite (RRSolUp, HIGH);
   
 }
 //All down
 if (digitalRead(allDown) == LOW)
{
   digitalWrite (FLSolDown, HIGH);
   digitalWrite (FRSolDown, HIGH); 
   digitalWrite (RLSolDown, HIGH); 
   digitalWrite (RRSolDown, HIGH); 
}


 int reading = digitalRead(autoAllUp); //single button you assign for double and hold press
               
    
    
    if(pressureFL >= EEPROM.read(20)) //Need 5 eeprom addresses and tag pressure from 1-5 rg. pressure1, pressure2.
    {
      doNothingFL();
    }
    if(pressureFR >= EEPROM.read(30))
    {
      doNothingFR();
    }
    if(pressureRL >= EEPROM.read(40))
    {
      doNothingRL();
    }
    if(pressureRR >= EEPROM.read(50))
    {
      doNothingRR();
    }
      
    if (FLSolUp == HIGH);
    if (millis() - onTime > elapsedTime) {
      if(pressureFL < EEPROM.read(20))
      {
        doNothingFL();
      }
    }    
    if (FRSolUp == HIGH);
    if (millis() - onTime > elapsedTime) {
      if(pressureFR < EEPROM.read(30))
      {
        doNothingFR();
      }
    }
    if (RLSolUp == HIGH);
    if (millis() - onTime > elapsedTime) {
      if(pressureRL < EEPROM.read(30))
      {
        doNothingRL();
      }
    }
    if (RRSolUp == HIGH);
    if (millis() - onTime > elapsedTime) {
      if(pressureRR < EEPROM.read(30))
      {
        doNothingRR();
      }
    }

Second Part

    //First Pressed
    if(reading == LOW && lastReading == HIGH) {
      onTime = millis();
    }  
    //Held  
    if(reading == LOW && lastReading == LOW) {
      if((millis() - onTime) > holdTime) {
      hold = 1;
      blinkLED();
      }
    }
  //Released
  if (reading == HIGH && lastReading == LOW) {
    if (((millis() - onTime) > bounceTime) && hold != 1)  {
      doublePress();
    }
    if(hold == 1)  {
   Serial.println("HELD"); 
   storeMemoryFL();
   storeMemoryFR();
   storeMemoryRL();
   storeMemoryRR();
   hold = 0;
      }
  }

lastReading = reading;


if (single == 1 && (millis() - lastSwitchTime) > doubleSwitchTime)  {
  Serial.println ("SINGLE PRESS");
  single = 0;
   }


   ButtonState = digitalRead(RGBbut);

  if(ButtonState && (ButtonState != lastState))  // button latch, no debounce needed!!!!!
  {
    if(count < 6) // This will check to see if the count is within a range of 0 - 6, and anything over that, it will reset count back to 0. Of course, this will happen anyways because count is a BYTE, and not an int or any other type.
      count += 1; // same as count = count + 1;
    else
      count = 1;    
  } 
  lastState = ButtonState;

  if(count==1)setColor(255, 255, 255);  // White  
  if(count==2)setColor(255, 255, 0);  // Yellow  
  if(count==3)setColor(100, 255, 0);  // Green  
  if(count==4)setColor(0, 255, 255);  // Aqua    
  if(count==5)setColor(255, 0, 255);  // Purple  
  if(count==6)setColor(0, 255, 50);  // Blue
  
  //storing color to eeprom
  if(ButtonState == LOW ) {
      EEPROM.write(10,count);
     }
  
  //Sensor #1 FL 
   raw = analogRead(sensor1);
   voltage = (float) raw / 1023.0 * 5.0;
   pressureFL = (((float)analogRead(sensor1) / 1023.0 * 5.0) - 0.5) * 37.5;
   
  
   dtostrf(pressureFL, 4, 0, buffer); // display pressure on glcd
   glcd.drawstring(0, 2, buffer);
   glcd.drawrect(30, 5, 6, 20, BLACK);
   BarFL(pressureFL); //call function
   glcd.display();
    
    
    //Sensor #2 FR
    raw = analogRead(sensor2);
   voltage = (float) raw / 1023.0 * 5.0;
   pressureFR = (((float)analogRead(sensor2) / 1023.0 * 5.0) - 0.5) * 37.5;
   
  
   dtostrf(pressureFR, 4, 0, buffer); // display pressure on glcd
   glcd.drawstring(95, 2, buffer);
   glcd.drawrect(90, 5, 6, 20, BLACK);
   BarFR(pressureFR); //call function      
   glcd.display();
   
    //Sensor #3 RL
    raw = analogRead(sensor3);
   voltage = (float) raw / 1023.0 * 5.0;
   pressureRL = (((float)analogRead(sensor3) / 1023.0 * 5.0) - 0.5) * 37.5;
   
  
   dtostrf(pressureRL, 4, 0, buffer); // display pressure on glcd
   glcd.drawstring(0, 6, buffer);
   glcd.drawrect(30, 40, 6, 20, BLACK);
   BarRL(pressureRL); //call function   
   glcd.display();   
   
   //Sensor #4 RR
    raw = analogRead(sensor4);
   voltage = (float) raw / 1023.0 * 5.0;
   pressureRR = (((float)analogRead(sensor4) / 1023.0 * 5.0) - 0.5) * 37.5;
   
  
   dtostrf(pressureRR, 4, 0, buffer); // display pressure on glcd
   glcd.drawstring(95, 6, buffer);
   glcd.drawrect(90, 40, 6, 20, BLACK);
   BarRR(pressureRR); //call function   
   glcd.display();   
   
   
   //Sensor #5 TANK
    raw = analogRead(sensor5);
   voltage = (float) raw / 1023.0 * 5.0;
   pressureTANK = (((float)analogRead(sensor5) / 1023.0 * 5.0) - 0.5) * 37.5;
   
  
   dtostrf(pressureTANK, 4, 0, buffer); // display pressure on glcd
   glcd.drawstring(52, 1, "TANK");
   glcd.drawrect(48, 0, 31, 64, BLACK);
   BarTANK(pressureTANK); //call function   
   glcd.display();   
 
}

void doublePress() //CHECK HERE
  {
    
    if ((millis() - lastSwitchTime) >= doubleSwitchTime)  {
      single = 1;
      lastSwitchTime = millis();
      return;
    }
      if((millis() - lastSwitchTime) < doubleSwitchTime)  {
      int readMemFL = EEPROM.read(20);
      int readMemFR = EEPROM.read(30);
      int readMemRL = EEPROM.read(40);
      int readMemRR = EEPROM.read(50);
      
      Serial.println("DOUBLE PRESS");
      Serial.println(readMemFL);
      Serial.println(readMemFR);
      Serial.println(readMemRL);
      Serial.println(readMemRR);
      
      single = 0;
      lastSwitchTime = millis();
      
    
    if(pressureFL < readMemFL) 
   {
    upFL();  
   }
    if(pressureFL > readMemFL)
   {
    downFL();
   }
   if(pressureFR < readMemFR) 
   {
    upFR();  
   }
    if(pressureFR > readMemFR)
   {
     downFR();
   }
    if(pressureRL < readMemRL) 
   {
    upRL();  
   }
    if(pressureRL > readMemRL)
   {
     downRL();
   }    
   if(pressureRR < readMemRR) 
   {
    upRR();  
   }
    if(pressureRR > readMemRR)
   {
     downRR();
   }
  }
  }
  
   void storeMemoryFL()
  {
    EEPROM.write(20,pressureFL);
    Serial.println("DONE FL");
  }
   void storeMemoryFR()
  {
    EEPROM.write(30,pressureFR);
    Serial.println("DONE FR");
  }
   void storeMemoryRL()
  {
    EEPROM.write(40,pressureRL);
    Serial.println("DONE RL");
  }
   void storeMemoryRR()
  {
    EEPROM.write(50,pressureRR);
    Serial.println("DONE RR");
  }
  
  void blinkLED()  //Blink led, you must use display RGB in final prototype
  {    
    setColor(255, 0, 0);
    delay(200);
    setColor(0, 0, 0); 
    delay(200);
    setColor(255, 0, 0);
    delay(200);
    setColor(0, 0, 0); 
    delay(200);
    setColor(255, 0, 0);
    delay(200);
    setColor(0, 0, 0); 
    delay(200);
    setColor(255, 0, 0);
    delay(200);
    setColor(0, 0, 0); 
    delay(200);    
        
  }
  
  void upFL()
    {
     digitalWrite(FLSolUp, HIGH); //convert to solenoids in final prototype
    }
    
  void doNothingFL()
    {
      digitalWrite(FLSolUp, LOW); //convert to solenoids in final prototype      CHECK HERE
    }
  
  void downFL()
    {
      digitalWrite(FLSolDown, LOW); //convert to solenoids in final prototype     LOW here convert to high later for second button
    }
    void upFR()
    {
     digitalWrite(FRSolUp, HIGH); //convert to solenoids in final prototype
    }
    
  void doNothingFR()
    {
      digitalWrite(FRSolUp, LOW); //convert to solenoids in final prototype      
    }
  
  void downFR()
    {
      digitalWrite(FRSolDown, LOW); //convert to solenoids in final prototype     
    }
    void upRL()
    {
     digitalWrite(RLSolUp, HIGH); //convert to solenoids in final prototype
    }
    
  void doNothingRL()
    {
      digitalWrite(RLSolUp, LOW); //convert to solenoids in final prototype      
    }
  
  void downRL()
    {
      digitalWrite(RLSolDown, LOW); //convert to solenoids in final prototype     
    }
void upRR()
    {
     digitalWrite(RRSolUp, HIGH); //convert to solenoids in final prototype
    }
    
  void doNothingRR()
    {
      digitalWrite(RRSolUp, LOW); //convert to solenoids in final prototype      
    }
  
  void downRR()
    {
      digitalWrite(RRSolDown, LOW); //convert to solenoids in final prototype     
    }

Third Part

void setColor(int red, int green, int blue)//RGB Color
{  
    red = 255 - red;
    green = 255 - green;
    blue = 255 - blue;
  
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);  
}


void BarFL(int value, int low, int high, int x, int y, int w, int h, int F_color, int B_color) //FL
{
  static int lastV = -1, move = 0;
  int Val = map(value, low, high, 0, h-1);

  if (Val != lastV) // prevents it from constantly being redrawn on the screen
  {
    if ( Val > lastV)
    {
      for (move; move <= Val; move++)
      {
        glcd.drawline(x, y - move, w + 1, y - move, F_color);
      }
      glcd.display();
      lastV = Val;
    }
    else
    {
      for (move; move >= lastV; move--)
      {
        glcd.drawline(x, y - (move-1), w + 1, y - (move-1), B_color);
      }
      glcd.display();
    }
    lastV = Val;
  } 
}


void BarFR(int value, int low, int high, int x, int y, int w, int h, int F_color, int B_color)   // FR
{
  static int lastV = -1, move = 0;
  int Val = map(value, low, high, 0, h-1);

  if (Val != lastV) // prevents it from constantly being redrawn on the screen
  {
    if ( Val > lastV)
    {
      for (move; move <= Val; move++)
      {
        glcd.drawline(x, y - move, w + 1, y - move, F_color);
      }
      glcd.display();
      lastV = Val;
    }
    else
    {
      for (move; move >= lastV; move--)
      {
        glcd.drawline(x, y - (move-1), w + 1, y - (move-1), B_color);
      }
      glcd.display();
    }
    lastV = Val;
  } 
}


void BarRL(int value, int low, int high, int x, int y, int w, int h, int F_color, int B_color)   // RL
{
  static int lastV = -1, move = 0;
  int Val = map(value, low, high, 0, h-1);

  if (Val != lastV) // prevents it from constantly being redrawn on the screen
  {
    if ( Val > lastV)
    {
      for (move; move <= Val; move++)
      {
        glcd.drawline(x, y - move, w + 1, y - move, F_color);
      }
      glcd.display();
      lastV = Val;
    }
    else
    {
      for (move; move >= lastV; move--)
      {
        glcd.drawline(x, y - (move-1), w + 1, y - (move-1), B_color);
      }
      glcd.display();
    }
    lastV = Val;
  } 
}

void BarRR(int value, int low, int high, int x, int y, int w, int h, int F_color, int B_color)   // RR
{
  static int lastV = -1, move = 0;
  int Val = map(value, low, high, 0, h-1);

  if (Val != lastV) // prevents it from constantly being redrawn on the screen
  {
    if ( Val > lastV)
    {
      for (move; move <= Val; move++)
      {
        glcd.drawline(x, y - move, w + 1, y - move, F_color);
      }
      glcd.display();
      lastV = Val;
    }
    else
    {
      for (move; move >= lastV; move--)
      {
        glcd.drawline(x, y - (move-1), w + 1, y - (move-1), B_color);
      }
      glcd.display();
    }
    lastV = Val;
  } 
}


void BarTANK(int value, int low, int high, int x, int y, int w, int h, int F_color, int B_color)   // TANK
{
  static int lastV = -1, move = 0;
  int Val = map(value, low, high, 0, h-1);

  if (Val != lastV) // prevents it from constantly being redrawn on the screen
  {
    if ( Val > lastV)
    {
      for (move; move <= Val; move++)
      {
        glcd.drawline(x, y - move, w + 1, y - move, F_color);
      }
      glcd.display();
      lastV = Val;
    }
    else
    {
      for (move; move >= lastV; move--)
      {
        glcd.drawline(x, y - (move-1), w + 1, y - (move-1), B_color);
      }
      glcd.display();
    }
    lastV = Val;
  } 
}

why do you have semicolons on these?

if (FLSolUp == HIGH);
if (millis() - onTime > elapsedTime) {
if(pressureFL < EEPROM.read(20))
{
doNothingFL();
}
}
if (FRSolUp == HIGH);
if (millis() - onTime > elapsedTime) {
if(pressureFR < EEPROM.read(30))
{
doNothingFR();
}
}
if (RLSolUp == HIGH);
if (millis() - onTime > elapsedTime) {
if(pressureRL < EEPROM.read(30))
{
doNothingRL();
}
}
if (RRSolUp == HIGH);
if (millis() - onTime > elapsedTime) {
if(pressureRR < EEPROM.read(30))
{
doNothingRR();
}
}

I haven’t looked at the rest of the code yet.

Also you are wasting memory if you keep making new bar functions, just have one function (Bar), then put a comment beside it that tells you which one it goes to.

Sorry i removed them while ago, just forget to take the off. by the way, that didn`t solved the problem.

You need to post your global variable too.

Global

//Front panel control
#include "ST7565.h"
#include <EEPROM.h>

//▼ Inputs Pins
const int FLUp = 30;
const int FLDown = 31;
const int FRUp = 32;
const int FRDown = 33;
const int RLUp =34;
const int RLDown = 35;
const int RRUp = 36;
const int RRDown = 37;
const int allUp = 40;
const int allDown = 41;
const int autoAllUp = 48;
const int autoAllDown = 49;
//▼Outputs Pins
const int FLSolUp = 22;
const int FLSolDown = 23;
const int FRSolUp = 24;
const int FRSolDown = 25;
const int RLSolUp = 26;
const int RLSolDown = 27;
const int RRSolUp = 28;
const int RRSolDown = 29;
//▼Sensor Inputs
int sensor1 = A0;
int sensor2 = A1;
int sensor3 = A2;
int sensor4 = A3;
int sensor5 = A4;
//▼RGB
int redPin = 12;
int greenPin = 11;
int bluePin = 10;
const byte RGBbut = 52;
byte ButtonState;
byte lastState = LOW;
byte count = 0;
//▼Other
char Val[5]; 
char buffer[5];
int raw;
float voltage;
float pressureFL; //Pressure PSI
float pressureFR;
float pressureRL;
float pressureRR;
float pressureTANK;
//▼Double and Hold
int bounceTime = 50;
int holdTime = 1500;
int doubleSwitchTime = 700;
int doubleReleaseTime = 3000;
unsigned long elapsedTime = 10000;
int lastReading = HIGH;
int hold = 0;
int single = 0;
int LEDstate = 0;
int readMem = 0;
long onTime = 0;
long lastSwitchTime = 0;

ST7565 glcd(9, 8, 7, 6, 5);

#define LOGO16_GLCD_HEIGHT 16 
#define LOGO16_GLCD_WIDTH  16 

// a bitmap of a KRONE icon
static unsigned char __attribute__ ((progmem)) logo16_glcd_bmp[]={
0x30, 0xf0, 0xf0, 0xf0, 0xf0, 0x30, 0xf8, 0xbe, 0x9f, 0xff, 0xf8, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 
0x20, 0x3c, 0x3f, 0x3f, 0x1f, 0x19, 0x1f, 0x7b, 0xfb, 0xfe, 0xfe, 0x07, 0x07, 0x07, 0x03, 0x00, };



void BarFL(int value = sensor1, int low = 0, int high = 120, int x = 31, int y = 24, int w = 33, int h = 20, int F_color =  BLACK, int B_color = WHITE); //Bargraph 1 FL
void BarFR(int value = sensor1, int low = 0, int high = 120, int x = 91, int y = 24, int w = 93, int h = 20, int F_color =  BLACK, int B_color = WHITE); //Bargraph 2 FR
void BarRL(int value = sensor1, int low = 0, int high = 120, int x = 31, int y = 58, int w = 33, int h = 20, int F_color =  BLACK, int B_color = WHITE); //Bargraph 3 RL
void BarRR(int value = sensor1, int low = 0, int high = 120, int x = 91, int y = 58, int w = 93, int h = 20, int F_color =  BLACK, int B_color = WHITE); //Bargraph 4 RR
void BarTANK(int value = sensor1, int low = 0, int high = 150, int x = 50, int y = 63, int w = 75, int h = 42, int F_color =  BLACK, int B_color = WHITE); //Bargraph 5 TANK

I also noticed:

if (FLSolUp == HIGH)

These are your pins, which will always be true!

What you want to do is a digital read of them then compare them to either HIGH or LOW. As such.
if (digitalRead(FLSolUp) == HIGH)

UPDATE:
If i remove manual inputs from sketch, than double click function call works and quit function call if pressure is reached

//Single
   digitalWrite(FLSolUp, !digitalRead(FLUp));
   digitalWrite(FLSolDown, !digitalRead(FLDown));
   digitalWrite(FRSolUp, !digitalRead(FRUp));
   digitalWrite(FRSolDown, !digitalRead(FRDown));
   digitalWrite(RLSolUp, !digitalRead(RLUp));
   digitalWrite(RLSolDown, !digitalRead(RLDown));
   digitalWrite(RRSolUp, !digitalRead(RRUp));
   digitalWrite(RRSolDown, !digitalRead(RRDown));
   
 //All UP
 if (digitalRead(allUp) == LOW)
 {
   digitalWrite (FLSolUp, HIGH);
   digitalWrite (FRSolUp, HIGH);
   digitalWrite (RLSolUp, HIGH);
   digitalWrite (RRSolUp, HIGH);
   
 }
 //All down
 if (digitalRead(allDown) == LOW)
{
   digitalWrite (FLSolDown, HIGH);
   digitalWrite (FRSolDown, HIGH); 
   digitalWrite (RLSolDown, HIGH); 
   digitalWrite (RRSolDown, HIGH); 
}

and also if i remove
if (FLSolUp == HIGH) from

if (FLSolUp == HIGH)
    if (millis() - onTime > elapsedTime) {
      if(pressureFL < EEPROM.read(20))
      {
        doNothingFL();
      }
    }

than double click quits either if pressure is reached or 10 seconds elapes

And when you took those semi-colons out, did you bracket the next block in {}?

//before

if (FRSolUp == HIGH);
    if (millis() - onTime > elapsedTime) {
      if(pressureFR < EEPROM.read(30))
      {
        doNothingFR();
      }
    }
    

//after

if (FRSolUp == HIGH) 
{    
    if (millis() - onTime > elapsedTime) {
      if(pressureFR < EEPROM.read(30))
      {
        doNothingFR();
      }
    }
}

HazardsMind: I also noticed: These are your pins, which will always be true!

What you want to do is a digital read of them then compare them to either HIGH or LOW. As such. if (digitalRead(FLSolUp) == HIGH)

Ok, i noticed my fault. i`ve make correction and works but still i cannot use my manual input unless i drive them outside the chip. But the how i bypass 4 outputs with one button without spagetti on pcb

JimboZa. No. thanks for your reply. corrected your point

Something else here is also not right. Take a closer look.

if (digitalRead(FLSolUp) == HIGH)
if (millis() - onTime > elapsedTime) {
if (pressureFL < EEPROM.read(20))
{
doNothingFL();
}
}

if (digitalRead(FRSolUp) == HIGH)
if (millis() - onTime > elapsedTime) {
if (pressureFR < EEPROM.read(30))
{
doNothingFR();
}
}

if (digitalRead(RLSolUp) == HIGH)
if (millis() - onTime > elapsedTime) {
if (pressureRL < EEPROM.read(30))
{
doNothingRL();
}
}

if (digitalRead(RRSolUp) == HIGH)
if (millis() - onTime > elapsedTime) {
if (pressureRR < EEPROM.read(30))
{
doNothingRR();
}
}

Another point here.

if i do

if(pressureFL >= EEPROM.read(20)) 
    {
      doNothingFL();
    }

output will quit its as soon as he reach eeprom value, but it dosent work the other way if pressure is greater than called pressure.

if i do

if(pressureFL == EEPROM.read(20))
     {doNothingFL();
     }

will ignore preset pressure and carry inflating over the programmed eeprom value

HazardMind. Curly braces?

if (digitalRead(FLSolUp) == HIGH) {
    if (millis() - onTime > elapsedTime) {
      if(pressureFL < EEPROM.read(20))
      {
        doNothingFL();
      }
    }
    }

or should the onTime be millis withing the if statement.
if i understand right. millis() is a time from reset right. onTime is variable, but i don`t know where he takes his values, and elapesd time is the one o want to compare.
am I missing something?

No, the address. you have three of them at addr 30.

Ups. thanks corrected. i wonder why i never noticed that.