fezder
Well-Known Member
So, i made this big-ish project, and now i encountered annoying phenoma: When lower leds are lit, they light also upper ones.
Currently current for each led is about 6mA (5volts supply voltage and 470 ohms resistor)
I made earlier smaller, 4x4x4 cube, but in that ghosting wasn't big issue as cube was inside enclosure covered with mirror-plated plexi, so that forgave some ghosting. Besided it has RTC clock so main purpose is clock, but cube is decoration.
Now, with bigger cube, it looks quite stupid and messy. I noticed that ghosting decreased when supply voltage was lowered to 3v3, ghosting was tolerable.
Led current would be ~3mA.
So, i was thinking possible cures for ghosting, and i'm now asking if anyone of you would know other alternatives and feedback for these (google did show other people with similar problems, but i really don't feel like painting leds undersides now that cube is done....)
1: delay and blanking in code
no other leds have ghosting effect, only the ones right on top of currently-on ones
2: change bigger value resistors
doable, don't have currently enought suitable value resistors
3: PWM drive to layers darlington array with fet (whole cube dimming)
This would save trouble of changing resistors, but i never pwm-dimmed darlington array, so any issues in there?
4: painting undersides of leds
Yeah, 512 leds to be painted, well doable if nothing else. I did try with external led, placed nail polish and it didn't help that much
So, for help, video as well as circuit & code
in circuit AX means anodes, and C_L means cathodes_layers. Didn't wanna mess up drawing whole cube

Thanks!
Currently current for each led is about 6mA (5volts supply voltage and 470 ohms resistor)
I made earlier smaller, 4x4x4 cube, but in that ghosting wasn't big issue as cube was inside enclosure covered with mirror-plated plexi, so that forgave some ghosting. Besided it has RTC clock so main purpose is clock, but cube is decoration.
Now, with bigger cube, it looks quite stupid and messy. I noticed that ghosting decreased when supply voltage was lowered to 3v3, ghosting was tolerable.
Led current would be ~3mA.
So, i was thinking possible cures for ghosting, and i'm now asking if anyone of you would know other alternatives and feedback for these (google did show other people with similar problems, but i really don't feel like painting leds undersides now that cube is done....)
1: delay and blanking in code
no other leds have ghosting effect, only the ones right on top of currently-on ones
2: change bigger value resistors
doable, don't have currently enought suitable value resistors
3: PWM drive to layers darlington array with fet (whole cube dimming)
This would save trouble of changing resistors, but i never pwm-dimmed darlington array, so any issues in there?
4: painting undersides of leds
Yeah, 512 leds to be painted, well doable if nothing else. I did try with external led, placed nail polish and it didn't help that much
So, for help, video as well as circuit & code

C:
int dataPin = 2; //IC 14 //Define which pins will be used for the Shift Register control
int latchPin = 3; //IC 12
int clockPin = 4; //IC 11
//OE-GND
//MR-VCC
int seq[14] = {1,2,4,8,16,32,64,128,64,32,16,8,4,2}; //The byte sequence
void setup()
{
DDRD = DDRD | B00011100;
/*pinMode(dataPin, OUTPUT); //Configure each IO Pin
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);*/
}
void loop()
{
for (int n = 0; n < 14; n++)
{
PORTD = B00000000;
//digitalWrite(latchPin, LOW); //Pull latch LOW to start sending data
shiftOut(dataPin, clockPin, MSBFIRST, seq[n]); //Send the data
PORTD = B00001000;
//digitalWrite(latchPin, HIGH); //Pull latch HIGH to stop sending data
delay(75);
}
}
Thanks!
Last edited: