Problema con TLC5940 e led che rimangono mezzi accesi

Giorno!
Sto sperimentando con dei TLC5940 e dei led per un progetto che sto facendo.
Dopo un po' di tentativi, ho trovato i collegamenti perfetti per me ma ho trovato anche dei problemi.

Questa è la mia configurazione corrente:

A - Condensatore 1500µF 10V ELNA per limitare il ripple
B1 e B2 - Resistenze per limitare la corrente che va ai led
C - Arduino NANO connesso via usb @ Ubuntu Studio
D1 e D2 - TLC5940 concatenati
E - 5v da Arduino, non c'è niente collegato per ora.
F - 5v da un alimentatore 10A @ 5V per alimentare i led e i chip
Linea Verde - Terra, comune per tutto

Questi sono i voltaggi che ho in questo momento (E Arduino, F alimentatore)

Questo è il codice (commentato in inglese):

#include "Tlc5940.h" // Include TLC5940 library
#include "tlc_fades.h" // Include animation library
int incomingByte; // Var for serial data
int led = 0; // Var for led
 
void setup() {
	Tlc.init(); // Init TLC library
	Serial.begin(9600); // Open serial port, 9600bps
}
 
void loop() {
	incomingByte = Serial.read(); // Read the serial port and give its value to incomingByte
	if(incomingByte > 0) { // If i receive something from serial
		led = random(0,32); // Get a random led
		tlc_addFade(led, 0, 4096, millis(), millis()+80); // Add to the queue a fade from 0 to 4095 brightness from now to now+80ms
		tlc_addFade(led, 4096, 0, millis()+81, millis()+600); // Add to the queue a fade from now+81ms to now+600ms from 4095 to 0 brightness
	}
	tlc_updateFades(); // Update and display the fades.
}

In pratica se dico qualcosa ad Arduino via seriale lui accende un led.

Ora ecco il problema. Dopo un lampeggio il led invece che spegnersi resta leggermente acceso, come se avessi impostato il pwm a 1. Non si riesce a vedere molte volte, ma su alcuni led si vede molto bene.
Come risolvo?

Se faccio Tlc.Set(led, 0) dopo il lampeggio il led si spegne completamente e il problema sparisce, quindi credo il problema sia software, o forse non lo è?
Pensavo anche ad un altra cosa. Magari è il led connesso al pin 13 che da fastidio ai dati che escono da quel pin stesso?

Grazie!

puoi diseganre lo schema? perfavore?

Sulla lampada Rgb che mi sono fatto credo di aver notato qualcosa di simile, per evitare disturbi quando faccio l'upload dello stato uso questa sequenza:

  • Tlc.setAll(0) iniziale
  • serie di Tlc.set(x, y) per impostare le uscite che mi servono
  • Tlc.update() finale

Controlla anche la R da 10K sul pin BLANK per dare lo stato di spento a tutti i led nel caso non ci siano dati in arrivo (esempio, reset di Arduino). Non vedo poi la R per limitare la corrente sui pin dei TLC5940.

lesto:
puoi diseganre lo schema? perfavore?

Ciao. Questo è lo schema che utilizzo:

leo72:
Sulla lampada Rgb che mi sono fatto credo di aver notato qualcosa di simile, per evitare disturbi quando faccio l'upload dello stato uso questa sequenza:

  • Tlc.setAll(0) iniziale
  • serie di Tlc.set(x, y) per impostare le uscite che mi servono
  • Tlc.update() finale

Controlla anche la R da 10K sul pin BLANK per dare lo stato di spento a tutti i led nel caso non ci siano dati in arrivo (esempio, reset di Arduino). Non vedo poi la R per limitare la corrente sui pin dei TLC5940.

Ciao,
le resistenze per limitare la corrente sono quelle in alto (B1 e B2). Ne vedi quattro perchè ne utilizzo due in serie per ogni tlc visto che non avevo il valore giusto.

Niente, facendo tutto quelli che mi hai consigliato non funziona ancora. Oggi dovrebbero arrivarmi dei nuovi TLC direttamente dalla Texas, li cambio e guardo se danno gli stessi problemi.

Lo schema è quello.

Ok, tienici informati per i nuovi chip.