Circadian Lighting System/Lamp (Body Clock Light) (Sunrise Lamp)

by SiennaGrylls in Circuits > Clocks

24 Views, 0 Favorites, 0 Comments

Circadian Lighting System/Lamp (Body Clock Light) (Sunrise Lamp)

image.png

The Circadian Lighting System, helps provide you some sunlight into your room in the gloomy winter months, you wake up naturally by the sunlight getting let into your room which leads to you waking up by your 'body clock' instead of in a pitch black room, which leads you to having a good day.

Background & Research:


How does it work?

The sunrise lamp works by gradually increasing the intensity and colour temperature of its light over a set period to simulate a natural sunrise. The light exposure cues the brain to decrease melatonin and increase cortisol, helping your body wake up more gently and naturally.

Example 1: https://medium.com/@heybenlim/build-an-arduino-sunrise-alarm-d19b5867628c

What components are used?

  1. Real Time Clock (RTC) - This clock will help us keep and set the time
  2. Warm White LED Strip - Which will allow the light to work with light given off
  3. MOSFET - This acts as a switch to turn off and on the LED strip quickly
  4. 9V Battery - This is to power the LED Light

Example 2: https://myprojectcorner.com/making-a-diy-sunrise-lamp/

What components are used?

  1. Fado Lamp - This is the case to be able to enhance the projection of light
  2. Dimmable LED Bulb - This is to be able to dim and brighten the light
  3. WeMos D1 mini - This is to be able to connect to a device and change what time the lamp turns on
  4. Hi-Link 220v AC - 5v DC - This is a battery to be able to power and ensure the lamp works
  5. RobotDyn PWM Dimmer - This is to dim and brighten the LED Light
  6. Dupont Connectors - To connect the circuit together
  7. The 3D Printed Base - Allows the lamp to sit/balance on a base

Example 3: https://www.instructables.com/Sunrise-Alarm-Clock-With-Arduino/

What components are used?

  1. Clock - To see the numbers/what time it is
  2. MOSFET - To control the brightness of the lamp
  3. Super Bright LED - To see the Lamp when it wakes you up
  4. 9V Battery - To power the Lamp
  5. Breadboard - This is for easy assembly
  6. Arduino UNO - To connect everything together
  7. Case - To hide the LED and project it easier/brighter

Supplies

IMG_1132 2.jpeg
IMG_1130 2.jpeg
  1. Pi Pico
  2. Bread Board
  3. Header Strips
  4. Wire (Black + Red)
  5. V Reg
  6. Impact Jack
  7. LED's
  8. Resistor
  9. Capacitor
  10. Solder
  11. 3D Printed Case

Complete the Board Layout

IMG_1131 2.jpeg
IMG_1139 2.jpeg

Complete the board layout and solider the pi pico to the board the pi pico is on header strips to ensure if a mistake is made it is easier to de solder.

Place the Layout

IMG_1137 2.jpeg
IMG_1136 2.jpeg
IMG_1133 2.jpeg
IMG_1135 2.jpeg

Put the DC barrell jack in the middle of the circuit, put diode directly in line, put the voltage regulator in line with the diode, put the capacitor across input and ground of the voltage regulator. Put the capacitor across ground and output.

Soldering Things Together

IMG_1144 2.jpeg

Solder the grounds together, output of the bio jack and input of diode connect together by bridging the soldier, and from diode to input, and from diode to capacitor.

Connecting V Reg

IMG_1148 2.jpeg

Connected all V reg inputs with wire to ensure the LED'S work. Connect V reg out to +V. Connect V Reg GND to GND bridge power and ground outputs. Check V Reg GND for short across input. Solder ground pin of impact jack to GND.

LED Connecting

IMG_1146 2.jpeg

Connect the GND pin of LED to GND and connect positive pin of LED to positive.

Connect GND & Positive Around Board

IMG_1140 2.jpeg

Connect GND to GND around the board as well as positive to positive around the board. Then check that the correct volts are running around the board.

Test Code

Screenshot 2025-11-10 at 10.36.28 am.png

Plug the circuit into a laptop and run test code to see if the LED works.


Test Code:

from machine import Pin

from time import sleep

import neopixel


LED_DATA = (Pin) # Set the GPIO Pin supplying DATA IN on the first LED

LED_NUM = (Number of LED's) # Set the number of LEDs in the chain


leds = neopixel.NeoPixel(Pin(LED_DATA), LED_NUM)


white = (255, 255, 255)


leds.fill(white)

leds.write()