Sending Processing canvas to addressable LEDs

I want an easy way to send the processing canvas to addressable LEDs. I know about Fadecandy, but I dont have the hardware for that right now, I just have some Teensy’s and random Arduino’s lying around. I know i could burn the firmware to a Teensy 3.0, but I dont have one of those.

Any suggestions for doing this easily? I thought this would be a common thing people do, but after googling around for about an hour I realize that everybody uses Fadecandy to do this… or maybe pixelpusher? Ive done something similar using OPC and sending data over wifi to a wifi enabled MCU, but I dont need to do all that right now, I just want to send pixel data via usb from processing to a mcu to the strips.

I feel like i have the hardware to do this at my fingertips, but I am confused as to why I cant find more people doing this. Im sure I’m missing something obvious haha.

thank yall!

A quick way I can think of off the top of my head would be to set up a serial communication between Processing and an Arduino. You will need to find a useful way of sending x, y and color data from the canvas to the Arduino that you can then parse. Once you have that done you can use something like the FastLED Library to update LEDs. It has been awhile since I used FastLED, but I believe you access each LED from an array and set the color values.

FastLED: https://fastled.io/

2 Likes

Thanks for the answer @ASHER !

yeah thats kinda the angle I was thinking about taking.

Just seemed like a lot of data being sent over serial. Even for a 8 x 8 grid, you are talking about 192 bytes being transferred 30 times a second if we are going for a 30 fps animation. That’s 1536 bits per frame and 46080 bits per second at 30fps. Setting serial baud rate to 115200 will allow for this speed, but dang… thinking about going to a 16 x 16 grid, we need to send 184320 bits per second, so some slowing down comms or figuring out some way to just send pixels that have changed seems necessary for larger installs.

I’ve looked a little bit into open pixel control but I havent had the time to delve into this whole server / client thing. I am hoping there is a more straightforward way!

1 Like

I hear you on the limitations and scalability. I’ve avoided some projects for a similar reason. However, if you are open to a slight deviation this might be a possibility. I found a video in which someone uses a RaspberryPi and sends the display data to an LED matrix. I think I might give this a try myself as it would solve a lot of problems. Essentially, you could run a sketch using the Linux version of Processing on the RasbperryPi and send the display output to an LED matrix similar to a normal display/monitor.

Let me know what you think.

Hi
I made something similar once year’s ago I used a Z80 processor and shift registers and led matrix

There is many designs over google

What I made looks like this

There is ready made modules to make exactly what you want

Max72190

cheap and good start

@ASHER
Yeah I’ve actually used that system before to stream video to led panels before. it works well, but its a different system then what I’m trying to do. I really just want to use my computer, a MCU, and some addressable pixel tape like ws2812 to easily send animations. I figured there must be something besides Fadecandy that does something like this. Fadecandy does exactly what I want to do, but the only reason I’m not using fadecandy is that I dont have one of the custom hardware pieces or a Teensy 3.0 lying around.

@jafal the project looks rad! Buttt… its not really what I am trying to do. I want to send video content created in Processing from my computer to addressable led strips. The addressable LED strips already use shift registers to read the data and pass it down to the next LEDs, so I dont need any extra hardware or led matrices. I think it’s mainly about the software. How to send a bunch of pixel data to a microcontroller quickly…

So… I did just find something that might work well!
Octo2811 library - made for Teensy - no extra hardware required (except level shifter, and there is a Processing example that sends video!)

also for reference here are some similar things:
fadecandy - open source - DIY - need special hardware that is discontinued (or burn firmware on Teensy 3.0)
pixelpusher - closed source - not DIY - special hardware needed but seems to be pretty plug and play. not much technical info available
LEDscape - open source - DIY - requires Beagle Bone Black

let me know if anyone comes across more!

1 Like