|
OrCad Cadance |
|
|
Autodesk Fusion 360Autodesk
|
RGB Mixinator V2
Hey Everyone how you doin!
So here's a fun little project that utilizes an Arduino Nano, THE MIXINATOR.
Mixinator is essentially an RGB Studio Light that contains 10 WS2812B LEDs controlled via three Sliding Pots. we can control the color output by changing the sliding Pot position.
We can use it to illuminate the workbench or any scene, I added this light on my ENDER3 PRINTER so I can capture the timelapse of XYZ Stuff in RGB Glow.
This is actually Version 2 of my previous Mixinator project that I made almost a year ago.
https://www.hackster.io/Arnov_Sharma_makes/neopixel-rgb-mixinator-371edb
The Previous Editon was mostly 3D Printed and utilizes a Neopixel RGB Ring that was controlled by three regular pots.
I took the whole idea and gave it a twist with a custom PCB.
This article is about the whole built process, so let's get started!
MATERIAL REQUIRED
I used the following things in this project-
- WS2812B LEDs x10
- 100nF Capacitor 0805 Package x10
- Female header Pin for Arduino nano
- SIDE POTs x3
- Custom PCB (that was provided by PCBWAY)
- 3D Printed Holder for ENDER 3
SCHEMATIC
Here's the schematic that I made, It has an Arduino Nano connected with 3 Sliding Pots and 10 WS2812B LEDs.
I've also added 10 100nf Cap with each RGB LED as stated in its datasheet.
I finalize its Schematic and converted it into a Board file.
PCB DESIGN
My goal here was to make a Studio Light that usually comes in a rectangular shape so I place everything in a rectangular outline.
all the SMD componenets were placed on the TOP Side and THT Componenets like Slide switch and Arduino's header pins were placed on the BOTTOM Side.
I also added a Custom Mixinator Logo on the TOP side to increase the aesthetics of the board.
PCBWAY
I used PCBWAY PCB Service for this project. I first uploaded the Gerber file of this project on PCBWAY's quote page.
I choose Black soldermask with white silkscreen, Black because it looks good.
I really like the quality of the Black solder mask, also it was a tough job as the silkscreen that I have laid out o this board was not completely symmetrical but PCBWAY did an excellent job of manufacturing this PCB with no error whatsoever.
PCBWay you guys rock, check out PCBWay service for getting great PCB service at less cost.
PCB ASSEMBLY
- Solder paste dispensing
- Pick & place
- Hotplate
- Adding THT components
SOLDER PASTE DISPENSING
Now the first step is to add solder paste to each components pad one by one.
To Apply solder paste, I'm using a Solderpaste Dispensing Needle with a Wide syringe, and the solder paste I'm using is a regular solder paste consisting of 63% Tin 37% Lead.
PICK & PLACE
After applying Solderpaste we move on to the next step which is to add componenets to their assigned location.
I used an ESD Tweezer to place each component in its place.
HOTPLATE
After the "Pick & Place Process", I carefully lifted the whole circuit board and place it on my DIY SMT Hotplate.
the hotplate heats the PCB from below up to the solder paste melting temp, as soon as the PCB reaches that temp, solder paste melts and all the components get soldered to their pads, we lift the PCB and then place it on a cooler surface for a little bit, to cool down the heat of PCB.
ADDING THT COMPONENTS
After the Hotplate Process, we move on to the next step which is to add THT componenets like the Slide switch and Arduino Nano's header pins.
This was a simple step, but I made a small mistake in the PCB Design and received the PCB with small holes for the Slide switch.
This was not a problem as I drilled holes with a 3mm Bit to enlarge them.
I then proceeded with Adding Sliding Pot first and adding Header Pins to the PCB.
Then I soldered everything and placed the Arduino Nano in its assigned place.
CODE
Here's the code for this project.
#include <Adafruit_NeoPixel.h>
#define NEOPIXELS 10
#define LEDsPin 3
const int redPotPin = A0;
const int greenPotPin = A1;
const int bluePotPin = A2;
int redValue = 0;
int greenValue = 0;
int blueValue = 0;
int redPotValue = 0;
int greenPotValue = 0;
int bluePotValue = 0;
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NEOPIXELS, LEDsPin, NEO_GRB + NEO_KHZ800);
void setup() {
pinMode(LEDsPin, OUTPUT);
pinMode(redPotPin, INPUT);
pinMode(greenPotPin, INPUT);
pinMode(bluePotPin, INPUT);
}
void loop() {
redPotValue = analogRead(redPotPin);
delay(5);
greenPotValue = analogRead(greenPotPin);
delay(5);
bluePotValue = analogRead(bluePotPin);
redValue = map(redPotValue, 0, 1023, 0, 255);
greenValue = map(greenPotValue, 0, 1023, 0, 255);
blueValue = map(bluePotValue, 0, 1023, 0, 255);;
for (int i = 0; i < NEOPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(redValue, greenValue, blueValue));
pixels.show();
delay(50);
}
}
RESULT
This was the result.
I added a custom 3D Printed Holder to attach this RGB Light to my 3D Printer's TOP side so I can light up the print bed and I could capture Timelapses of things in RGB background lighting.
By changing the position of POTs, We can control and alter the color which is really handy. I could use a more modernized solution of using an ESP32 and controlling the color with an APP but that would be an overkill approach as this is not a fancy show light, it is meant to be more practical so I used Pots instead of an APP.
Maybe I'll make V3 with an ESP32 or ESP8266, we'll see.
This is it for today folks, thanks PCBWAY for supporting this project!
Check out PCBWAY for getting great PCB service at less cost.
And I'll be back with a new project soon!
Peace
#include <Adafruit_NeoPixel.h>
#define NEOPIXELS 10
#define LEDsPin 3
const int redPotPin = A0;
const int greenPotPin = A1;
const int bluePotPin = A2;
int redValue = 0;
int greenValue = 0;
int blueValue = 0;
int redPotValue = 0;
int greenPotValue = 0;
int bluePotValue = 0;
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NEOPIXELS, LEDsPin, NEO_GRB + NEO_KHZ800);
void setup() {
pinMode(LEDsPin, OUTPUT);
pinMode(redPotPin, INPUT);
pinMode(greenPotPin, INPUT);
pinMode(bluePotPin, INPUT);
}
void loop() {
redPotValue = analogRead(redPotPin);
delay(5);
greenPotValue = analogRead(greenPotPin);
delay(5);
bluePotValue = analogRead(bluePotPin);
redValue = map(redPotValue, 0, 1023, 0, 255);
greenValue = map(greenPotValue, 0, 1023, 0, 255);
blueValue = map(bluePotValue, 0, 1023, 0, 255);;
for (int i = 0; i < NEOPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(redValue, greenValue, blueValue));
pixels.show();
delay(50);
}
}
RGB Mixinator V2
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
- Comments(0)
- Likes(0)
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Arnov Arnov sharma
- WALKPi PCB Version Greetings everyone and welcome back, This is the WalkPi, a homebrew audio player that plays music fr...
- Delete Button XL Greetings everyone and welcome back, and here's something fun and useful.In essence, the Delete Butt...
- Arduino Retro Game Controller Greetings everyone and welcome back. Here's something fun.The Arduino Retro Game Controller was buil...
- Super Power Buck Converter Greetings everyone and welcome back!Here's something powerful, The SUPER POWER BUCK CONVERTER BOARD ...
- Pocket Temp Meter Greetings and welcome back.So here's something portable and useful: the Pocket TEMP Meter project.As...
- Pico Powered DC Fan Driver Hello everyone and welcome back.So here's something cool: a 5V to 12V DC motor driver based around a...
- Mini Solar Light Project with a Twist Greetings.This is the Cube Light, a Small and compact cube-shaped emergency solar light that boasts ...
- PALPi V5 Handheld Retro Game Console Hey, Guys what's up?So this is PALPi which is a Raspberry Pi Zero W Based Handheld Retro Game Consol...
- DIY Thermometer with TTGO T Display and DS18B20 Greetings.So this is the DIY Thermometer made entirely from scratch using a TTGO T display board and...
- Motion Trigger Circuit with and without Microcontroller GreetingsHere's a tutorial on how to use an HC-SR505 PIR Module with and without a microcontroller t...
- Motor Driver Board Atmega328PU and HC01 Hey, what's up folks here's something super cool and useful if you're making a basic Robot Setup, A ...
- Power Block Hey Everyone what's up!So this is Power block, a DIY UPS that can be used to power a bunch of 5V Ope...
- Goku PCB Badge V2 Hey everyone what's up!So here's something SUPER cool, A PCB Board themed after Goku from Dragon Bal...
- RGB Mixinator V2 Hey Everyone how you doin!So here's a fun little project that utilizes an Arduino Nano, THE MIXINATO...
- Gengar PCB Art Hey guys and how you doing!So this is the GENGAR PCB Badge or a Blinky Board which is based around 5...
- R2D2 Mini Edition So here's something special, A Mini R2D2 PCB that speaks ASTROMECH.Astromech is a fictional language...
- C-3PO Blinky Board Hey guys and how you doing!So this is the C3P0 PCB Badge or a Blinky Board which is based around 555...
- WALKPi Breadboard Version Greetings everyone and welcome back, Here's something loud and musical.Similar to a traditional walk...
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
74 0 0 -
DIY Laser Power Meter with Arduino
87 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
121 0 2 -
-
A DIY Soldering Station Perfect for Learning (Floppy Soldering Station 3.0)
418 0 1 -
Custom Mechanic Keyboard - STM32
244 0 3