/night_light

The Night Light uses an Arduino Nono with a bedside located illuminated button, to control a WS2811/WS2812 LED strip

Primary LanguageC++BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

This project uses an Arduino Nono with a bedside located illuminated button to control a WS2811/WS2812 LED strip for my little daugther's Night Light.

Sounds like an overkill? No - this has the following advantages:

  • Automatic turn off after programmable time - the light is not on for the whole night.
  • Fade out to show that light will turn off soon - so stay close to the button if re-enabling light is desired.

Overview

The images below show the main parts of the system.

Button Mounted Top View of Circuit Side View of circuit

Circuit

The following circuit was drawn with Fritzing and is located in img/drawing.fzz folder. breadboard circuit

The transistor used in this example is a BD645. But any transistor capable for the current drawn by the LED strip could be used. The capacitor with 470uF buffers the energy for the LED strip. This way the supply voltage should be stable even with long supply leads.

Main Components

Item Supplier - Partnumber Image Details
Arduino Nano Ebay - Arduino Nano V3.0 (ATmega328) Datasheet
Button Ebay - "LED Drucktaster Gelb Druckknopf Taster Schalter Push Button 19mm" Datasheet
LED Stip Ebay - "5m adressierbar WS2812B ws2811 IC 5050 144 RGB LED 5V Streifen" Datasheet

Code

The project can be compiled by using the Arduino App or by using CLion. This is why the project folder contains all the CMake files.

For controlling the LEDs, the Adafruit NeoPixel library is used. But you do not have to install it, as it is located in the src/ directory.