Beginner needs help with music organ/spectrum.

Hello, me and my girlfriend are trying to build some awesome lightning into car and our house. In ebay there are alot of RGB music controllers but they don't look like they are doing create job. Im trying to get some tips and tricks or maybe some code parts how we should get started.

Project idea ?

Pretty customosiable with profiles
Atleast 2 profiles for start (Still color & Music)
Working with bluetooth (Android we maybe develope app for it later first some console to send codes)
3 RGB outputs atleast but also expendable easyly. (Low hz, Medium hz and high hz).

We allready have arduino starter kit (Actually 2 of these) what else do we need ? Google is not my friend in this project.

Amy help would be karma+ ! Thanks !

EDIT: Here are some useful stuff that might help this project:
https://www.sparkfun.com/products/10468 - Graphic Equalizer Display Filter
SparkFun Spectrum Shield - DEV-13116 - SparkFun Electronics - Spectrum Shield (EXPENSIVE)

I would use the WS2812b LED strips marketed by AdaFruit as Neopixels. They are a game changer when it comes to LED displays.

Thanks but we'd like to use analog RGB strip. We have allready ordered them. Reason is that they are cheaper. We both are just very noob with Arduino boards.

RGB strip as in not individually controllable LEDs, all LEDs in the strip are the same color based on PWM control of the R, G, and B pins, with 12V applied to the common pin?
How many groups of 3 LED segments are you planning to power? Each group needs about 20mA/color.
A N-channel MOSFET like AOI-510 or AOI-514 per pin may be all you need with a 180 ohm resistor between the Arduino PWM pin (3,5,6,9,10,or 11) and the MOSFET gate, and a 10K resistor from the gate to Gnd to hold the MOSFET off when the Arduino resets. Connect the power supply Gnd to the Arduino Gnd so there is a common reference point.

Here's a video of 8 fading some single color strips up & down on a board I offer.

thsamog:
Thanks but we'd like to use analog RGB strip. We have allready ordered them. Reason is that they are cheaper.

That dosn't sit very well with your previous statement.

Im trying to get some tips and tricks or maybe some code parts how we should get started.

They are cheaper because, as CrossRoads said, the whole strip has to be the same colour. This limits the display you can get.

CrossRoads:
RGB strip as in not individually controllable LEDs, all LEDs in the strip are the same color based on PWM control of the R, G, and B pins, with 12V applied to the common pin?
How many groups of 3 LED segments are you planning to power? Each group needs about 20mA/color.
A N-channel MOSFET like AOI-510 or AOI-514 per pin may be all you need with a 180 ohm resistor between the Arduino PWM pin (3,5,6,9,10,or 11) and the MOSFET gate, and a 10K resistor from the gate to Gnd to hold the MOSFET off when the Arduino resets. Connect the power supply Gnd to the Arduino Gnd so there is a common reference point.
AOI514 Alpha & Omega Semiconductor Inc. | Discrete Semiconductor Products | DigiKey
Here's a video of 8 fading some single color strips up & down on a board I offer.
http://youtu.be/hAVf1D1L-7c

Yes i know that. And i'd like to have it thatway. For example one strip is 30hz - 60hz . Second one would be
80hz - 160hz and so on. And if possible maybe like i have 6 strips 3 for left channel and 3 for right channel.

Grumpy_Mike:
That dosn't sit very well with your previous statement.
They are cheaper because, as CrossRoads said, the whole strip has to be the same colour. This limits the display you can get.

Id like to get them just flashing to the music. And yes i know that limit maybe in future we make second arduino to something with digital leds.

What you need to get is a MSGEQ7 chip. This splits audio into 7 bands. You can then use this data to turn the LEDs on and off.

I found this from google http://www.instructables.com/id/DIY-Arduino-LED-Color-Organ-20/

It seems best tutorial out there... Im sorry if im asking too much help but this resistors and transistors are pretty new for me. I have always followed only tutorials. I think i can handle the code myself (web developer), but id like to get some help with me.

So would this be stable and working project.

How would i implemet this for 3 or 6 RGB strips ?

  1. L Low Hz
  2. R Low Hz
  3. L Medium Hz
  4. R Medium Hz
  5. L High Hz
  6. R High Hz

Or

  1. L/R Low Hz
  2. L/R Medium Hz
  3. L/R High Hz

I cheked up MSGEQ7 datacheet and though about that
63hz-160hz would be like one strip.

If i understand right then something like when
63hz signal is coming it would be example red then for if both are coming it would be blue and when 160hz singnal is coming it would be green. And maybe it transfers somehow smooth.

and then 400-2500 would be second strip
and last strip would be 6250 and 16000

Also would i need two MSGEQ7 chips if i would like to make Left and right channels ?

First off most Instructables are crap and contain errors. My advice is never to try and learn anything from them. We seen to be an Instructables support unit at times and it is very annoying.

Yes you need two chips if you have two audio channels.

I would advise you to just start with one first and get the feel of it.

Yes you need two chips if you have two audio channels.

I would advise you to just start with one first and get the feel of it.

I agree, except he goes for the spectrum shield which has 2 MSGEQ7s already.

I´m playing with it at the moment:

OLED audio visualisation

LED audio visualisation

Grumpy_Mike:
First off most Instructables are crap and contain errors. My advice is never to try and learn anything from them. We seen to be an Instructables support unit at times and it is very annoying.

Yes you need two chips if you have two audio channels.

I would advise you to just start with one first and get the feel of it.

Okei, i understand its just i dont understand almost anything about resistors and etc.. I order the 2 MSGEQ7's tomorrow and start playing with just one.

Helmuth:
I agree, except he goes for the spectrum shield which has 2 MSGEQ7s already.

I´m playing with it at the moment:

OLED audio visualisation

LED audio visualisation

Wow nice. I think i have to order also digital led stripe soon ! :slight_smile:

Well, the MSGEQ7 alone will not work. Please read the datasheet first. Page 4: Typical Application.

Or have a look for MSGEQ7 breakout boards.

So for my part list i will need atleast.

2x MSGEQ7
18x FQB30N06L MOSFETS
2x 33pF Capacitor
2x 200k Ohm Resistor
2x Audio Jack 3.5mm
6x RGB Led Strips (Allready have)
1x Arduino (Allready have)

Later - 1x ATmega328 to get this more permanent.

This thing would get power from car battery i hope its okey thatway?

Do i need anything else ?

EDIT: No now i did something wrong. Is this project possible with arduino uno ? If i'd like to have 6 channels, every channels has 3 colors (RGB) it does 18 inputs.

I don't see where all 18 FETs come into it.

You are best to draw the diagram of how you are going to wire things up and make your parts list from that. Please don't use Fritzing.

So i have learnde whole day circuits and arduino. I finished this

Is this okey ? Improvements ?

Now im stuck again. It seems that i need 18 PWM Pins. Uno has only 6. So i found shift pwm GitHub - elcojacobs/ShiftPWM: Arduino Library for software PWM with shift registers. Also i found a hack to use ANALOG ports as digital. So in total i would use all analog and all digital ports. I also need TX & RX port becose we are trying to make some IR remote or bluetooth remote(android).

Other thing i found was that there is PWM Drivers like this 8-Channel PWM or Servo FeatherWing Add-on For All Feather Boards : ID 2928 : $9.95 : Adafruit Industries, Unique & fun DIY electronics and kits
Maybe i should use something like that ?

I think i need 18 FETS becose led strips needs 12v. I'd like to get 6 strips and every strip has 3 colors. So 6x3 is 18.

All tips and improvements are welcome. I would just like te keep price down.

EDIT: Also what would be best way to make car battery stabilizer. And is it okey to run whole system with 12v ? My calculations show that i need 2.6A for leds. So i'm thinking off 12v 3A regulator. Maybe with fuse.

Is this okey ?

No.
There is nothing to limit the current in the LEDs and what are these switches?

I think i need 18 FETS becose led strips needs 12v.

Why is the number of LEDs dependent on the supply voltage?

I'd like to get 6 strips and every strip has 3 colors. So 6x3 is 18.

You only need a separate PWM output for every different control you need. You only have 7 channels for each audio channel, therefore you can not possibly need more than 14 PWM channels. If you want to drive two strips with the same signal then simply connect the same PWM signal to each FET or transistor driving that chip.

Also what would be best way to make car battery stabilizer.

Is this a battery in a car that is working? If so this is very tricky. Normally the battery would be being charged at 13.6V but it can also surge up to 15V with higher spikes. When the car is not working you might get anywhere between 12.5 and 11V depending on the state of the battery. So getting 12V is hard because a regulator needs a few volts more on the input than it's output is going to be.

And is it okey to run whole system with 12v

Yes it is but take note of the above.

Maybe with fuse.

A fuse will normally blow way after any electronics it is trying to protect has meted.

First of all you are AWSEOME for helping me so much !

Grumpy_Mike:
No.
There is nothing to limit the current in the LEDs and what are these switches?

Yes i know that part is not yet done. I havent figured out how would i do it.
I was thinking about that you can switch every led off and on. Actually i should make it inside code somehow.

Grumpy_Mike:
Why is the number of LEDs dependent on the supply voltage?

Sorry i didnt understand the question. English is not my main language.

Grumpy_Mike:
You only need a separate PWM output for every different control you need. You only have 7 channels for each audio channel, therefore you can not possibly need more than 14 PWM channels. If you want to drive two strips with the same signal then simply connect the same PWM signal to each FET or transistor driving that chip.

I love your brains. I have to think more out of box. Clever !

Grumpy_Mike:
Is this a battery in a car that is working?

Yes it is.

So now i have to figure out stabilizer and how i get leds connected.

Sorry i didnt understand the question. English is not my main language.

You said:-

I think i need 18 FETS becose led strips needs 12v.

[English lesson]
That says because you have 12V you need 18 FETs. That is saying there is a relationship between the voltage and the number of LEDs. Clearly there is not.
[/English lesson]

I was thinking about that you can switch every led off and on.

I thought we had established that you were using strips, you can not control individual LEDs when they are on a 12V strip. The strips wire up the LEDs in groups of three in series and one current limiting resistor. That is how they work off 12V. You need to switch the ground pin for each colour to turn that colour on. This is best done with a logic level FET. The FET is switched by putting the PWM output on its gate pin. See:-

So now i have to figure out stabilizer

It would be much easier if you didn't use 12V, as it is you need to regulate arround a voltage that could be above or below the voltage you want. The only way to do that is to use a buck/boost regulator circuit, at that power these tend to be expensive and they are not circuits you can make yourself because they need proper layout in order to be stable.

Grumpy_Mike:
It would be much easier if you didn't use 12V, as it is you need to regulate arround a voltage that could be above or below the voltage you want. The only way to do that is to use a buck/boost regulator circuit, at that power these tend to be expensive and they are not circuits you can make yourself because they need proper layout in order to be stable.

Is there better way to implement this system into car ? I was thinking that would the currency be stable if car is not moving. It's not even legal to make you car a discoball. Or is there any simple way to make it more stable.

Also i updated my circuit https://123d.circuits.io/circuits/1542618-car-rgb-color-organ-project

I used your tip for 14 FET's, do you have idea how i could implement these missing 4 Red inputs of LED strips?

I used your tip for 14 FET's, do you have idea how i could implement these missing 4 Red inputs of LED strips?

Missing 4? You have still not got it. There are a missing 8 PWM signals.

There are only 6 pins on the Arduino capable of PWM, to get more you have to use this library:-
http://forum.arduino.cc/index.php?topic=19451.0

Also i updated my circuit https://123d.circuits.io/circuits/1542618-car-rgb-color-organ-project

Those LED strips are wrong. You have drawn then as common cathode RGB LEDs, where as in fact your strips should be common anode strips. They should also be strips not individual LEDs. I know what you are going to say, that the program doesn't have that part, so you will have to make your own part and if that is not permitted abandon that package and draw with pen and paper. That is the MAJOR trouble with schematic software package, if you do not use the correct symbol then people can't follow what you have done.

You have to decide what strips to connect to what drivers, you only have 14 different signals of data so you can not drive each strip you have independently because there is no data to drive it with, so....
You have to decide how to distribute the 14 data channels over your 18 strips / colours. That means 4 of these have to be common with one or more of the 14 you already used. You have to make that decision as to which.

Each FET needs a 150R to 330R resistor in series between the gate and the Arduino PWM pin, and also a 10K from the gate to ground. Let's get the design right first before you worry about powering it in a moving car.