Go Down

Topic: Arduino Lightsaber (Read 449017 times) previous topic - next topic

JakeSoft

I actually think the scroll up doesn't work. I set stream to 5 seconds for both scroll up and scroll down. Here is a test with the preview function in stream:
https://youtu.be/DHmEznD5iBU
And a test with it saved and disconnected:
https://youtu.be/Fz4_BedHTvM
Thanks for posting that so we can see it. It kind of looks like maybe the frame timing is off or something. Depending on where you got your pixel strip, there is some variance in the timeout required to actually display a frame despite various manufactures claiming compliance with the standard. I suspect the frames are being sent to the blade, but the timeout to wait for the frame to be displayed may too short for your particular strip. It's clearly dropping frames somewhere.

jbkuma

I actually think the scroll up doesn't work. I set stream to 5 seconds for both scroll up and scroll down. Here is a test with the preview function in stream:
https://youtu.be/DHmEznD5iBU
And a test with it saved and disconnected:
https://youtu.be/Fz4_BedHTvM
Assuming everything is hooked up correctly and the battery is capable and fully charged then here are my suggestions:

First make sure there is a resistor 220 to 470 on the strip.  It has to be on the strip.  If it's not on the strip it will not help at all.  The resistor is for signal integrity relating to ringing effects caused by impedance.

Second, if the arduino is connected via usb and the strip is powered by the battery, the difference between the Vin on the strip and the 5v signal from the arduino could cause this issue.  Remove the USB cable and power the Arduino with the battery via the 5V pin.   The signal should be between the Vin on the strip and Vin-0.7 or so.  Results may vary and I have plenty of pixels running fine on a 3v3 signal with 5v supply.   Having a higher signal to Vin is not suggested.

If neither of those work, the fist pixel could be damaged, try soldering to the next pixel in line.

I have a pixel matrix of 1800 pixels and had to wrestle with many of these sorts of issues to get it working properly.  Finally I had to hunt down 2 pixels in middle of the array to get it to work properly.  They where damaged when a buck converter I was using latched at a high voltage.  Luckily it was only those two that needed replacing.

JakeSoft

#1487
Aug 01, 2020, 08:20 pm Last Edit: Aug 01, 2020, 08:23 pm by JakeSoft
JBKuma,
Thanks for those suggestions. You are far more experienced with these addressable LEDs than I am so you're insights are welcome.

gdadourian,
I'm attaching to this post an experimental version of the firmware that has relaxed frame timings. This will guarantee that there is at least a full millisecond between each frame. If your pixel strip is too slow to keep up with the normal timing for some reason, this will at least address that. If it is anything that JBKuma called out then it may do nothing. I have no way of knowing since I can't reproduce your particular issue.

To install this experimental version, just extract the zip file then replace the file in the STREAM distro under the firmware folder with this new one. Then flash the firmware over USB from the GUI as usual. If this firmware fixes the issue, I'll consider making relaxed frame timings a select-able option from the Options screen in the future.

Go Up