Using Pixelblaze as a custom DMX fixture

Inspired by this forum thread, I have just updated Flamecaster to support “fixture” mode. It lets you treat Pixelblazes as custom DMX fixtures (instead of just streaming Art-Net pixels to them, which of course you can still do.)

If you’ve got an Art-Net/DMX board or software, you can set it up to use DMX channels to control parameters on the Pixelblaze. As many channels as you need - it’s up to you. The pattern running on the Pixelblaze determines how the channel data is used.

It’s hard to overstate the potential utility – you can use the Pixelblazes in your Art-Net/DMX show setup as a simple RGB light sources.

Or you can let the Pixelblaze be a Pixelblaze and run complex patterns while you choose color and/or palette via DMX channels. Or, with a little code added to your patterns, you can use DMX to select patterns from the playlist.

It’ll be great for hardware creativity too. Since all the intelligence is in the pattern and is very easy to modify, you can use Pixelblaze to prototype or build any complex DMX light fixture you like.

Here’s a video showing control of a Pixelblaze set up as an RGB+strobe fixture. This is just the tip of the DMX iceberg. If you’re interested, Flamecaster and the patterns I used for this demo live here, on github.

9 Likes

I can’t heart this post enough!

This is very cool!

This is groundbreaking @zranger1 . The potential for this is insane and might expand the use of Pixelblaze to a whole different range of products.

I will get started with this and provide in depth testing in the next 4 months (festival is in October). This is amazing, huge thanks.

In my opinion, the only drawback I see is the need to have an additional laptop to run Flamecaster to enable Pixelblaze connectivity to Artnet. Not end of the world, but definitely not as “easy” as the native support of Artnet we can get with WLED for example.

I’d love to see people using this! There are some really fun possibilities. Right now, I think the main challenge setting it up will be that every lighting control program out there seems to use its own scheme for numbering nets, subnets, universes, and channels. Just remember - in Flamecaster, all numbering for everything starts with zero!

If you’re using software for DMX control, you won’t need another computer. Flamecaster is lightweight enough to run in the background on the same computer. Once configured, it’s made to run in the background and be ignored.

I’ve tested this way with Chromatik, Resolume Arena, Unreal Engine, Touch Designer and Q Light Controller. Having everything on one computer has the advantage of keeping Art-Net data intended for Pixelblazes local to the computer and off your LAN.

(If you’ve got a GrandMA or other dedicated DMX console, you will need a computer to run Flamecaster. It doesn’t have to be a big one though. A Raspberry Pi 4 or any old laptop will do the job. Connecting it to the console w/wired Ethernet is infinitely preferable to wireless though.)

Just to make sure I understand (I’m pretty noob on the network side):

  • PC Software / Console / App ? (Like Luminair ?): emits control signal in Artnet
    |
    | Better to have a wired connection here because Artnet is heavy on wifi / interferences (even if we send only a few parameters ?)
    |
  • Flamecaster (on a PC or Raspberry Pi connected to the same network): receives the Artnet signal and translates it to “Pixelblaze” language
    |
    | Wifi (not critical here since we send much less signal (only a few DMX channels) but is there a Pixelblaze version with an external antenna for better communication ?
    |
  • Pixelblaze (receives DMX channels and interprets them using a specific pattern instruction)

Amazing work !

That’s pretty much the way it works, except that if you’re running your control software on a PC, Mac, or Linux box, you can run Flamecaster on the same computer and save VJ table space, trouble and net bandwidth.

(If you haven’t done this sort of thing before, it involves setting up your software and Flamecaster so they communicate on the computer’s localhost address - usually 127.0.0.1 or 0.0.0.0. If you run into trouble, there are plenty of people here who can help with network configuration.)

Yes, this is clear for me thank you.
I’ve actually tried it with Resolume + Flamecaster on my old laptop to push pixels on Pixelblaze some time ago. It worked okay but failed as soon as I started another WLED device.

I noticed also that if I do VJ on my network in Artnet to Wled devices (not much issues except a few frame rate drops at some times) and I start another device with Pixelblaze (with a normal pattern), I get almost immediately disconnected from the wled devices and struggle to stay connected in a stable way.

Can’t identify precisely why it happens yet. I have planned extensive tests around this, I’ll let you know