Open Kamal-Sonani opened 4 years ago
Use --verbose command line option which will show you how the internal buffer is filled and managed, that will give you rough idea where to focus troubleshooting.
By the way can you post your command line options?
https://www.youtube.com/watch?v=QBZyEKiyt6U
just check this video
Append --verbose to your command line options
neoLEDViewer.py --led WS2811 --layout SnakeL2R --width 10 --height 10 --port com6 --verbose
Just make sure led panel width and height mention the command line and you led controller's configured width and height matches.
As per your video I think hardware is working at least, try to view the terminal output in hex mode.
neoLEDViewer.py --led WS2811 --layout SnakeL2R --width 10 --height 10 --port com6 --verbose
--verbose showing some data, but no success
check it here https://youtu.be/Y6RfQIV-6Gs
Could you copy paste the log? It's difficult to read the log over the video. Also upload the dump.bin which you can find it in the folder from where you executed the neoLEDViewer.py
Also did you tune the pot to match your led timing?
For ws2811 approximately you have to keep the pot @ middle position (10k)
In your led controller how many leds have you configured to drive? And what's your led panel size in number of rows and columns.
@123swk123 yes, i placed 50k variable pot & set to 10k with 33pf cap.
Dump file remains 0kb (while running or closed GUI of python)
I'll verify & update with same.
I'm driving 2000 led @ 40 width & 50 height With T1000 controller (ws2811)
As per your youtube log I see that python application is unable to find the EOS (0D 0A) sequence, this can happen only when clock recovery is having some trouble.
Without the verbose log and dump file it's very difficult for me to help you with troubleshooting.
Possible solution for now,
Set the led size to 2 or 4 through command line option, for rendering 2000 leds Qt QML takes huge CPU resource if LED size > 8, so this may lead to buffer loss.
--ledsize 2
Also you could tune the POT slowly until you see some activity on the python viewer.
Here is log file dump.zip
& For verbose check video https://youtu.be/w-OPn9B3ZMA
suspect (i think ) >>my controller's dataline blue dataline = 600 led yellow dataline = 2000 led
led works well on both dataline yellow line is without any reset pulse in between each 3 byte (RGB) & blue dataline have small delay pulse
after one complete frame (600 led & 2000 led )each dataline have little bit longer reset pulse
Let me go through the dump zip, by the way did you try to tune the pot while led controller running?
Yes,
I tried with tune.
in the dump.bin does not have '0D 0A' sequence this means your hardware was not able to sense the reset led signal which is generated by LED controller. so the root cause of this problem is clock recovery mechanism.
using your DSO check the pin 9 and 8 of pic16f18325 for clock recovery, it should have approximately 50% to 60% duty cycle.
FYI: this hardware expects 5v LED signal and not 3.3v voltage level.
suspect (i think ) >>my controller's dataline blue dataline = 600 led yellow dataline = 2000 led
led works well on both dataline yellow line is without any reset pulse in between each 3 byte (RGB) & blue dataline have small delay pulse
after one complete frame (600 led & 2000 led )each dataline have little bit longer reset pulse
I just remembered due to python implementation it has limitation on FPS, currently at the max it supports 5 ~ 8fps for 2000LEDs and 20 ~ 25fps for about 600LEDs
for more higher speed we may have to do native implementation using C/C++.
capturing 2000 LEDs @ ledsize 5
&$env:pythonpath .\neoLEDViewer.py --led WS2811 --layout ZigZagL2R --width 100 --height 20 --port COM10 --ledsize 5
I tried as your documentation , but not getting any animation on matrix.
Is their any other way to verify ?