Details of setup:
- 3 * 64x64 panels
- “Odd” half-cube arrangement (like deadmau5 cube v3)
- Pi 4 (2GB RAM, if relevant)
- Streaming sACN from TouchDesigner
- Rotated Image, 270 (more details on this below)
So, I’m working on upgrading a miniature replica of deadmau5’s cube v3. I had a decent setup going with 32x32 panels, using the sACN python program from darknessii, but wanted more resolution and the python program was too inefficient to handle 64x64 panels. So, I tried taking a crack at adding UDP server support to one of the examples in the GitHub - but, when streaming from TD, I cannot get the missing column
to become illuminated. I’ve tried the following:
- Shifting the drawn pixels when drawing the canvas with “led_canvas_set_pixel”; based on what happens visually on the cube, this appears to cause the final column to get shifted back to the beginning (or vice versa). this also causes the alignment of objects in TD needing to be shifted off-center to properly align with the panels, leading me to believe this is not the issue. Missing column never appears.
- Shifting content in TD; this does not appear to help - items just get shifted out of each panel and the missing column never gets written.
- Ensuring that all channels are being sent from TD; yes. I’ve used multiple programs, including printing the incoming stream to the terminal on the Pi to ensure the data is arriving.
- Rotating the image; the image is currently being rotated 270 degrees, as the program seems to only run smoothly when this is set…? so I’ve simply adjusted accordingly in TD. When leaving at 0 degrees (and making the appropriate adjustments in TD), the missing column just gets moved to another panel.
- Having the Pi check for extra pixels; I currently have the Pi only updating/checking for the number of pixels present in the canvas. This results in 72.2xxx DMX universes being checked. Having the Pi update for the entire 73 universes does nothing. (Also, to simplify things, only using 510 channels in each universe - R,G,B per pixel).
Other Notes:
- Basically took the example program and added UDP things to it (I know there are inefficiencies and could be done much better - first time messing with networking things and still pretty new to programming. Once I’m closer to finishing, I plan on cleaning up and adding to the official “examples” repo on GitHub)
- The pixels in the missing column will occasionally flicker (with what appears to be the correct colors) while the program is running - can’t determine, but think this is just hardware glitching
- The physical pixels are working - changing the chain length or running another program illuminates them with no problem.
- Considering how the panels are connected to the Pi, the top panel is no. 1 and the missing pixels would be 63, 191, 319, 447,… 4095.
I’ve been looking at this for too long and think I’m at the point where I’m missing something really stupid and would greatly appreciate any help. If any more info is needed (or clarification), please let me know.