How does this compare to FastLED [1] on the same ESP8266 (and ESP32) platform? FastLED is free and open source, and support almost all LED drivers out there. Writing animations with FastLED might not be as easy as with Pixelblaze, but similarly only requires a few lines of code.
Author of Pixelblaze here :)
FastLED is an awesome LED driver library with colorspace and fast math functions. I highly recommend it.
Pixelblaze is that plus a web interface, compiler, IDE, and pattern library all over WiFi. You can reprogram your work remotely without cables, and all real-time, or even on a phone. I found that quickly iterating I could get a better intuitive sense of the changes I was making and get the look I was going for with less hassle.
For apa102/sk9822 LEDs, the 32-bit math engine in Pixelblaze along with the HDR driver (5 + 8 bits) lets you get better color control at lower brightness levels and smoother transitions than what's currently in FastLED. I have a number of desk and/or nightlight projects that look just as good at 2% brightness, where with 8-bit per channel color you start to get extreme posterization and color mixes start failing.
Another slight advantage is that Pixelblaze uses a pipelined driver where pixel data doesn't usually need to be buffered before being send out to the LEDs. WS2812 are particularly sensitive, so there is a buffered mode for them, but for other chipsets Pixelblaze renders the pixel data just in time and doesn't require a framebuffer.
Thanks for this reply! I was curious too, since I just spent the last few weeks working with an esp8266 on FastLED.
One type of shield/expansion I'd love to see for the Pixelblaze would be some sort of lipo charger and protection circuitry. My favorite esp8266 board has an integrated battery holder for an 18650, and I've found this to be my favorite way of powering all my projects!
LEDs draw lots of power. I just put ~~50W~~25W of SK6812s in my 3D printer enclosure. (It's overkill, but not drastically so.) So you're going to need big batteries for any LED project.
This looks a very interesting project! One thing I couldn't tell though, could you 'stream' LED pixel values over wifi instead of generating them on the hardware?
Using the ws2812b Lights and the:
https://github.com/jgarff/rpi_ws281x library,
I made my LEDs pulse out an ID, which I read with a webcam, then used it to make a simple webapp, to 'paint' my Christmas tree's lights.
This year I'm planning on buying some APA102 lights though, and taking it outdoors :) (So i'm looking at the IP68 versions). Ideally I want to create a 3D map of the LEDs this year, but I need to do a lot of reading on that!
Yep, the trick here is that Pixelblaze doesn't store or stream pixel data, the patterns are small fast programs that generate pixel data on the fly.
One benefit of this approach is that Wifi can drop or be unreliable without impacting animations.
This also lets them react to inputs e.g. using some of the IO or ADC, or using the sensor expansion board for audio, light, or movement (accelerometer). Each pattern is typically 5-15K (this includes compressed source, compiled, and preview animation), and there's plenty of flash to store hundreds of different patterns.
Funny how people always jump to conclusions when it comes down to people enforcing their patents. My understanding of this drama is, that APA is a small taiwanese startup that was actually the first company with a RGB LED with integrated driver. There are a bunch of chinese companies that are more or less copying their products and are pushing them on the market at much lower price and more agressive marketing.
It surely looks to me as if they are using patents in their originally intended way. The downside is that they are hitting vendors with a C&D instead of going to the source. But that could rooted in the difficulties surrounding the ability of a taiwanese company to sue a china mainland one...
I was interviewed by embedded.fm about Pixelblaze and some other projects
https://www.embedded.fm/episodes/220
Might be interesting to other folks wanting to do something similar, we cover some of the meta around making and selling a DIY thing and learning things along the way. Highly recommend the podcast as well.
It's something I've considered. I've released many of the components as well as the entire expansion board project
https://github.com/simap/pixelblaze_sensor_board
And the network sync and control app
https://github.com/simap/Firestorm
I'm still figuring out how to make that work commercially so that I can afford to continue development on it - ideas welcome!
There's the ElectroDragon ESP LED Board, which does pretty much all of what the Pixelblaze does (sans FW) for much less - although the footprint is larger...
This looks great. Just in time for that thing in the desert...
The pattern editing workflow seems nice. Editing C code and waiting for it to upload to an Arduino was never very fun. Being able to see a preview and quickly send to the controller over WiFi is a game changer.
One thing I like about those cheap WS2812B controllers (https://www.amazon.com/s/field-keywords=ws2812b+rf) is the RF remote. An add-on for the Pixelblaze would be neat. Just on/off, changing the brightness, switching patterns, and switching to auto cycling between patterns would be sufficient.
One more suggestion: support for 2D patterns (I guess it's just the previews that need support since you can do simple math to turn a 2D pattern into a 1D strip)
I wonder why on earth mobile phones usually have controls on top of the screen, but not on the bottom. Phone call app has search bar on top. Call activity tab on top. The default sort behavior, when searching, is to put more relevant results from top to bottom. Why not bottom to top?
This design decision is especially annoying on larger screen devices.
Because on iOS Safari any touch on the lower area reveals the autohidden bottom toolbar, so now the button has moved up, and now you have to click on it again for it to work.
This is pretty great. For my larger LED projects (3000+ lights) I'm slowly moving over to something like TouchDesigner for animations and mapping, but for medium and smaller projects this is fantastic. Will be buying some!
Yea, some combination of that for projection mapping, and perhaps sending directly out to Artnet/sACN for LEDs, servos and lasers? Still trying to piece it together as things get bigger and bigger.
My contact information is in my profile. Can you reach out? I'd love to see some of the stuff you're doing and ask a question or two.
on jobs we use pixlite controllers for controlling lots of addressables and send it artnet out of touchdesigner.
no need to involve madmapper as touchdesigner handles all the mapping you could possibly want without adding the latency of piping out to madmapper. if you're just doing hobby projects you can stream serial out of touch via USB to a teensy 3.2 and control (in my experience) around 4000 LEDs at ~60fps. for lasers you should check out the etherdream, simple and works well. servo control you'll need a board but generating the software side in touchdesigner is simple.
I've spent the last four years learning the art and craft of LED art. I suppose I wouldn't change the way that I do things, but if I were starting out again I'd definitely use this. I can very much appreciate all of the work that this system takes off of my hands. The auto-recompile low-iteration-time is key. Very impressive!
I'm working on several medium sized LED projects and am curious if anyone has a guide or links to buying WS2812 or similar strands.
I've bought a ~10 of these https://www.amazon.com/gp/product/B00ZHB9M6A/ref=oh_aui_sear... but I would love to find a slightly cheaper source. Alibaba seems to sell them at half the cost but product titles, photos, and descriptions don't ever seem to match
WS2812 LED Strips on AliExpress/Alibaba/BangGood are sorta okay. I've got a few of them at home, some of them have LED's shortcircuited after they failed.
To some extend you get what you pay for but they're good enough for most purposes (and if they go too much kaputt you can replace them with another one for the same low price) and fairly bright too (about 0.25A of LED per meter and 30LED/m density)
You can get WS2811, which is the driver chip without an LED. You can hook that up to any RGB LED in any form factor. It's more expensive and requires more PCB space, but you get flexibility in LED placement.
The SK6812/APA102s come in a 2020 package now, but I haven't seen them on a strip. @wow_elec_tron on instagram has been working on his own flex pcbs for them. I think he may do a kickstarter to get some in production.
> Pixelblaze was designed for APA102 LEDs (aka DotStar). These LEDs are state-of-the-art and provide rock solid updates, faster refresh cycles, and the possibility of a dynamic range well beyond 0-255
Are these still the state-of-the-art in their category?
If you want an interesting side project: spin a string of these addressable LEDs to make a circular display, or sweep a plane of them for a display volume.
I'm working on a project, definitely less far along, that's open-source and uses the ESP32 for additional Bluetooth functionality. There's an open-source cross-platform app for control. https://github.com/hobzcalvin/blume
The Pixelblaze guy wants 30$ for his ESP8266 board (I get mine for 2,7€/piece). A lot of that money probably doesn't go into the development of the software, but manufacturing and shipping.
I just installed an Open Pixel Control [0] server [1] (receiver) on a Wemos D1 mini and can now stream pixel values to it using python [2].
This comes with all the downsides, of course, but does add a lot of flexibility. Pixelblaze is probably very well written and has some great features (and infrastructure, I'm considering writing a parser for the patterns). However I don't want to pay a gigantic markup for a weird ESP8266 board and have to wait for it to ship to me, supporting (while sinking a large part of the money into stupid overhead) the development of software that isn't even open source.
Hi, Pixelblaze guy here :)
I totally get where you are coming from. It would be nice if you could drop this on any old board and be up and running. Hopefully I can share some of my perspective.
Pixelblaze is a commercial venture for me, and I have to figure out how to make some $ from it to pay for my time so that I can keep making it better. I can't afford to spend the amount of time that I do on a hobby, and I don't have a sponsor.
If I figure out a way to open source it and have financial incentive to keep working on it, I'll do that. I've been carving out bits and pieces to open source that I think are useful utilities.
The hardware itself solves a few problems, such as level shifting, that I haven't see embedded on other esp8266 boards. It also provides a platform for more interesting hardware such as the (fully OSS+OSH) sensor expansion board.
On the pricing side of things, the hardware isn't a majority of the cost. OTOH I'm never going to compete with the $3 boards w/ free shipping. I don't have the volume where I can drop the per unit 'software overhead' to a level where I'm competitive with the low end Chinese markets.
The price of the product as a whole is very competitive in this market. There are cheap no-feature (completely closed) LED controllers for not much less, and high-end controllers start in the hundreds of dollars.
---------
If you want to replicate something like the language in Pixelblaze, it's not so bad. Its syntactically ES6, though without many of the dynamic features of JavaScript.
Michael Leibman (@michaelleibman) put together this codepen that emulates Pixelblaze compatibility here:
You could use that as a starting point for some kind of RPi nodejs app that pushes pixel data to your ESPs, or perhaps port the functions (they aren't rocket science) to Python.
I toyed with the idea, but realized I have too many hobbies already :)
It's new, I haven't had a chance to update website/videos. Syncs animation timebases and lets you push sticky commands to multiple Pixelblaze on a network.
I’ve been using plain Arduino and FastLED to drive 300 individually addressable LEDs as a Christmas ornament for the past 3 years. Super simple, and my kid can write his own patterns in C. Nowhere near this level of effort though.
[1] https://github.com/FastLED/FastLED