Occasional unstable behavior

Sometimes my Pixelblaze gets really laggy, and the framerate drops to 0.5fps or less (it skips a whole bunch of frames between updates, instantly updating from one freezeframe to the next). It’ll run fine for hours, or might start bugging after 15minutes. Power cycling is the only thing I’ve found that fixes the problem.

-project is approx 360x ws2812b (Amazon/btf/chinly 16bit ring led’s), dataspeed towards the faster end (there might be a correlation, but not clearly so that I’ve noticed)
-I’m running public patterns (including sound reactive with the microphone board), nothing crazy custom.
-i went to lengths to make the power rail rock solid: plenty of copper, beefy supply, nominal 5v at all loads, 10mF bulk, 40uF on the PB board, good ground returns. It’s not in a hot enclosure.
-i haven’t probed the data lines, but they all have low inductance return paths (as far as I can see), and modest lengths. There is a 2:1 data fanout directly from the PB which might be worth checking.
-bugging seems more likely when I’m manually choosing patterns from my phone, though it can happen when it’s running through the auto cycling. Don’t know if it eventually happens with a single pattern.

Any guesses on what it might be? Can ws2812b ic’s get in a weird state, or is it almost certainly the PB board? Anybody else seen this behavior? It’s not a big deal (it’s actually a neat effect I’d like to control and implement), but it’d be nice to solve it.

Thanks.

What I think is happening is that while the preview frames are being sent, there’s a wifi hiccup and the frames are getting backed up and stalling animation. What is normally an async send blocks everything.

At the top of the page is a preview bar of the first 100 pixels, which is also used to generate the saved previews. This is streamed back at about 30fps. It can be toggled by clicking on it, or initially disabled (along with preview images) by adding ?min to the url.

I have some changes to try to address this. The fix will drop the websocket if it stalls, and it will recover. The page will reconnect automatically, so normally you won’t notice anything. It will still stall for a handful of seconds before correcting (trying to balance being responsive with having a hair trigger for network blips).

If you’d like to give a new version a shot, shoot me an email and I’ll get you an update.

1 Like

I had an issue like this today setting up for a friend. I tried with two different PBs and had same problem - but both worked fine when using ?min.

The issue was characterized by:

  1. Every 30 seconds - 1 minute the pattern would freeze for about 1.5-2 seconds. More frequent during code editing maybe. Very noticeable and troublesome.
  2. The issue was absent when not using the web page. Using ?min also fixed it.

Is there an update? I did use the Check for Updates button in Settings and got them running v2.23.

They worked fine at my home WiFi, but he is living in an apartment where there are many WiFi networks around. We think this contributed to the issue.

Do you think upgrading his router would fix the problem? It is in the same room as the PB (other side though). That is what we will try next and report back.

That sounds like the issue I mentioned above, and the fix seems to be in place since it recovers. Switching up WiFi config/router could help, you could try switching which channels your router is using. Power supplies can also cause wifi issues.

1 Like

I think I ran into a similar issue. I’m using a 3d render on a 1440 pixel array, and it runs quite slow (<3fps) due to computational load. The preview takes quite a long time to generate. It runs ok to begin with but after a while the whole system gets very choppy. Once it seemed to completely make the pattern just become permanently unavailable to access!

@spazzle,
Computational load causing lag is a different issue.
Can you start a new topic/thread with your pattern code? Perhaps we can speed it up.