Project showcase
Lighthouse 3D Print and Arduino

Lighthouse 3D Print and Arduino © CC BY-NC-SA

Got a 3D printer and a spare Arduino Uno or Mega? Make a working lighthouse for your home.

  • 2,496 views
  • 0 comments
  • 2 respects

Components and supplies

Necessary tools and machines

3drag
3D Printer (generic)

About this project

I had to test our our new 3D printer, and what a better way than by making something truly amazing! I printed this in an Fortus 250mc 3D printer, and it took about 14 hours or so to complete if I remember correctly. The files for printing can be found here and was created by user josemivaz. In my build, I decided to use an Arduino to power the lighthouse instead of a custom circuit. My build can be found here.

Instructions:

Download the .stl files for the project from josemivaz's Thingiverse profile and 3D print the files using your 3D printer. Once the files are done, I sanded mine to smooth them out and to help my spray paint stick to the model. I used flat white, black, and dark red for mine.

While the device is printing, you can build load the Arduino sketch in your Arduino Uno/Mega, and get build a test circuit on the breadboard. Once your components are in working order and you have painted your lighthouse, place a red led on the top, the halogen bulb under the dome, and a white LED inside the structure. I ran the wires directly to my breadboard and then stuffed it all into the bottom to hide it from general view. On the back/bottom of the base I placed an on/off switch and ran the power cord out to the outlet.

Photos:

Circuit:

Finished Project:

Working Lighthouse

Code

Lighthouse SketchArduino
Arduino sketch to control the lights flashing in the lighthouse
// Lighthouse sketch for 3D printed lighthouse project
// By Anton

int topLed = 13;
int middleLed = 9;
int bottomLed = 11;
int brightness = 0;
int fadeAmount = 5;
int value1 = LOW;
int value2 = HIGH;

long time1 = millis();
long time2 = millis();
long interval1 = 1000;
long interval2 = 30;

void setup() {
  pinMode(topLed, OUTPUT);
  pinMode(middleLed, OUTPUT);
  pinMode(bottomLed, OUTPUT);
}

// Control LEDs
void loop() {
  unsigned long m = millis();

  analogWrite(middleLed, brightness);
  digitalWrite(bottomLed, value2);

  // blink the RED led
  if (m - time1 > interval1) {
    time1 = m;

    if (value1 == LOW) {
      value1 = HIGH;
    } else {
      value1 = LOW;
    }
  }

  // Fade the middle light
  if (m - time2 > interval2) {
    time2 = m;
    brightness = brightness + fadeAmount;
    if (brightness == 0 || brightness == 255) {
      fadeAmount = -fadeAmount;
    }
  }

  digitalWrite(topLed, value1);
}

Schematics

Lighthouse Arduino Wiring
Wiring diagram for the Arduino and lights.
Crnbopj2wvgycbl4rjv7

Comments

Similar projects you might like

Otto DIY+ Arduino Bluetooth Robot Easy to 3D Print

Project tutorial by Team Otto builders

  • 48,231 views
  • 117 comments
  • 162 respects

3D Printed and Expandable Robot for Arduino

Project showcase by Matthew Hallberg

  • 2,342 views
  • 3 comments
  • 11 respects

3D Print a LED Matrix Display

Project showcase by Multi3D

  • 1,144 views
  • 0 comments
  • 2 respects

Minimal MIDI Drum Kit with 3D Printer

Project tutorial by ryokosaka

  • 9,885 views
  • 1 comment
  • 29 respects

Digital 3D Printer Filament Counter Using PS/2 Mouse

Project in progress by ArtSuzhou

  • 8,440 views
  • 11 comments
  • 32 respects

3D Printed R2-D2 with an Arduino Core

Project showcase by Raul Antonio

  • 3,249 views
  • 1 comment
  • 4 respects
Add projectSign up / Login