Teensy 3.2 + OctoWS2811 (7200 Pixels) Strip animating ideas

Status
Not open for further replies.

Naru

Member
Hello all,

Im working on a Fitness room project, where my main inspiration was taken from Madrix 5 solutions, see example:
https://www.youtube.com/watch?v=Fd7t9hcqLgA

After a lot of research with my limited knowledge on this area, I ended up buyin 120meters of WS2812b 60pixels ( 7200 Pixels Total ) per meter strips, and about 7 5V 60A PSU's. ( I got extra strips and PSU's, in case I need to replacement )

I tried Jinx! with 5M(300pixels) length strips for testing and it worked great! I really like how you can program animations with Jinx!Scripts, but the problem is , it supports 480px width max, and even on 480px the app crashed a few times. Glediator works fine, but I don't like its animations,as it seems everything is designed for Matrixes, while I only need simple lines for each strip synced in a reasonable way similar to the video above.

There seems to be many options, and each to their own with their depth.

I tried PixeController( software from PixelInvaders ), which when I added too many pixels, it started to stutter the animations very badly, even if I limited it to 15-25FPS. Possibly there could be a fix, but I realized this app was also meant for high resolution animations, and I should try to find something with less strain, as I plan to run this from a Raspberry PI ( instead of PC, if possible ).

The Processing movie2serial code worked perfectly, and at one point I thought it will be easier to create videos of simple lines and in return they would animate the strips. I hope there's a better way other than using videos for such a simple task.

MIDI option seems appealing, although I still don't understand it very well, and not sure if it's applicable for my project. The idea to auto generate animations based on Audio input is what I need, but im not sure how hard that will be, code wise.


In short, i'd like to generate animations based on Audio input from my main Audio system, through a PC/Raspberry which should send signals to my Teensy. What would you guys suggest?

My current hardware:
WS2812B - 120M 60Pixels per meter
3x Teensy 3.2 + OctoWS2811 ( planned to use 2, and keep one spare )
10x Arduino UNO ( I had these at the very beginning, which I planned to use 1 Arduino per String, until I discovered Teensy! )
7 5V60A PSU

I have limits when buying extra components due to lack of electronics in my area, and would like to use what I have, as im very close to a deadline.

I hope this post doesn't look lackluster, as I have spent the last 3 months reading and testing different theories on this matter and I wanted to simplify the question for your convenience and be specific. If you need any additional info please let me know.

Thanks in advance!
 
That's a lot of pixels for a Teensy 3.2. Memory will be tight. CPU time may or may not be a limit, depending on what you do.

You might consider stepping up to a Teensy 3.6.
 
Hi Paul,

That's why I have 3x Teensy 3.2. My idea is the 1st Teensy should control the top half ( 3200 Pixels ) and the other teensy the other half. I can of course use my 3rd teensy as well and divide 7200/3 if that makes it better, but I would prefer to stick with them if possible, as my timing is tight and ordering new boards takes a lot of time to arrive here.

Physically there are 10 Rows of strips with 12meter each = Total 120M.
 
Last edited:
Two teensy 3.2 will handle this task fine. I recently ran a project with 7680 RGBW pixels over 2 teensy based controllers. What you need to find is the best way to get data to them. I personally use artnet or sACN with the wiznet w5200/w5500. On libraries I use octows2811 with a one socket library. https://github.com/mrrees/MegaPixel-One-Socket-Ethernet Paul has also made some advancements in the Ethernet library too that has great speed enhancements. The key with the one socket approach (opens the wiz to 16k buffers) is to quickly get the data from the precious wiznet buffers and place it in the octows2811 buffer. Don't frame (send LED data) until you have most of the universes received for that frame. You can see this code for an example using sACN and receive it from software like Madrix. You will need to tinker with the code and adapt it for your needs. https://github.com/mrrees/MegaPixelController
 
That is really interesting and I think it should solve most of my problems! However I have to find a temporary solution via USB-serial, basically just for the opening night then I can continue with some simple sketches until the ethernet shield arrives, as it seems its specific and it will take some time to find a way to ship it to me.
 
Looking at the megapixel one socket link, Teensy 3.2 has been tested with w5200. If I look at the wiznet website, they list WIZ820io ( which is based on w5200 ) as not recommended, and they have WIZ850io which has no such warning, but its based on w5500, but at the megapixel github they listed only the 5200 for Teensy 3.2. Is it safe to buy w5500/WIZ850io?

You can see under Wiz820io the warning that says: "not recommended for new design"

https://www.wiznet.io/product/network-module/


Also, there's this confusing bit, if I search on ebay.de for wiz820io I will find the actual ethernet modules & some adaptors. Do I have to order them both?

Here's an example:
Ethernet Shield
https://www.ebay.de/itm/WIZ820IO-Modul-Ethernet-Interface-SPI-3-3VDC-PIN-121x6-1x6-WIZNET/223700081281?hash=item3415905a81:g:bvUAAOSwkeZdnyqI

Adaptor:
https://www.ebay.de/itm/Pjrc-WIZ820io-Micro-SD-Card-Adapter-CAT811T-for-Teensy-TS01008/283637921606?_trkparms=ispr%3D1&hash=item420a233746:g:htQAAOSwzJpeMbBw&enc=AQAEAAACQBPxNw%2BVj6nta7CKEs3N0qXK1Dcdkebyxiwm3craxtYhIUjnJha3yqNDPcjiDuPAXnJU9BfwZsTQy71y4ELPXB%2BfGl%2FCgxSzZtSmfOvVwq%2FsH4iGwWjGZ5YD3IxOQxb8H9Y5dQRVCdp79OuqDm%2FPQyC7B%2ByyuFSAt%2BB07LE6%2Bo6jzvB1PD0g3oZlkf9Vg5bic67ZU9%2BAPvMt2WiryH5y2iqya4Sole5NdvYp8%2B1FiZxmCG1%2BKLD6pZWcNQg%2B1SEtLfVbRATPu1IP2v%2BlouBx6A%2BXLDDDxmrjQkeU1KorsEJA1NRASp9no1WrIonIvojq9KyIgjuX9sAXRJbd34z5NUDAGVMaHk0ZvhJVnOOaKQwDledpw22RAHmce5TDzbul29obkyFMQ7LqtpSdZlrOTH%2F%2FBSOCHzC04%2BFV0vphTbYnKgYzfs8MW5Ct4TowkhSiffXWCEjCDFlsSzVeHSKGDWGuoqRDslOWi00Hct38SZwo2lRaYFedWvNBBNLkYgyO8%2FPQWZqSNBvjeAXZlO5wi3q70ss%2BOoYuxuGUh%2Fv0xfET09AORorf5hPX5BP5vAuoBuenq%2B0IP5IGuk8n686RDAwPEiZdp324urJFJF0HnZjb%2BKtKarXNtM%2B5oj2tq%2BHv0FhECr2lJxEvKz04xSfwZKKumae2R7ntpXrHR7UmjVH5PRDUf2Smg1LeO%2FBxgCGKzgTFQvJIXSfWgyu3uUrMMQHnpNx1k%2BuSvxsI%2BMm%2BGyYESdPir5FK%2FOJoZozZANMPag%3D%3D&checksum=2836379216062e97b7dc8843446db2d3cdcf9bb8803e


I can order only from Germany..not sure where to look for these beside amazon.de and ebay.de , and there seems to be a lot of replicas/versions. Do you mind helping me find the right one?

If I were to order from shop.wiznet.eu , they give very little information regarding to shipping.

Any help would be very appreaciated. Thanks!
 
Thanks a lot crees, thats a lot of useful information, i will take my chances and wait for the modules.

What sketch do you use? Im looking to make it work with Vixen probably as it seems its easy to use and setup.
 
Thanks, i'll give them both a try when I get my modules.

In the mean time, did I made a mistake by not ordering the wiz adaptor (for 850chip)? There's no clear instructions how to assemble the wiz850 module without the adaptor.

Nevermind. At the bottom, I can see the pin's used. Only question is, the Wiz850 doesn't have SS, what do I connect instead? and are the rest of the pin's used for Teensy3.2 the same as Teensy3.0 ( pin 10,11,12,13 ) on the pjrc website ( it doesn't mention 3.2 )?
 
Last edited:
Recieved the modules but cant get them working. Most likely I have missunderstood the pins as the module doesnt even blink the leds.

Here's how I connected them together:
20200208_152343.jpg

I have tried using the WebServer example from the library you gave the link in dropbox.

Forgive my ignorance please, as I have been stressed out as the project is coming to a closure, and am missing some basic checks. The fitness is scheduled to be opened tomorrow night, and I managed last night to complete the physical connections. Here's a small preview of a rainbow test with octows2811 I did last night:


I'm using only one teensy 3.2 + octows2811 right now to power the top half, until I find out if I can have the ethernet module, or I'll have to solder my other teensy with octows too without the ethernet module.

Thanks!
 
Last edited:
Just to clarify are you using a teensy 3.0 or 3.2? If not 3.2 we need to have a 3.3v regulator for the wiz since the 3.0/3.1 does not have a powerful enough 3.3v supply.
 
It seems I was missing the GND + 3.3v pin. Silly me I thought you can connect it only with 4 pins. The chip is W5500 btw.

Gonna try Arnet now and make it work with xLights.

Thanks!
 
Also in order to make it work with 5440 leds you need to make sure you replace the existing Ethernet library under the teensy avr directory with the one socket. Also take a look at this code to get 5440 universes running in SACN e1.31

https://github.com/mrrees/MegaPixelController

With some modification you can adapt this for artnet (change port , look for artnet headers, calculate universe from net/subnet/universe bytes).

crees
 
Ill try that..should I just stick with e1.31 since it's already configured like that for the sake of simplicity, since I am very limited on time? Will it support all my leds?

Looks like it supports just fine up to 5.4k leds per teensy+octo..I currently plan to use 2x Teensy 3.2 + octo+ ethernet, so it should support just fine my 6k LEDs ( 3k per Teensy )
 
Yes this will get you up and running fasT. How many pixels per strip are you running including any zigzag?
 
I haven't done any zigzag, there's around 650 pixels per octo pin , im not very sure as i've done a lot of modifications to my strips last night, so not very sure with how many I ended up with, but it is very close to 660 leds per pin.
 
Ok run your setup as 32 universes per teensy with 680 pixels per strip. The second teensy will have unused ports but still configure it as a full 32 universe 5440 pixel config and only map the strips you have in software.

Keep in mind with this setup (32 uni) each port is 680 pixels or 4 universes . What you don’t use at the end of the strip will have to be unused.

In xlights configure
First teensy make sure Mac and IP is unique and in same subnet
First strip universe 1-4
2 - universe 5-8
3 - universe 9-12
4 - universe 13-16
5 - universe 17-20
Etc

Teensy #2

First trip - universe 33-36
Etc
 
Last edited:
Can you take a look at my configuration please? No pixels are on, i am currently at home where I am trying to test with one strip of 300 pixels.

xLights1.jpgxLights2.jpgxlights3.jpg

I tried creating just a single string on the Layout and configured it with 170 Nodes but that didnt work either. Now I added a matrix where I wanted to include all the nodes, in case my connected strip is not being reached.

Here is the 1-4 universe configuration:
xlights4.jpg

Note, that when you first create this configuration, there's the "One output" box, where it is checked by default, i left it like that, but it doesn't show when you try to edit the config.
 
The channels can be confusing, make sure you set your Chanels to 510 (3 channels for RGB makes 170 pixels per universe). Off topic . If you use RGBW pixels it’s 512 channels to get you 128 pixels.

To see if wiz is initializing fine make sure you can ping it. Also If you serial print the universe variable You can verify your receiving uni data. With this one socket e1.31 setup you can frame 40fps.
 
Yep..channels were incorrect,the Test runs the light, meaning it's receiving data. Trying to figure out now why my animantion isn't working.

When running the test, I can see my 300 pixels (the test strand at my home) is somewhere in the #18 Universe (strange , since the strand is connected with orange/white orange utp pins and is supposed to be first string?).

I created a string and tried with multiple options like: setting as first channel ( obviously since it's the first string, connected with my orange/white orange utp pins ),, Universe number 10.0.0.2 : 18 > tried with #1's channel, then with 8671 down to 9570 ,,Output number 5 (from my setup 17-20 universe are with ID 5 ),,tried setting them to 170/680 Nodes/String option ,, none of them give any signal.

Any idea how to get this only string working, before I go on site?
 
Status
Not open for further replies.
Back
Top