Ultrasonic sensor and ledstrip color problem
I believe your mistake is in this part of your code:

  yellow = distance &lt;= YELLOW_THRESHOLD &amp;&amp; distance &gt; RED_THRESHOLD;
  red = distance &lt;= RED_THRESHOLD;
  green = distance &gt; YELLOW_THRESHOLD &amp;&amp; distance &lt;= GREEN_THRESHOLD;

  if (red) {
    setRed();
  } else if (yellow) {
    setYellow(distance);
  } else if (green) {
    setGreen(distance);
  } else {
    setGreenStandby();
  }


In particular, you are defining three boolean variables independently and then switching based on their values.

Assuming you are seeing the right values output on serial monitor (like 90 cm, 60 cm, etc...), which is something I'm unsure of as I'm not getting how you are determining the distance, then the following should be easier to follow/understand:

if (distance &gt; GREEN_THRESHOLD) {
  setGreenStandby();
} else if (distance &gt; YELLOW_THRESHOLD) {
  setGreen(distance);
} else if (distance &gt; RED_THRESHOLD) {
  setYellow(distance);
} else {
  setRed();
}


You have only one variable determining the led strip configuration, no need to go to 3 and then try to reduce again ;-)

Please note that your YELLOW_THRESHOLD is defined as 140, if you don't ever see a message in the serial monitor greater than that value you don't have a chance of seeing any colour other than red.... I'm asking because you mentioned I also want a longer distance greater than 1 meter that might imply your sensor is unable to go farther than 1 meter...

With the code above I'm checking the distance in a greater to smaller order: the first matching is the only one activated and it's impossible for the distance variable to match more than one condition. Generally speaking, simpler is better.