NEW: RoboRover Core is live! Educational robot base with USB-C rechargeable battery, sensors, OLED + Wi-Fi — ready for projects. 🤖

Orders via Akis Express or Box Now (before 12 PM) Mon–Fri ship same day. Cyprus Post orders ship next working day. 🚀

How to Build a Smart Street Light Model for Dark Skies

How to Build a Smart Street Light Model for Dark Skies

Team Robo |

How to Build a Smart Street Light Model for Dark Skies

In this project, we will build a small dark-sky street lighting model using a Kypruino, an LDR module, a warm white LED, and the Kypruino’s onboard NeoPixels. The model was created for a planetarium to demonstrate a better way of lighting streets while helping reduce unnecessary light pollution.

The idea is simple: the street lamp should only turn on when it is dark, it should use a warm light instead of a harsh cold one, and it should be aimed downward rather than into the sky. The house also lights up when the surroundings get dark, making the model more engaging and easier to understand during a demonstration.

This is a great educational project because it combines 3D design, electronics, embedded programming, and environmental awareness in one build.


What the project does

The Smart Street Light Model is designed to simulate a more responsible outdoor lighting setup.

  • Automatic activation: the lamp switches on only when the surroundings are dark
  • Warm street lighting: the lamp uses a warm LED instead of a cold white light
  • House illumination: the Kypruino’s onboard NeoPixels create a cooler white glow inside the house
  • Light pollution awareness: the street lamp is designed to direct light downward
  • Clean presentation: the lamp wiring is routed underground into the house

The result is a compact demonstration model that reacts to ambient light and visually explains a real-world lighting concept.

3D render of the completed model, with the lamp positioned next to the house.

Components needed

For this build, you will need:

  • 1 × Kypruino board
  • 1 × LDR light sensor module
  • 1 × warm white LED
  • 1 × resistor for the LED
  • Jumper wires
  • USB cable for programming and power
  • 1 × 3D-printed house enclosure
  • 1 × 3D-printed street lamp
  • 1 × base section for mounting the model

The project also uses the Kypruino’s onboard NeoPixels to light up the house, so no extra LEDs are needed for that part.


How the system works

LDR light detection

The LDR module measures the ambient light level around the model. The Kypruino continuously reads this value and compares it to a chosen threshold.

When the light level indicates that the surroundings are dark enough, the model turns the lights on. When the surroundings are bright, the lights stay off.

Street lamp lighting

The street lamp uses a single warm white LED. When the surroundings become dark, the Kypruino switches the LED on. When the surroundings are bright again, it switches the LED off.

Using a warm LED keeps the electronics simpler while matching the aim of the project: showing a friendlier and more responsible style of outdoor lighting.

House lighting

When the model becomes active, the Kypruino’s onboard NeoPixels also turn on to create a brighter, cooler white glow inside the house. This makes the model easier to see and adds contrast with the warmer street lamp outside.

The model switched on in dark conditions, with the warm street lamp active and the house illuminated from inside.

Designing the model

The main enclosure was designed as a small house in Fusion. This allows the Kypruino and wiring to be placed inside while keeping the outside of the model clean and easy to understand.

The inside of the house was designed to leave space for the board, connections, and wire routing. A separate street lamp was designed next to the house, and a hole under the ground section allows the lamp wires to pass into the house from below. This avoids visible wiring across the surface of the model and helps the final model look much cleaner.

The LDR module is placed on the roof so it can detect the surrounding light level properly.

Close-up of the house, which holds the Kypruino and leaves space inside for wiring and component connections.


Close-up of the street lamp section, designed to hold the warm LED and direct the light downward.


View of the roof-mounted LDR module slot, used to detect ambient light through a hole on the ceiling so the lamp only turns on when it gets dark.

Wiring the project

Connect the components as shown below.

LDR module

LDR Module Pin Connects to Kypruino
VCC 5V
GND GND
SIG A0

Warm white LED

LED Pin Connects to Kypruino
Anode (+) D10 through a resistor
Cathode (-) GND

The resistor is important because it limits the current through the LED and protects both the LED and the board.

Built-in Kypruino features

Feature Used in project
Onboard NeoPixels House lighting

Assembly view showing how the lamp wiring passes underground into the house, keeping the outside of the model neat and uncluttered.




Wiring overview showing how the LDR mosule and LED connect to the Kypruino.

Installing the Arduino library

Before uploading the code, install the required NeoPixel library in the Arduino IDE.

  1. Open the Arduino IDE
  2. Go to Sketch → Include Library → Manage Libraries...
  3. Search for Adafruit NeoPixel
  4. Install it

Uploading the code

Connect the Kypruino to your computer and upload the sketch for the project.

The program does the following:

  • reads the LDR value from A0
  • checks whether it is dark enough
  • turns on the warm street lamp LED
  • turns on the Kypruino’s onboard NeoPixels in a cooler white
  • turns everything off again when the surroundings are bright

This keeps the code simple while still achieving the intended effect.


Adjusting the threshold

The exact LDR threshold depends on your module and the lighting in the room where the model will be displayed.

In the sketch, the threshold is stored in a variable such as:

int darkThreshold = 500;

You may need to adjust this value until the lamp switches on at the right time.

If your LDR module reads lower values in darkness, use:

if (ldrValue < darkThreshold)

If your LDR module reads higher values in darkness, use:

if (ldrValue > darkThreshold)

Assembling the model

Once the electronics are working, the next step is to install everything into the printed parts.

  1. Place the Kypruino inside the house enclosure
  2. Mount the LDR module on the roof
  3. Install the warm LED inside the street lamp
  4. Route the lamp wires through the underground hole into the house
  5. Secure the wires so they do not pull on the LED or sensor
  6. Close the enclosure and test the model in bright and dark conditions

This layout keeps the final model tidy and makes the demonstration easier for visitors to understand.

The finished dark-sky lighting model after assembly.

Why this project is useful

This build is useful because it turns a real environmental topic into a clear, physical demonstration. Instead of only explaining light pollution in theory, the model shows how a better lighting setup can work in practice.

It helps demonstrate three important ideas:

  • lights should only be used when needed
  • warmer lighting can be a better choice for outdoor use
  • lighting should be directed where it is needed instead of upward into the sky

What students can learn

This project introduces several useful STEM concepts:

  • analog sensor readings
  • threshold-based decisions
  • digital output control
  • NeoPixel output
  • 3D design and printed enclosures
  • practical wiring and assembly
  • how electronics can support environmental education

Possible extensions

  • Add a second lamp with poor upward lighting for comparison
  • Add labels explaining the difference between warm and cool lighting
  • Add a button to manually simulate day and night
  • Add an OLED display with the current LDR reading
  • Add a second sensor to compare indoor and outdoor conditions

Final thoughts

The Smart Street Light Model is a simple but effective way to combine electronics, programming, and 3D design in one educational build. With an LDR sensor, a warm street lamp LED, and illuminated house details, it creates a visual demonstration of how smarter street lighting can help reduce unnecessary light pollution.

It is compact, interactive, and easy to reproduce, which makes it well suited for classrooms, science exhibitions, and public outreach spaces such as a planetarium.

[Optional: Insert code download link here]

[Optional: Insert 3MF file download link here]

Leave a comment

Please note: comments must be approved before they are published.