Round/Circle LED Display using Teensy

Status
Not open for further replies.
Using a Teensy 3.2 for this project I have built a Circle LED Display that has 385 LEDS and is 23x23 in size. Currently running only on 1 transmit channel of the Teensy due to being able to balance equal lines and LEDS for each of the 8 channels.

The code i am using is the Gediator Library.

const int ledsPerStrip = 385;
const int NUM_LEDS = 385;

I found a program patcher called NLED Patcher (http://www.nledshop.com/nledpatcher/) that allows to run non-square/rectangle displays. Still working to get it working correctly but is it possible to disable the other 7 channels on the Teensy so that the software I am using will only see the actual LEDS connected?
 
but is it possible to disable the other 7 channels on the Teensy

With OctoWS2811, no, the output is always 8 signals. There is no way to disable the other 7. But it's perfectly fine to just leave the other 7 unused.

You can use WS2812Serial instead of OctoWS2811. It gives you the same non-blocking performance, but with only a single output.

so that the software I am using will only see the actual LEDS connected?

If using OctoWS2811, you could just tell your software only 1/8th of the LEDs are connected. Then the other 7/8th of the LEDs will simply be unused. Yeah, might seem wasteful, but Teensy 3.2 has plenty of memory. If you don't need those other 7 pins, why not?

Of course, WS2812Serial will let you use only a single pin. So if that matters, maybe migrate from OctoWS2811 to WS2812Serial?
 
I have been trying to work through using the WS2812Serial Lib with the BasicTest example code.

Question before reading more. Can i use this library with the attached Octo adapter on my Teensy3.2? Do i need to add the Octo Lib to my code?

my setup:
Teensy3.2
OctoWS2811 Adapter

Connecting LED strip to Orange wire strip#1 which if i read correctly is sent data from Pin 2. when running a basictest on with octows2811 lib it lights up immediately then pauses for the other 7 strips.


I have a total of 385 LEDs and i put that in my code and I let Pin=1 assuming that stood for first pin connection. (I did try Pin=2 thinking maybe that stood for string#1 but that was no good.)


Code:
const int numled = 385;
const int pin = 1;

I found another thread on this but it said pin=24 so then i got really confused.
https://forum.pjrc.com/threads/47478-WS2812Serial-BasicTest-not-working?highlight=WS2812Serial
 
WS2812Serial Lib ... with the attached Octo adapter on my Teensy3.2?

Yes, you could configure WS2812Serial to transmit on pin 5, 8 or 20.

The Octo adapter is simply a 3.3V to 5V buffer for 8 signals, plus impedance matching resistors and convenient RJ45 connectors for CAT5 cable. Three of the 8 signal pins are 5, 8 and 20, so if WS2812Serial transmits on any of those pins, its output will appear on 1 of the 8 signals from the Octo adapter. You'd simply connect that 1 signal (plus its ground) and not use the other 7.

I found another thread on this but it said pin=24 so then i got really confused.

Here's a link to the WS2812Serial page.

https://github.com/PaulStoffregen/WS2812Serial

Scroll down to "Supported Pins & Serial Ports". You'll see different pins are supported on different Teensy boards. Pin 24 is only supported if you are using Teensy LC. On Teensy 3.2, you have 6 possible pins which can be used with WS2812Serial.

By luck, 3 of those 6 pins happen to be among the 8 signals OctoWS2811 uses.
 
Status
Not open for further replies.
Back
Top