Parola - Corrupted Zones Query

I see the Arduino community forum has changed since the last time I used it. I hope I'm posting to the right part of the forum to ask the following question...

However, my query is about problems when displaying text and numerical data across Parola multi zoned LED matrices.

I've created a 22 x 8 x 8 module, 4 x zone led matrix display. It's around 90cm in length. The LED modules are from ElectroDragon. It's driven from an ESP32 microcontroller. The code to run the display is written using the Parola library.

My multi zone display has ticked along nicely for around a year without problems.

Eventually, once satisfied everything is working reliably, I decided to make the prototype more tidy in terms of the hardware layout. After "tidying" the physical layout I noted that the display became prone to display corruption.

For example, the most observed problem is from the last LED matrix modules in the strip corresponding to the 4th zone. The final zone, the most leftward zone, is displaying the clock readout from a DS3231 RTC. However, the display problems are not always confined to the clock display, sometimes other zones are randomly affected. Whatever, the corruption is very intermittent and sometimes iron themselves out, so to speak over time. On the whole the display is stable but sometimes, overnight for example, the display is missing on some LED modules or characters corrupted.

I've come to the conclusion that timing errors are creeping in but I don't know why they should've started doing this when I've had such stable performance previously for a long time.

Before asking about possible problems with my code, I should like to ask if anyone is aware of the limitations or any known problems in running multi zone configurations.

For example, what should be the maximum length of Vcc, GND, Data In, CLK and CS cables between the microcontroller and the first matrix in the strip?

Does anyone recommend using a 220 ohm resistor in series with the Data In feed from the microcontroller data feed?

There maybe other hardware constraints I'm not aware of, those which may make implementing multi zoned displays prone to errors.

I hope this question is not too cryptic at this point.

Thanks in advance.

How is power connected to the LED modules ? Is it daisy-chained from one to the other or is it connected directly from the power supply to intermediate points along the length of the displays ?

What is the specification of the power supply (voltage/current) ?

I assume that you have checked the soundness of your tidy hardware layout. What did you change ?

Thank you,

My initial query was to ask anyone if they'd encountered known problems with running these modules before I went further. Since the whole thing worked flawlessly in the previous iteration, I didn't have cause to query it until now that is.

I've not changed the power supply arrangements from the previous prototype - a 4 amp USB "wall wart"-type.

I know these types of PSU are electrically "noisy" but it has not been a problem previously. No matter, I've swapped with various PSU arrangements and the outcome is the same - intermittent display dropout on this new implementation etc;

I've not used "power injection" or any intermediate power input's along the length of the display. Nor have I used electrolytics anywhere either.

All grounding is commonly tied and secure.

That said, I could run the whole system off the micro-USB input of the ESP32 and had same level of stability in the past but not now.

The ESP32 data passes through AWG30 wires which are hand wrapped with a WSU-30M hand wrapping tool. These are attached to a RJ45 LAN port socket. The signal is then relayed via a 50cm CAT5 LAN cable to the matrices input feed pins via a receiving RJ45 LAN socket. A short set of AWG30 wires then go immediately, over 10cm, to the first in line display module input pins.

I suspect my question is going to be a bit tricky to answer, as it's hardware related, or seems that way ATM.

During the week, I'll take it all to pieces again and reconfigure e.g. relace and reroute etc;

Meanwhile, about the 220 ohm inline resistor in the Data In feed....any thoughts about its validity in a display application like mine? I understand the resistor dampens any reflections that maybe present on the data line but again, I've not had to use one before. Therefore, I'm skeptical about using it in this instance too.

Thank again for your quick response, it is very much appreciated.

The author of the Parola library is a member here but I am not sure how often he visits the forum. There is no harm bringing this topic to his attention though

@marco_c any ideas ?

Some of the issues may be covered in this blog post: Parola A to Z FAQ Issues

Well, there's the problem :slight_smile:

The issue of corrupt displays usually comes down to either power supply or signal degradation. Your tidying up has somehow changed the characteristics of one of these, which I would guess was on the "working" side of borderline just prior to the change.

With that many modules I would be ensuring that the power is distributed around the matrix. This also needs to be 5V, not 3V.

Digital signals to the LED matrices should be 5V and not 3.3V. The correct way to handle this is to have a signal converter between the ESP32 and the LED matrices. 3V signals are marginal for the 5V chips and small degradation will quickly drop the HIGH voltage to below threshold level.

All lines except the DATA IN/OUT pairs can also distributed to multiple points to reduce the signal propagation distance. DATA IN/OUT will always be between pairs and should not cause issues unless there is a bad connection somewhere in the chain. Signal degradation can be seen clearly with an oscilloscope connected to the conductor at the end of the chain.
Hope this helps

Thanks for the heads up. FYI, I am on the forum most days.

Thank you, Marco.

The penny dropped when you typed the words "power supply or signal degradation".

I type the following with embarrassment....

Given my former occupation(s), I should have known better not to have overlooked the problem that's causing this display anomaly. Moreover, the amount of signal conversion throughout my project, that I've already undertaken at the various points where 3.3v and 5v processing needs to changed up and down, that should have made me wake up sooner at this point of its operational needs - the display itself!

Simply, I overlooked to provide the necessary data conversion right at the last mile - at the point of driving the display.

The project I'm working on is irrelevant but I comment on some of it, just incase others hit the same snags.

Basically, I'm working with a mix of Arduino NANO and ESP microcontrollers to express the telemetry/sensor functions in my project, which of course means working with a mix of signals levels - from logic to serial data and so forth.

BTW, the final PSU unit I'm going to put in to the final project won't be a temporary "wall wart"- type. I've already got a 5v/10A ready to implement some months ago.

Again, in summary, I simply forgot to address the last step - the electrical needs of the display.

I'd been dead lucky to the point of this failure, simply because the matrices (sourced from ElectroDragon) I'm working with on this project seemed very tolerant till now. I've also tended to work with the Arduino Mega 2560 on all my projects in the past, as I like 5v!

However, my projects are becoming more and more ambitious as I develop more desirable functions. This is why I've recently switched to ESP32's and soon to other microcontrollers too that are wireless enabled but of course operate at 3.3v.

So, I will now introduce the final signal conversion and finalise the prototype, which I know is working very well in every other respect. I can now move to order a custom PCB in order to make things permanent.

I've had a lot of fun using your Parola libraries over the years, as I do like the matrices when implementing display information for the many projects I work on for my own interest. I try to donate every year to you, to thank you for authoring such a rewarding library suite. I very much value your work. I use it a lot.

Thanks to you and to everyone else for taking the time to reply. It is very much appreciated.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.