RGB Strip PWM Controller using an Arduino with Potentiometer and Bluetooth
Sep 25th, 2020 | by: Digambar SharmaCategory: Electronics Arduino

To control the RGB strip light is not so easy task, but not so hard too. It requires a sufficient amount of current to turn it on properly. Here it drains the total of 1.2A current measured with a multimeter. The main problem arises when you want to control it using an Arduino and to obtain delightful and various colors. Because It can't provide a constant amount of current required to turn the RGB strip on. So here, N-E-MOSFETs are used to provide the constant current to the strip.
The project mainly highlights-
1. RGB light strip: It is the main thing that is to be controlled at 12V and 1.2A.
2. Arduino Nano: It is the brain of the project for controlling different color mixing and its brightness by reading an analog value from the potentiometer. Analog values are mapped in between 0-255. Where 0 is the minimum and 255 is the maximum value of the PWM signal.
3. N-E-MOSFETs: It is used to provide the constant current to turn on the RGB strip light. As there are three color LEDs on the strip. Hence it requires three MOSFETs as well each for one led i.e (Red, Green, and Blue).
4. Potentiometers: It is used to adjust the PWM signal for each of the RGB LEDs.
5. 7805 Voltage regulator: As it is well-known that Arduino requires a constant 5V. To regulate the 12V to 5V, 7805 is used with some passive components and a heat sink for better stability of the output.
6. Bluetooth module: In case, we don't want to control the RGB strip using a potentiometer. Here, the Bluetooth module is also embedded on the PCB so that it can be easily controlled from a distance. After disconnecting the Bluetooth from an Android device, the color will automatically change wherever it was, according to the PWM values taken from the potentiometer.
7. Resistors: There are three resistors for each of the MOSFET's gate-source terminal to avoid the effect of noise or any external factors on the circuit.
8. Capacitors: It is used to filter the DC input and output voltage with a 7805 voltage regulator IC.
9. 12V 1.5A AC-DC Adaptor: To power up the circuit, an AC-DC adaptor is used to provide a stable 12V 1.5A supply.
10. PTH (PCB through holes): A perfboard also known as prototype PCB is used for mounting and soldering all the components together.
PHOTO GALLERY
To control the RGB strip light is not so easy task, but not so hard too. It requires a sufficient amount of current to turn it on properly. Here it drains the total of 1.2A current measured with a multimeter. The main problem arises when you want to control it using an Arduino and to obtain delightful and various colors. Because It can't provide a constant amount of current required to turn the RGB strip on. So here, N-E-MOSFETs are used to provide the constant current to the strip.
The project mainly highlights-
1. RGB light strip: It is the main thing that is to be controlled at 12V and 1.2A.
2. Arduino Nano: It is the brain of the project for controlling different color mixing and its brightness by reading an analog value from the potentiometer. Analog values are mapped in between 0-255. Where 0 is the minimum and 255 is the maximum value of the PWM signal.
3. N-E-MOSFETs: It is used to provide the constant current to turn on the RGB strip light. As there are three color LEDs on the strip. Hence it requires three MOSFETs as well each for one led i.e (Red, Green, and Blue).
4. Potentiometers: It is used to adjust the PWM signal for each of the RGB LEDs.
5. 7805 Voltage regulator: As it is well-known that Arduino requires a constant 5V. To regulate the 12V to 5V, 7805 is used with some passive components and a heat sink for better stability of the output.
6. Bluetooth module: In case, we don't want to control the RGB strip using a potentiometer. Here, the Bluetooth module is also embedded on the PCB so that it can be easily controlled from a distance. After disconnecting the Bluetooth from an Android device, the color will automatically change wherever it was, according to the PWM values taken from the potentiometer.
7. Resistors: There are three resistors for each of the MOSFET's gate-source terminal to avoid the effect of noise or any external factors on the circuit.
8. Capacitors: It is used to filter the DC input and output voltage with a 7805 voltage regulator IC.
9. 12V 1.5A AC-DC Adaptor: To power up the circuit, an AC-DC adaptor is used to provide a stable 12V 1.5A supply.
10. PTH (PCB through holes): A perfboard also known as prototype PCB is used for mounting and soldering all the components together.
→
←

Right side PCB view

PCB tracks and soldering
4 Comments
-
Noob 4094
about 3 years ago
Great work bro keep doing make new projects create new innovations
-
Alejandro Quirós
about 3 years ago
A ver como le explicas a la gente y a los organizadores del concurso como has conseguido 47 votos en 1 minuto y 100 votos en un daWell see how you explain to the people and the contest organizers how you got 47 votes in 1 minute and 100 votes in one day Good luck
Rabindra Sharma
Hi at first glance i didnt saw any constant current circuitry and just saw the n channel mosfet in directly connected to the led If the strip had built in current limiting resistors then itz okay but not then you are probably killing your leds slowly to this if you say that its working just fine then just make it glow for longer times on 100 power and youll surely kill it You could have used a standalone atmega328 or even attiny but anyways And one suggestion that if you are using a microcontroller then you could have made a more interersting color picker by using a joystick and an led at the board itslef and modify the code so that when you move your joystick the color change and when you leave it for some time then it would make the whole stip glow at the same color And also using bluetooth is more of an overkill you could have used an ir receiver with a standard television reomte nrf24l01 or even those standard 433Mhz modules And using a microcontroller enables a lot of functionalities for input you could have implemented a touch input but still I liked your circuit Regards Rabindra
Digambar Sharma
Hey, I am really happy that you have appreciated my work. Yeah, it has inbuilt resistors. There is no doubt that I could have used the joystick and IR Receiver too, but due to lack of time I had to finish this project as early as possible. Thank you for your cool suggests it will really help my project look better next time.