Tony Stark's Arc Reactor RGB Edition

Tony Stark's Arc Reactor RGB Edition

thingiverse

This project is highly inspired by https://www.thingiverse.com/thing:3321182 so, many thanks to the author for his amazing work. I've only modified the base to put an Arduino nano to control RGB stripes. There are 3 knobs to control colors in HSV color space (https://github.com/FastLED/FastLED/wiki/FastLED-HSV-Colors) The assembling is pretty easy, refer to the original thing for more photos. Of course you can find schematics of the circuit between files wich again is really simple. https://youtu.be/JZ79VwJW_wE *Bill of material* - 1x Arduino Nano - 3x 10k potentiometer - WS2812B led stripe. (you will cut 2 pieces, one of 16 led and one single led) - 4x M3 with countersunk head - 5x M3 with button head - Hot glue to fix Arduino and potentiometers in position. Please note that this circuit is not intended for long usage at maximum brightness since taking current from arduino will ruin it faster... If you intend to leave it on for long time please add an external 5V source and power both led and arduino from it. Theoretically this amout of led can draw as much as 1 Amp (full brightness, white color) The arduino code is (you will need FastLED library https://github.com/FastLED/FastLED): #include <FastLED.h> #define LED_PIN_RING 4 #define LED_PIN_CENTER 5 #define NUM_LEDS_RING 16 #define NUM_LEDS_CENTER 1 #define BRIGHTNESS 255 #define LED_TYPE WS2812B #define COLOR_ORDER GRB #define UPDATES_PER_SECOND 100 CRGB leds_ring[NUM_LEDS_RING]; CRGB leds_center[NUM_LEDS_CENTER]; int pulse = 129; int fadeAmount = 1; void setup() { delay( 1000 ); // power-up safety delay Serial.begin(115200); FastLED.addLeds<LED_TYPE, LED_PIN_RING, COLOR_ORDER>(leds_ring, NUM_LEDS_RING); FastLED.addLeds<LED_TYPE, LED_PIN_CENTER, COLOR_ORDER>(leds_center, NUM_LEDS_CENTER); FastLED.setBrightness(BRIGHTNESS); } void loop() { fadeToBlackBy( leds_ring, NUM_LEDS_RING, 20); fadeToBlackBy( leds_center, NUM_LEDS_CENTER, 20); byte dothue = 0; int delta = 15 ; for ( int i = 0; i < 80; i++) { leds_ring[beatsin16( i + 16, 0, NUM_LEDS_RING - 1 )] = CHSV(dothue, map(analogRead(A1), 0, 1024, 0, 255), map(analogRead(A2), 0, 1024, 0, 255)); leds_center[beatsin16( i + 16, 0, NUM_LEDS_CENTER - 1 )] = CHSV(dothue, map(analogRead(A1), 0, 1024, 0, 255), map(analogRead(A2), 0, 1024, 0, 255)); dothue = random(map(analogRead(A0), 0, 1024, 0, 255) - delta, map(analogRead(A0), 0, 1024, 0, 255) + delta); } pulse = pulse + fadeAmount; if (pulse <= 128 || pulse >= 255) { fadeAmount = -fadeAmount; } FastLED.setBrightness(pulse); FastLED.show(); FastLED.delay(1000 / UPDATES_PER_SECOND); }

Download Model from thingiverse

With this file you will be able to print Tony Stark's Arc Reactor RGB Edition with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Tony Stark's Arc Reactor RGB Edition.