Teensy octows library and adaptor

Status
Not open for further replies.

stann

Member
Hi. I was reading fastled library in github and i ve seen octows and paralleloutput library umm technique? On the page.. ok anyway . I ve seen this;

FastLED 3.1 introduces an OctoWS2811 controller. This code preps OctoWS2811's drawing buffer far faster than using setPixel, and gives you the benefit of FastLED's scaling/dithering/color correction code.

I dont realy get this part.sorry. its says This code preps.. what code is this? I dont get how to do. I m completely lost on what is being said.. fastled is a library that allows is to drive leds fast. True?

So what octows library does More? And hoe to combine them. I dont get.. how to implement octows library to fastled and what i ll realy get. I m sorry i realy didnt get the logic. If i cant get any nicr explanation so i guess i ll not be able to shift to teensy and octows and the adaptor and stuck in my mega 2560. I m awaiting ur umm soft treatments to this cases which is i guess the typical beginner issue.
 
Driving WS2811 type LEDs from Arduino is normally done by bitbanging - The code sits in wait loops toggling a pin back and forth to match the somewhat fussy timings of the self clocking signal. So on your Mega there are probably functions (servo, timers) that you can't use because everything halts while pixels get written (or you get corrupted pixels).

The Teensy3.X series of boards have on chip DMA hardware that the OctoWS library uses to setup an area of memory for pixel information and then the DMA works it's way through the memory producing the waveform itself while the CPU (and your code) is off doing other things (like prepping the next frame). Even better since it's got the DMA setup already it drives 8 strips at a time, which allows you to get more pixels written in a given time (critical for video walls).

FastLED original focused on hardware accelerated SPI LEDs but having got lots of clever colour control functions written people now port new LEDs to it, rather than writing their own drawing functions.

So you can use fastLED to drive WS8211 pixels on a single strand, or in parallel bitbanging (code halts while pixels are updated), you can use OctoWS2811 by itself with your own colour functions, or you can graft the two together to get nonblocking code that uses the fastLED colour and pixel functions and works with fastLED examples.

The adaptor is not required, but if you don't use it you will need some other method to step the 3.3v Teensy logic to at least 3.6V needed by the current generation of pixels (3.3V logic support is something that disappeared in the pursuit of lower costs)
 
Hi GremlinWrangler. Its so appreciable that u interested in my Logical issue and give answer.. well . I got the seperation of fastled and octows and their real treatments on the chip and the led strips.
But i wld like to ask that you said with octows i can use my own color functions.. what realy that means. I can always create a function and use.. for example;

void MyRainbow ( int r, int g, int b) {

Bla bla
FastLED.show(); }

So what u mean by being able to use my own color functions with octows?

And also i wld like to ask that at last part of ur message ; if i dont get a octows board so i ll need to get a level shifter.. thats what i got from that.. am i correct?
 
WS2812B LEDs should be given a 5 volt signal. Some will work with only 3.3V, but that is risky and more susceptible to noise. 5V signals are the proper way.

Teensy 3.x will output only 3.3V signals, so you should use a buffer chip to increase the signals to 5V. The Octo board has this buffer. It is usually the best option. You could build you own using the 74HCT245 chip or a similar buffer part, but since the board is only $10 and also has the convenient RJ45 jacks, there's really not much point to redoing the work to make this.
 
With the adaptor, as per Paul's post the library doesn't mandate the use of the PJRC PCB, but even if you plan to make your own getting one to test with will save a lot of pain, have hand crafted level converters for WS LEDs and they are very fussy about the shape and timing of the waveform.

With the colour functions fastLED has support for HSV setting of pixels and some other helper functions for gamma correction etc. Can make life a little bit easier, depending on how good you are at manipulating colour in your head and how complex you need to get. See https://github.com/FastLED/FastLED/wiki/Pixel-reference#chsv
 
Status
Not open for further replies.
Back
Top