audio shield + OCTOWS2811 = physically incompatible?

Status
Not open for further replies.
I'm developing a project that includes a Teensy 3.2 + audio shield and will incorporate neopixels + OCTOWS2811 adaptor. I'm a beginner with a mentor to help me but I'm trying to gather as much info as possible ahead of time. I've already purchased the OCTOWS2811 adaptor because I knew it would be needed in facilitating neopixels, but I didn't foresee the physical challenges of stacking it on the audio shield.

Since it's [nearly] impossible to stack the audio shield and the OCTOWS2811 adaptor due to both requiring so many pins, would it be possible to have two Teensy setups that communicate with each other?

First setup would be Teensy 3.2 + audio shield + sound input (small mic) + 3.5mm audio output (leading to several speakers)
Second setup would be Teensy 3.2 + OCTOWS2811 + output to neopixel strip

On one of the two setups I'd need an additional input for a distance sensor (not sure which setup)

and both setups would be linked to the same programming where
-based on distance (>20 ft, 20-15 ft, 15-10 ft, 10-5ft), the lights and sound output would be doing one of four different things
-if distance is <5ft, the lights and sound output would be responsive to only the sound input

Questions:
-Can we run the two different Teensy setups, having them both be conditional on the same unified inputs, and producing the same unified output? How would those be connected?
-Do I need to get another electret microphone if there's already one wired into the audio tutorial breadboard, and if so, do I really need to purchase an amplifier for the microphone if i'm not producing any sound output that's correlated to the sound input?
-Which setup should I put the distance sensor on? Does it matter?

Cheers!
 
Last edited:
I suspect that even if the overlapping pins weren't an issue, that you may not have enough cpu cycles to run both audio and visual. It really depends on what you need to do with audio processing, and how many lights you have to light.

It is probably better to split the tasks into two. Have one Teensy be the master. It will handle all of the inputs and do one set of tasks (either audio or visual). It uses a serial port to send short messages to the second Teensy to have it do a particular action. For example, if the first Teensy does the audio shield, it would send out messages to the other Teensy like do light pattern #1. You don't want to send complex messages like the state of all of the lights, but instead just a short command.
 
The pins conflict, so using these together takes some pretty significant hacking. Not impossible, but not easy.

Plenty of projects have been made with the Octo board and audio on the DAC and ADC pins. For example, the OctoWS2811 example for a spectrum analyzer runs 1024 point FFT (the most CPU demanding feature in the audio library) while updating 1920 LEDs at 86 Hz frame rate.

Communicating between 2 boards is also very do-able. Usually Serial1 is easiest. If they're located any significant distance, RS-485 chips are the best way to send serial signals over distance. That also have the nice advantage of allowing up to 5V of ground shift. Hopefully no LED project will have that might, but a good fraction of a volt of ground shift is common when dozens or hundreds of amps flows through ground wires from so many LEDs.
 
I'm developing a project that includes a Teensy 3.2 + audio shield and will incorporate neopixels + OCTOWS2811 adaptor. I'm a beginner with a mentor to help me but I'm trying to gather as much info as possible ahead of time. I've already purchased the OCTOWS2811 adaptor because I knew it would be needed in facilitating neopixels, but I didn't foresee the physical challenges of stacking it on the audio shield.

Since it's [nearly] impossible to stack the audio shield and the OCTOWS2811 adaptor due to both requiring so many pins, would it be possible to have two Teensy setups that communicate with each other?

First setup would be Teensy 3.2 + audio shield + sound input (small mic) + 3.5mm audio output (leading to several speakers)
Second setup would be Teensy 3.2 + OCTOWS2811 + output to neopixel strip

On one of the two setups I'd need an additional input for a distance sensor (not sure which setup)

and both setups would be linked to the same programming where
-based on distance (>20 ft, 20-15 ft, 15-10 ft, 10-5ft), the lights and sound output would be doing one of four different things
-if distance is <5ft, the lights and sound output would be responsive to only the sound input

Questions:
-Can we run the two different Teensy setups, having them both be conditional on the same unified inputs, and producing the same unified output? How would those be connected?
-Do I need to get another electret microphone if there's already one wired into the audio tutorial breadboard, and if so, do I really need to purchase an amplifier for the microphone if i'm not producing any sound output that's correlated to the sound input?
-Which setup should I put the distance sensor on? Does it matter?

Cheers!

I had to check the name on this post to make sure I didn't type it!.
Doing the exact same thing.
Testing a couple of MAX485 breakout boards doing half duplex 2 way communication and looking good.

I'll be playing music from teensy3.2#1 using audio adapter sd playback, doing fft analysis and sending this over rs485 to 1 or more teensy 3.2's with octows2811.

teensy#1 will also have a nextion HMI which will control/change sequence on remote octows2811 teensys.
 
Since it's [nearly] impossible to stack the audio shield and the OCTOWS2811 adaptor due to both requiring so many pins, would it be possible to have two Teensy setups that communicate with each other?
The best solution depends on what exactly are you trying to do. How many leds are you planning to use, and what kind of animation to display (30FPS video, or something less demanding)?

If you are not going to use very large amount of leds and/or 30FPS video or more, FastLED library may just do, so you'll need just one pin to control all the leds. If your leds require 5V signal, you can still use the OCTOWS2811 buffer, just only connect the needed signal, and the +5V and GND. Without the OCTOWS2811 library it doesn't reserve all those additional pins.
 
Software library compatibility stopped me.
Fastled with audio library works, but must disable interrupts while updating leds, which causes sound distortion when this is done with a large number of leds.(so you need to test)
 
Software library compatibility stopped me.
Fastled with audio library works, but must disable interrupts while updating leds, which causes sound distortion when this is done with a large number of leds.(so you need to test)
With how large a number of leds? I just made a quick test with 4008 leds, without touching interrupts, and everything seems to be ok.

Well, actually I only have 8 leds plus 4000 "virtual" leds (allocated but not physically connected). So the first 8 leds show ok and I'm not sure about the rest. But at least audio is working ok.
 
What were you doing with audio library?
I was trying to do sd playback to i2s output.
This causes random glitches in updating of leds when not using fastled disable interrupts define. This was with 27 leds but I would expect you would see it in first 8 with how many leds you have assigned.

I found any i2s object would increase these glitches in led strip.
 
Status
Not open for further replies.
Back
Top