I have built this year a few wearables (2 handfans and a scarf) powered each by Pixelblaze + Sensor Board. I had the opportunity to use it extensively 2 of them a couple weeks ago during a 4 day festival, to see how convenient they are to use in a rave environnement. I can’t easily upload videos here so here is a photo !
It worked in several configurations:
- a scarf on pretty much most of the time on me (made of a single pebble LED line powered by a powerbank)
- 2 handfans (as on the photo) being turned on and off depending of the stage, synchronized to the scarf (to use the same patterns), or standalone if used by one of my friends at a different stage.
I am globally extremely satisfied with Pixelblaze performance on it, however I noted some points I’d like to share with with whoever is interested. That’s what I will focus on.
### PROS
- PB works well and is reliable. No crashes, patterns run as intended, zero glitches or frame rate drops.
- The fluidity of patterns is unmatched. It looks amazing and super smooth. Driving less than 200 LED with it is obviously piece of cake for an esp32 but still this should be noted, especially vs WLED for example.
- microphone works amazingly well and the sound reactivity is very precise whatever the input level (close to the speakers or even at home).
### CONS
1- Wifi connectivity is a nightmare: I said it
Most of my routine was to get my Android phone out, connect to wifi of the AP “master” (the scarf) and change/modify the running pattern/luminosity. Once done, if you simply turn off the phone screen to lock the phone before putting it back in your pocket, next time you try to connect to the PB it will not load the page (unless you do it only a few seconds after). Impossible even if you try to refresh, close the browser app, anything. The only way to solve it is to disconnect manually from the wifi then reconnect manually, which is annoying.
Also, as long as the phone is connected to the Pixelblaze, I don’t have internet which is not great in a festival environnement to communicate with my friends. Bluetooth control would be a massive improvement.
2- SYNC ISSUES
I connected the fans to the scarf in client mode (scarf as leader being in AP mode and fans as followers in client mode):
Sync works great but I saw a few very annoying problems:
- impossible to modify the luminosity separately for each wearable, especially if you want the leader to be at lower luminosity than the followers: we should be able to separate this if needed
- GPIO button press on the leader does not pass to followers which results in de-sync if you use buttons on the leader (or a follower) to adjust hue/luminosity for example. It would be great to be able to choose
- followers do NOT revert to “solo mode” if the leader is off (my scarf ran out of battery before the fans) making impossible to change the pattern on followers without recharging the scarf.
Worse: since they try to connect to the client, you can’t access them without resetting the wifi settings with a long press on the PB button.
EVEN WORSE: even after resetting and setting it back to AP, the interface shows as “follower” (only “view” instead of “Patterns” and does NOT allow to change the PB back to “solo/leader” in settings (this setting does not appear) to change patterns manually. Absolute nightmare to handle. I believe it’s a bug. The only way to make the option appear again is to use /?setup in the address (then you still won’t be able to select patterns but the option to revert back to solo mode (or follow a new PB) will come back). - So I’d strongly recommend the only “viable” solution which is to create an access point on the phone and connect all pixelblazes to it as clients. But be ready to bring a powerbank for your phone as it will drain the battery very fast.
3- Li-ion/Li-po management: not made for wearables
PB does not allow VCC directly on Lithium battery output (3.7V): as soon as you connect a load, even a small one it tends to reboot several times in a row then start in safe mode. Not stable.
It means you have to connect it behind a boost circuit 3.7V to 5V. Problem is that you can’t limit the max load like in WLED (due to the fact PB does pipeline rendering) so it often happens my LED pull too much and trigger the BMS, turning off everything. Only workaround is to limit overall brightness, which makes me lose a lot of luminosity dynamics even when I have only a couple LED on.
It would be great to select pipeline rendering or not (even maybe if it has to be a separate firmware) which could allow an option to limit current theoretically like in WLED.
4- END USER/COMMERCIAL PROTECTION
I have 2 issues with using Pixelblaze for products that are designed to be used by people who are not necessarily familiar with PB or programming:
- pattern selection is not super intuitive: activating easy mode to restrict editing or deleting of patterns is great but then user can’t edit their own playlists
- no way to protect code efficiently even with “easy mode” (anyone doing a quick search can find the way to remove the easy mode) to avoid someone to extract then copy the contents of a pattern to re-use on another Pixelblaze. I’d like to be able to fully lock a Pixelblaze, means the only way to unlock it would be to wipe whatever patterns/mappings are on it. Without this it is very hard to think about selling products powered by Pixelblaze (I’m not there yet but might get to it).
5- VARIABLES SHARE BETWEEN PATTERNS
I have a couple buttons on GPIO to adjust luminosity or hue in all my patterns. But if I reduce luminosity in a pattern for example following a button press, then I open a new pattern, luminosity or hue setting will not carry over.
Only workaround is to build a massive unique pattern containing all the patterns I want to run.
Would be great to be able to r/w a small “memory” from any pattern. I think Wled uses pallets as a workaround for this.
Again these are "field observations"in wearable use, but there might be already existing ways to tackle these issues, that’s why i post here also. I’ll be happy to answer questions for people in the same situation !
Thank you !
With this, i’m off to the shop to buy a bunch more, i’m impatient to try the new Pico !!!