One circuit with RGB strip, RGB buttons and LED buttons

Hello everyone.

This is my first post on the forum and also the beginning of my adventure with electronics, circuits and so on. Well, a couple of years ago I built my first small and simple control panel, based on Teensy with several switches and momentary buttons.
Right now I'm working on the second one, based on Mega2560 and much more complicated. There are some things I can't understand. Just a black magic for me and since I'm newbie, any guidance would be appreciated.

My goal is to make one circuit which will be powered with 12V 3A 36W power supply (the one that came with 5m of RGB strip) and it will contain three different types of light sources.
1m or (if possible) 2x1m 5050 RGB 12V strip (60led/m)
7x RGB diodes (built in in momentary button)
19x white LEDs (built in in momentary button, separate leads, common cathode)
Brightness control: potentiometer
Color control: PWM pins

The problems/uknown I'm facing now are:

  1. One information I'm not sure if I understood correctly while reading in other place so I will ask for confirmation. If I deliver power to MEGA2560 through power jack, does it mean that I can use VIN as an output and provide throught this pin as much of voltage as power supply can deliver (minus what other pins on controller will consume)? Am I getting this right?
  2. How do I connect all of them together by delivering enough voltage, using just one potentiometer and as less PWM pins? I looked at the diagram at adafruit.com to understand how to connect RGB strip because it was my biggest concern. Transistors used there are NPN TIP120. Then I modified it (picture below) by adding additional RGB and LEDs (only 3 on the pic below) to see how I willl wire them together but then realized that if I connect 19 LEDs to one PWM pin, they won't get enough voltage.

How can I connect these LEDs to get enough voltage and still control it with the same potentiometer as RGB? Can it be actually done?
3. If the answer to above question is "Yes, it can be done", what is the proper way? Could you show me how to do it on breadboard diagram, eventually schematic, although the first one would be easier for me to understand what I see.

Now, some specifications I found.

RGB Strip:
I don't have datasheet from this particular product.
The info I found from different company for product which looks in close up pretty much the same:
Working Voltage / Input Voltage / Voltage Forward: 12V DC
Power Consumption (Watts) Max.: 5.85W /m 29.26W /5m Reel
Current Draw / Input Current / Current Max: 2438mA 2.44A per 5m Reel

From the strip I have, I was able to read the value of resistors used. These are:
1x331 (1x330 Ohm)
2x151 (2x150 Ohm)

And here the close up picture.

Buttons with RGB:
Switch Specifications
Circuit :SPST
Current rating :100mA
Voltage rating :12VDC
LED lamp working voltage:
Red: 1.75V-2.35V
Green: 2.7V-3.7V
Blue: 2.7V-3.7V
Dielectric withstanding voltage :250VAC for 1 minute
Contact resistance:200mΩ Max. (Initial)
Insulation resistance :100MΩ Min.

Below the diagram for these buttons. Please, notice that those buttons have two separate diodes but only one will be used in this circuit.

Buttons with LED:
Color: White
Circuit: SPST
Current rating: 50mA
Voltage rating: 12VDC
Dielectric withstanding voltage: 250VAC for 1 minute
Contact resistance: 100mOhm Max. (Initial)
Insulation resistance: 100MOhm Min.
Diagram:

Once again, I appreciate the help.

Regards
Mark

Use a separate power supply for your LED strip, power your potentiometer through your mega board.
Your pretty close with wiring but instead of the +120 port of your strip lighting going to VIN, pass it direct to the power source. See attached schematic

Check out this tutorial: Ultimate Guide to Connecting LED Light Strips to Arduino

VIN is the same as the barrel jack, minus a diode drop so your power supply is basically supplying VIN

blh64:
VIN is the same as the barrel jack, minus a diode drop so your power supply is basically supplying VIN

Thank you, blh64

katehoy91:
Use a separate power supply for your LED strip, power your potentiometer through your mega board.
Your pretty close with wiring but instead of the +120 port of your strip lighting going to VIN, pass it direct to the power source. See attached schematic

Check out this tutorial: Ultimate Guide to Connecting LED Light Strips to Arduino

Thanks for the link and the diagram. However, it doesn't solve the mistery I'm facing, how to connect buttons with RGB and especially buttons with LEDs with common cathode into this circuit and control all of them with just one potentiometer.
I changed the wiring so RBG strip and RGB buttons will get 12V directly. In the tutorial you provided link to, MOSFETs are used. I decided to go with TIP120 which I have in the drawer so want to use them.
In the meantime, looking for white LED part of the circuit I found this tutorial: https://www.lucidmakers.com/power-multiple-leds-single-arduino-pin/
I used it as base and tried on Tinkercad.com. It seems OK when tested with just one concern I have.
As you can see on the picture below, there is 100mA between pin 11 and transistor?
Won't it harm controller? I though I/O pins operate with 40mA.


I also re-worked the breadboard view (picture below) by adding all components there. May I ask that someone will look at it and control if this configuration will actually work as expected and won't harm any component?

One additional question in regards to this part from tutorial I pasted link to.
It says:
You have 5V from the Arduino pin. There are approx 0.7V on the transistor, between its base and emitter, therefore you are left with 4.3V on the resistor. This means that the current that flows through the resistor is:
4.3V / 46
70 Ohm = 0.009 A which is 9mA

Where does this "46" come from?

V = IR so if you have 4.3V and 9mA, your resistance is 470 ohms. That "46" is probably a typo. Do you have a 470 ohm resistor between the arduino pin and the base?

Yes, blh64. The resistor I used there is 470 Ohm.
Could it be that Tinkercad shows wrong value? It's very limited from what I see, can't even change voltage drop for LEDs from 2V to other value.

Below is the list of all resistors and transistors I used in my design

Voltage regulator: 5V
Transistor for RGB: TIP120
Transistor for LED: NPN BJT MJE13009 TO-220

Resistors:

  1. 12.4 Ohm (between voltage regulator and LEDs
  2. 470 Ohm (between Arduino pin and BJT transistor)
  3. 110 Ohm (between Arduino pins and RGB transistors)
  4. 110 Ohm (for RGB diodes)

Also, is there anything in general what you would change in this circuit or can you spot anything what could produce issues? The 12.4 Ohm resistor for LEDs is the temporary value because I do not have datasheet for them and will have to check voltage drop when they will be delivered.