Ciao , allego il codice modificato come da consigli di Weierstrass
ma non ho capito dove devo mettere questa riga... leds
=
qui stai scrivendo fuori dall'array, con possibile comportamento indefinito del tuo codice
Invece questa riga.... leds(NUM_LEDS / 1, NUM_LEDS - 1) = leds(NUM_LEDS / 5 - 1 , 0);
come scrissi ieri,
l'ho tolta in quanto inutile
Infine questo.... FastLED.delay(30);
Questi delay mettili al massimo possibile che almeno si capisce che sta succedendo nel tuo codice.
regola la pausa prima di accendere il successivo led, quindi aumentandolo, la scia rallenta la sua corsa
#include <FastLED.h>
#define NUM_LEDS 230
CRGBArray<NUM_LEDS> leds;
void setup(){
FastLED.addLeds<NEOPIXEL, 6>(leds, NUM_LEDS);
}
void loop()
{
static uint8_t hue;
int SensoreSu = analogRead(A2);
if(SensoreSu > 140)
{
for (int i = 230; i > -1; i--)
{
leds.fadeToBlackBy(10);// lo spazio spento tra la sequenza ( scia) iniziale e quella finale
leds[i] = CHSV(hue++, 255, 255);
FastLED.delay(30); // attesa di accensione del led successivo
}
}
else
{
for (int i = 0; i > -1; i--)
{
leds.fadeToBlackBy(1);
leds[i] = CHSV(hue++, 255, 255);
FastLED.delay(30);
}
}
}