The Lucid Dream Machine




This is part of both the "let it glow" challenge and the robot challenge, so please vote for either/or category that you see fitting if you enjoyed/liked this instructable. Remember, voting is different than giving it a good rating.

First off, this is a Collaboration between me Guyfrom7up and Gmoon

Gmoon did all of the programming, debugging, etc.

Guyfrom7up did all of the hardware, PCB, etc.

What is Lucid Dreaming? Lucid Dreaming is when you are sleeping and dreaming and that you are aware that your are asleep and that you are dreaming, yet you don't wake up. This can be great, giving you full control of your dreams, jumping off of buildings, going into space, whatever your mind can create.

The Lucid Dream Machine is a pair of glasses that you wear while you are sleeping. About 4 hours into your sleep the AVR microcontroller pulse LEDs that shine through your eyelids. This half wakes you up. The flashing lights helps you become aware (in your sleep) that your are sleeping and dreaming, in doing so you become more likely to be able to control your dreams.

Our Collaboration give you the Lucid Dream Machine.

Sorry, but to watch a video you will have to download it, for some reason the video won't work on both youtube and metacafe.
(gmoon: I tweaked the video and uploaded to my account... I need to do this for all my videos, also.)

Step 1: Supplies

In order to build the device you need:

1x ATtiny13v AVR Microcontroller
2x LEDs (color of your choice, we used red because it works at low voltage, shines through eyelids well, and is cheap)
2x Resistors (value of your choice)
1x SPST or SPDT switch (it's only used as a power switch, so it doesn't matter)
1x Normally off momentary switch
1x Lithium 3volt Watch Battery (we used a CR2032)
1x Lithium Watch Battery Holder (we used a CR2032 holder)
Some way of mounting the device to your face, such as glasses).

Ways of making a PCB or just Prefboard (up to you, we used a custom PCB using toner transfer and Eagle)
An AVR programmer

Step 2: About the Program

Other than initialization, the lucid13 software runs entirely via interrupts. Timer-triggered IRQs count through the long initial wait until the subject is in a deep sleep. The timing scaler is then switched to a high rate to create the smooth PWM for the lucid dreaming LED blinking.

Functioning modes:

--User input/options
--Wait-for-sleep mode
--PWM dreaming mode


During startup the LED lights up for approx. 2 seconds to indicate operation.

The device also checks if the input button was pressed and held during power up for those initial 2 seconds. If it was, "immediate mode" is entered: the LEDs begin blinking. This is mostly so guyfrom7up could easily test the hardware without waiting for four hours ;-).

It could also be used for "catnap" type sleep states.

However, we could also add a bit of code to vary the pulse width...whattay think?

The Timer and IRQ setup for the initial wait state

After checking for user input, etc., and setting up the IRQ, the ATtiny13 is immediate placed in sleep mode. In this mode only the timers, clocks and IRQs are functional. Of course, this is a power-saving measure.

Rollover time for a 16-bit counter, per timer scaler value (times approx)--
-----------------------CS00:        13.75sCS01:        110s (1m, 50s)CS02:        3520s (58m, 40s)CS00 + CS02: 14080s (3.91h)

A ~4 hour wait is possible with the CS02 and CS00 flag combination, a clock scaler of 1024. In this state, the IRQ is triggered 4.6 times per second. The WAITING state could easily be fine tuned, by using the 16-bit counter (for durations < 4 hrs) together with the waitstate counter (for longer delays.)

Since four hours is as good a delay as any, a longer-duration waitstate isn't used. A longer delay would be a trivial matter to implement.

NOTE: guyfrom7up has found the waitstate for his AVRs is somewhat greater than 4 hours, while mine is somewhat less. The internal oscillator of the AVR isn't highly accurate, but it's good enough for our needs....

At 4.6 IRQs per second, CPU power consumption should be very low. Of course the AVR cannot be in power-down mode, as that requires an external wake up signal. Ours must be timed internally, so SLEEP_MODE_IDLE is our best choice.

IRQs per second, for each scaler (approx)--
---------------------CS00:         4766 /s   (during dream phase)CS01:         593.8 /sCS02:         18.6 /sCS00 + CS02:  4.6 /s    (during initial waitstate)

The Timer and IRQ setup for dreaming PWM mode

The timer scaler value changes to CS00 when MODE_DREAMING begins--in order to create the gentle transitions of the software pwm. The duty cycle for the CPU (and IRQ) is much greater (about 4.7K per second.) But the LED duty cycle is much less than it would be with a simple on/off switch. A trade off between cpu and LED current draw...

The overall pulse width (length) of the LED blink is controlled by the MACRO_WIDTH and MACRO_GAP constants. The PWM is handled by incrementing the pwm and transition variables by the constants PWM_VAL and TRANS_VAL. Altering those constants will change how rapidly the PWM "ramps up."

Currently, the dreaming frequency LED pulse rate is approx 1.5 hz.

Program Size

The current version (0.2b) uses only 438 bytes of flash memory. This is well short of the 1K limit on the ATtiny13.

So adding more features is certainly do-able.

Step 3: The Code

For some reason code isn't showing up right anymore, so I've attached a file with the C program

Step 4: The Circuit Board/Schematic

We used a custom circuit board to make the end project look much cleaner for instructables (and the watch battery holder only worked on a custom PCB). The Circuit board pattern and schematic is posted below, but if you choose to make a PCB it's very likely that you have to redesign it because you won't have the exact same pieces as we do. We left a lot of wire pads so that it would be easy to upgrade in the future (such as adding more switches, LEDs, etc).

Step 5: Soldering

If you do not know how to solder, watch videos such as this one:

and look into some soldering Instructables such as:

Solder some longs wires to the other side of the resistors and ground. It's easier to make them too long and then cut them shorter than the other way around. The other side is later going to be soldered to LEDs which hover over your eyes.

Step 6: Prepare the Mask

I used a sleeping mask, so some of this might be purely situational, but it's just what I did.

Most masks are made up of 2 pieces of fabric and some squishy foam in the middle for comfort, what you need to do is somehow mount the Lucid Dream Circuit on the mask (above the nose) and cut out eye holes for the LEDs.

To mount the PCB I cut into one of the pieces of fabric and just slipped the PCB between the 2 pieces of fabric.

For eyes I just slowly guessed and check with a pair of scissors (make sure you don't cut the mask while it's on your face!!!)

Step 7: Line Up the Wire

Line up & cut the wire to the correct length where you are going to mount the LEDs over your eyes.

Step 8: Solder on the LEDs

Solder the LEDs to the wires above the eyes. You may want to slip on some heat-shrink before you solder it up to prevent shorts later. Make sure the LEDs are facing the right way!

Step 9: Test It Out!

Test out your finished Lucid Dream Machine! Turn it on, it should be able to shine through your eyelids, then the LEDs should go off and wait for 4 hours, and when you fall asleep they'll start blinking at you.

This will give you a good chance at controlling your dreams.

Have fun with it!

Step 10: Personal Experiences

I, honestly haven't been able to keep this device on for long enough when I'm sleeping for it to start working. For example, 1 night I think I took it off in my sleep without me knowing it, and another night I tossed and turn so much in my sleep in the first hour or so that when I woke up 2 hours from when I started sleeping I found the mask near the foot of my bed. Another night I think I took it off in my sleep...

I will update this once I get a successful experience.

Don't forget to vote!

Third Prize in the
Let It Glow!

Participated in the
The Instructables Book Contest



    • DIY Summer Camp Contest

      DIY Summer Camp Contest
    • Planter Challenge

      Planter Challenge
    • Sensors Contest

      Sensors Contest

    335 Discussions


    2 years ago

    Does this thing work or not? I´ve been trying to train my brain and nothing's work. I would like to know if it works before I build this. Sounds really cool.

    5 replies

    Reply 2 years ago

    You don't need a device to Lucid Dream. It does however take effort on your part.

    I have been Lucid Dreaming for nearly 20 years.

    There is a lot of good info on the internet.

    It is very important to keep a dream journal.

    Good Luck.


    Reply 8 years ago on Introduction

    I are a maojr in hallucinogenz and dose have wors effecs on yuo


    Reply 2 years ago

    "dose" instead of "those" indicates Chicagoese. And i knows dat as i'm a native chicagoan. So dere.

    Haunted_Human - What he's doing is deliberately colloquial. Here's a definition for you straight from the precious dictionary -

    Colloquial: conversational, informal referring to types of speech not on a formal level. Refers to a style used in the oral exchange of ideas, opinions, etc.: an easy conversational style, without formality, without strict attention to set forms, unceremonious: an informal manner of speaking; it describes the ordinary, everyday language of cultivated speakers.

    I'm wondering if you're capable of leaving positive comments... You seem to enjoy hurting others.


    3 years ago on Introduction

    que tremenda pelotudes.....hace algo productivo pendejo...cascate el mani...


    4 years ago

    Is this real life :o


    10 years ago on Step 10

    If anyone has tried this please tell us what happened to insure that its safe!!

    7 replies

    Yes! It works! But... no magic! close the eyes, turn on the machine and go to the matrix is false! This "machine" do 5% of work, the other 95% is your mind learning the work.

    The leds call your mind for attention only. Several months are request to you "wakeup" in a lucid dream.

    My first lucid dream comes after 4 months usind everyday. Now, after 2 years, I do not need the machine. I can wakeup in a lucid dream by my self (when sleeping sure). But the sound around me is distractions and do dificults to still dreaming.

    In the dream is very dificult still lucid, everytime I lost the control.

    Yes! It works! But... no magic! close the eyes, turn on the machine and go to the matrix is false! This "machine" do 5% of work, the other 95% is your mind learning the work.

    The leds call your mind for attention only. Several months are request to you "wakeup" in a lucid dream.

    My first lucid dream comes after 4 months usind everyday. Now, after 2 years, I do not need the machine. I can wakeup in a lucid dream by my self (when sleeping sure). But the sound around me is distractions and do dificults to still dreaming.

    In the dream is very dificult still lucid, everytime I lost the control.


    Reply 8 years ago on Introduction

    Anways, I think that the prgress of Science can't be stopped because of dangers too!


    Reply 9 years ago on Introduction

    What's the worst that could happen? The mask could fall off and choke you i guess, but otherwise it's risk free.


     As a person with epilepsy any blinking light causes this. If you read in the agreement with Yahoo within the email account even they tell you there is chance of epileptic seizures. Just surfing your inbox can cause this. Best to not offer an opinion on something unless you know what you are talking about when this could cause harm. ANd really you could reprogram your mind with this device this type of stuff should not be allowed to be on this site. There is a reason there is an FDA even though they are not perfect.
    You could cause yourself to be stuck in certain parts of sleep patterns and not fully get out like when you are driving.

    "Any blinking light" will NOT cause epileptic seizures, and even if it did, that would COMPLETELY obviate this point, as this would be no more problematic than ANYTHING else.

    (And my degree in neuroscience trumps your psych degree.)