Introduction: TimeFrame - a Time Portal to Put on Your Desk.

Picture of TimeFrame - a Time Portal to Put on Your Desk.

Mind-blowing gadgets are rare these days. Very seldom will you stumble across something truly magical that leaves you in a state of confusion and amazement

This project is inspired by water drop levitating installations such as shown by many museums around the world and the “Slow Dance” kickstarter campaign by Jeff Lieberman.

What do you need to build your own?

You can get the kit including all parts here:

Get latest software here:


  • Soldering stuff
  • Battery-powered screw gun
  • Various drill bits(2mm, 3mm, 6mm)
  • Pliers & wire cutter
  • Mini USB-B cable for programming the Arduino


  • 1x 12V 1A power supply
  • 1x picture frame (at least 25mm deep, better 35mm)
  • 2m LED stripes (3 pieces of 60cm each)
  • 1x thin metal plate like thickness metal gauge (thickness: 0.3mm size: 10x70mm)
  • 1x rod fixation plate (eg. Aluminum 20x55x2mm)
  • 1x wood block about 4 mm longer than the iron core
  • 3x wood screws + washers
  • 1x iron rod / screw / nail (length around 60mm diameter: 6-12mm)
  • 1x fixation for iron rod like M6 bolt or just a nut in case you use iron screw
  • 45m (=40gr) 0.41mm (AWG26) isolated cooper wire
  • 3x small Neodym magnet (d=10 h=2)


  • 1x Atmega Nano V3.0 328P
  • 1x Capacitor 16V 4200 uF
  • 2x Mosfet IRF540N
  • 2x 10K Resistor
  • 2x 300 Ohm Resistor
  • 2x Diodes 1N4007
  • some cables for LED connection

Step 1: Preparing the Coil

Picture of Preparing the Coil

Step 2: Mount the LEDs in the Frame

Picture of Mount the LEDs in the Frame

Step 3: Assemble Central Wood Block

Picture of Assemble Central Wood Block

Step 4: Build the Electronics and Mount the PCB

Picture of Build the Electronics and Mount the PCB

Please note that below circuit can not be simulated at the moment. The interrupt implementation is missing in the emulator software. Also Arduino Mini instead of suggested Nano has been used.

Programm the attached INO file or get latest software here:

Do not connect the unit to a computer when the magnetic coil is connected. The current draw and the reversed induced voltage might damage your USB port or computer. Always remove the Arduino from the PCB for programming!

Below video shows the kit electronic assembly.

Step 5: Operation and Dangers

Picture of Operation and Dangers

Flowers and leaves work best. Please make sure they are dry so that the metal base is not rusting. Feathers also look truly amazing. Not sustainable enough? Paper-Flowers work as well. These can be a bit noisier depending upon material used.

Just use a rubber band to fix the flower on top of the resonator plate. For thin flowers you can also use a magnet to squeeze it in. The included magnets serve two purposes. They enhance the magnetic force and balance the momentum of the whole resonator. The amount and position is greatly influences the noise and amplitude of the movement.

All magnets have a north and south pole. They will better work in one or the other orientation depending on your coil winding direction. Just try were you think they offer more clamping force towards the running resonator plate.

The strongest force you get with the magnets opposite of the coil.

To increase the force even further you can put one magnet dictly on the end of the iron core of the electro magnet and not on the resonator plate. If you want to lower to force you can move the magnets up/down as well. This works especially well if you have only a small flower with low momentum it often makes sense to use less magnets, but move at least one magnet up where the flower is attached. This increases the tip weight and will remove any fast jitter from the movement.


The high frequency flickering within this product may cause an epileptic reaction due to photosensitivity. Most people will not even realize the flickering because it is much faster than average computer monitor. Due to uncertainties regarding the epileptic nature of this product please stop looking into the light when you experience other symptoms like headache, nausea or dizziness. Be especially careful during programming. Anything lower than 50 Hz will look like the strobe lights in a nightclub.


AlisdairG made it! (author)2017-10-31

Fantastic project, if you don't want to make one try:

kaoca (author)2017-06-10

Hi every one, i am new here. I love this, i'd like to make it one myself but for some reasons i can't. I need help, if anyone made many copy of the kit or parts or document to assembling in detail please send me one. Thank you so much :)

cnkkrs (author)2017-02-05

I've designed a single layer PCB from the schematics. So if you want to print and etch the PCB yourself, you are welcome to use it!

MiguelB97 made it! (author)cnkkrs2017-04-19

After searching for the components position on the PCB, here is all of them, If you need to use the duty potentiometer (in the other Instructable), it's ready for that.

MiguelB97 (author)cnkkrs2017-03-14

Thank you cnkkrs for uploading the schematic of a single layer! I'm veeery new to all of this and planning to build the TimeFrame using your schematic. I figured out where all the components go from the original PCB to yours, but I can't seem to identify the component that goes on the left side (Left of the reversed MOSFET). Should I leave them empty? Thanks again :)

cnkkrs (author)MiguelB972017-03-14

Hry. I am sorry I had not have the chance the make the schematic clearer :)

Those two holes on the left are for the ground legs of the potentiometers. It was the first time I've designed something like this but it works quite well.

MiguelB97 (author)cnkkrs2017-03-14

Thank you very much for the quick reply! Already on my way to the electronic store ;)

cubic-print (author)cnkkrs2017-02-15

Thanks for publishing. Please check the capacitor pin distance. A bigger one with 5mm leg distance is recommended.

Jesper MartinS made it! (author)2017-02-21

My contribution

I used an old kitchen table that i glued together after shapen it first to removed oil etc), then i shaped it down to 50x50.

For controls i glued the POT to a metalplate and made some knobs in wood, as i couldn't find any that small, and wanted it on the backside.

I only used one LED as it is 5V, the datasheet says it can manage 100 mA for 1mS. With the setting of MAX 16 in brightness, the pulse are 1,5mS but the current draw are only 70 mA peak.... it haven't failed yet.

I have added info light, it is a acryl with a RGB 5050 led, 100 Ohm resistor for Blue, 150 for Red and Green, it pulses and changes colour after mode.

I used 0,65 wire for magnet app 45 Meters


- Added Shortmovie effect.
- Changed debug to use a timer, so it dosn't delay the code
- Changed from 3 12V to one 5V LED strip, haven't failed yet:-)
- Added some more txt to timers param, as i had a hard time to understand it
- Added Filename printout in debug
- Added 100nf to A0 and A1, even though it is input, it's a good idea, also helps if POT are eg. 100K to keep a stable voltage.
- set it to start in mode 5 (off), and therefore added mag_off() in mode 5
- Added pulse infolight (idear from Paul Hutchison)
- Changed pushbutton so it is more rappid and only toggle once when hold (idear from Paul Hutchison)

Should have:

I used external pull-up, such a waist. Instead i should have used the internal ones like this:
- pinMode(pin, INPUT); // set pin to input
- digitalWrite(pin, HIGH); // turn on pullup resistors

The video are not super quality, but shows it the different modes

1 - off - quick flashing Red light
2 - Slow - Blue light
3 - Double - Green light
4 - Short movie - Red light
5 - only LED - White light

try it, it think the Short movie are super cool, though the LED flicker slightly, I think ti is due to counter overflow, but it also gives it a random movement.


in mag_on(), it says Hierraus frequenz, What does Hierraus mean??

MiguelB97 (author)Jesper MartinS2017-03-17

Hi! If I am correct, Hierraus should be spelled with only one "R", then Hieraus frequenz can be translated to "This is the frequence".
Nice work, I really like the LED stand for the EM. :)

JonathanK76 (author)2017-03-06

Anyone wanting a preprinted PCB from the Cubic Print github and are in Australia message me :)

MichaelC905 (author)2017-02-07

why is the IRF44N listed in the parts list but the IRF540N is being used on the PCB schematic?

cubic-print (author)MichaelC9052017-02-15

Thanks for the hint. I just corrected this mistake.

JonathanK76 (author)cubic-print2017-02-15

Shoot... will the IRF44N Work? thats what i ordered and just recieved.

cubic-print (author)JonathanK762017-02-21

Don't worry. It should work. Pinout and Vgs are the same.

SparkItUp (author)2017-02-02

Wow, sold out of all your kits! I hope you don't mind that I've been sending people your way from my Instructable :)

It's proof of how popular this concept is, and thanks again for making it available!

cubic-print (author)SparkItUp2017-02-15

We got a little busy the last days, also thanks to you. Orders are still not too many. Our two people company can still handle to pack all orders. ;) Happy to hear all the positive feedback.

wrecks135 (author)2017-01-28

Is there any reason that this wouldn't work with a circular frame? I'm thinking it might look cool to use a small bicycle rim or fabricate a round rim for the LED's.

SparkItUp (author)wrecks1352017-02-02

There is no reason it wouldn't work. Just be sure to eliminate as much ambient light as possible.

Maniacy (author)2017-01-26

Thanks for sharing the code! This is much more elaborate than my version. Is it possible to use this code with an H-bridge instead of the simple MOSFET for magnet control? I'm using one in my device. Providing push and pull on the magnet would make a stronger power, like the original slow dance sculpture.

SparkItUp (author)Maniacy2017-02-02

I started off using an H-bridge for push/pull oscillation like you but found that it was far more complicated and in the end the effect wasn't too different than just using a push via PWM to the MOSFET, and letting it spring back.

There are two ways of achieving it with an H-bridge:

- The easy (and I think wrong) way: use a voltage divider to feed one side of the H-bridge with Vcc/2, then PWM the other input alternately between Vcc and Gnd. When I tried this my H-bridge overheated but I'm not entirely sure why, probably it had to dissipate too much power during the idle part of the cycle.

- the second method I think would work but I think the Arduino timer code might get complicated and you'll have to get your hands dirty and learn all about Arduino timers: You need to set up two output pins to PWM alternately between Vcc and Gnd but still in phase, so output 1 is high while output 2 is low and vice versa. Two considerations, first you probably want to drive the magnet under its rated voltage, as you won't need all that power and your magnet will likely overheat. Second, you might still be able to control the duty if you use two timers in sync instead of one, but then I think you'll lose your delay( ) function - Nanos have 3 timers: one is used for delay, millis, etc and you need one for your LEDs leaving you only one timer free. If you adjust the frequency of the first timer then those functions will behave unexpectedly.

I may be wrong about some (or all) of this, but I did spend a lot of time reading up on it and came to the conclusion that it was all too hard when CubicPrint's code was just easy, the MOSFETs dissipate virtually no heat and (most importantly) it still looks great.

Good luck with whatever you decide!

cubic-print (author)2017-01-25

Due to many request we just put the electronic kit online:

dushyantahuja (author)2016-11-08

Do you have a version of the kit with only the electronics. I believe that would reduce the international postage, and would allow us to use our own frames.

Thanks for the hint. Electronic Kit is available now:

cnkkrs (author)dushyantahuja2017-01-02

Yes, I would love if you sell the electronics apart too. Anything over 30 Euros cost huge taxes in my country.

dushyantahuja made it! (author)2017-01-24

Thanks for sharing.

SparkItUp made it! (author)2017-01-09

Made this for my wife for Christmas. I saw the original Kickstarter and decided I absolutely had to make one so started testing various parts and materials and I set up a prototype sketch on an Arduino Uno, bought some beautiful old reclaimed timber for a frame and ordered parts from China. Then I got a link to this page and saw your code - it was much cleaner than mine, so THANKS! I've used your code but my frame and coil looks more like the original Slow Dance with dual oscillating arms. I adjusted the code somewhat: changed it so it's "off" when you first power it on, added a dim and slowly pulsating LED for the power/mode button, removed "mode 3", and added a third pot to control coil duty. It was a hit with the wife and family (if you don't count the many hours I spent away from her making the thing!). Thanks again for sharing, you saved me many more hours tuning the timer code :)

SparkItUp (author)SparkItUp2017-01-09

Hmm video doesn't seem to have embedded too well. I got lucky with the flickering issues I think, it turned out quite well - See it here:

cnkkrs (author)SparkItUp2017-01-09

Looks awesome. Share the code maybe? :)

SparkItUp (author)cnkkrs2017-01-21

Just got my Instructable published, please take a look and vote for me!

Source code is on Github:


dushyantahuja (author)2017-01-10

Amazing instructable !! Just one question - I have 0.2mm x 100m copper wire. Can I use that, and what changes would be needed to use that?

SparkItUp (author)dushyantahuja2017-01-21

I know this is a late reply, but for anyone else with the same question, check out Step 3 of my just-published Instructable. I've created a spreadsheet for calculating your total coil length, resistance and number of layers based on wire thickness and core dimensions:

lcroisez (author)dushyantahuja2017-01-17

for my own electromagnet i used the one from a door ring bell. You could buy one for some bucks at your nearest hardware store


I also used another type (0.6mm), and i used these 2 pages for calculating

I ende up winding 10 layers equal 44 Meters

lcroisez made it! (author)2017-01-17

I would like to thank the author for posting. This is an awesome hack, and it works very well.

Jesper MartinS (author)2017-01-10


I tried to figure out the code, but i lack the competence....

I think it would be nice to add a mode where it makes bigger jumps to simulate old stump movies, would that be feasible?

By the way, i used 5V led strip, can't see what you used, but it works perfect.

cnkkrs (author)2017-01-08


Isthe electronics list missing some components? In the video you seem to solder more components to the board. Is it possible to complete the circuit with a breadboard?

D_mon (author)2016-12-25


i changed to the code 3.1_full and it is SO much better. the potentiometers and mode button now work, and by tuning the speed dial the result is so much better now. for anyone making this, DO NOT use the 3.0_simple code, the effect is diminished drastically. happy building!

cubic-print (author)D_mon2016-12-28

Congratulations. Looks really great. The "_simple" code is not considering any buttons or potentiometers. "_full" code should be used. That is also the version we pre-preogram for the kit. Latest files can be found on github.

Jesper MartinS (author)2016-12-27


You saved me a lot of time by making this instructable :-)

One thing though, i can't seem to find the value of the pot (R1 and R2),

is it 10 K ?

Yes, they are 10K. Everything between 1K and 100K will work as well.

D_mon made it! (author)2016-12-25

P.S. i moved things around a bit behind the scenes and used SUGRU to cover the start and end of the coil winding to avoid it slipping over time, but i don't think any of that should effect the results. the end of the coil core does not have any SUGRU covering it.

i did loosely twist the two coil wires coming off the end of the coil and going to the circuit board together to keep them neat; could that be reducing the magnetism in the actual coil enough to make a difference? i wouldn't have thought so but its the only thing that could be effecting the result as far as i can figure out. anyone have any thoughts?

D_mon made it! (author)D_mon2016-12-25

sorry for the multiple comments, i can't edit or add to my previous ones. since i'm making a different frame for V2, i also used the extra cover board to make the back look neat. gaps will be filled and i might close it from above as well.

D_mon made it! (author)2016-12-25

hey guys! got round to making my kit. it turned out very neat with a nicely wound coil after several attempts, but i'm not getting the best results yet. will keep playing with the magnets and trying something nicer than the fairly crude leaves i had, but even so it looks lovely, and there is a very subtle movement to the leaves if you look closely. still need to remove the little backboard pegs and glue the two electronics cover boards together and into place, maybe put a bit of a diffuser over the LEDs. the second kit will be fitted into a custom round wallnut frame, so pictures when its ready.
frohe weinachten cubic-print und nochmals viellen dank! happy holidays to everyone else too!

D_mon (author)2016-11-17

hi guys. i just received my kits only three days after ordering, and they were even out of stock. thank you so much! the haribo was lovely too :-) they'll make such lovely christmas presents. just had a go at winding a coil...its not that easy, but i think it should be ok. i'll be making my own frame out of oak as well and will try to integrate the electronics into the edge. pictures soon. nochmals vielen vielen dank! lg

MarianK17 made it! (author)2016-11-08

Built up a similar setup it in the lab using a function gen and a strobe light. The effect is quite impressive, and now I really have to build a proper one for myself.

joergeli made it! (author)2016-10-31

Hello cubic-print,

I purchased one of your kits - works like charme :-)

I've made some modifications to the frame, because I don't wanted to look directly into the LED-stripes.

So I took some aluminium L-profiles (2cm x 1xm) and some stripes of acrylic glass (3cm wide) with an transparency of 60% and glued them together (see attached pictures). To cover the electronis, I used a 40x15cm aluminium L-profile in which I saw two slots for the coil and for the resonator.

Then I glued the "diffusors" over the LED-Stripes. The LED light now shines through an 1cm wide slot (3cm wide acrylic - 2x 1cm aluminium), so I got a much softer light, even under daylight.

IMHO it also makes the frame look a little more elegant.

Greetings from Germany


cubic-print (author)joergeli2016-10-31

Great to see that the very first set we sold turned out so well. Amazing improvements. I imagine that the brightness is reduced due to the shading and milk glas. Is the effect still visible in broad daylight? Did you adjust the LED duty cycle in the firmware?

joergeli (author)cubic-print2016-10-31

Yes, of course the brightness is a little bit reduced, but the effect is still visible even in my room with daylight.

OK, I didn't tested it ouside in bright sunlight, but the frame isn't designed for that extrem circumstances ;-)

Yes, I've been playing with different LED duty cycles and also with the coil frequency, but at last I returned to your predefined values, that seems to be the best compromise.

I tested with paper flowers, and branches of shrubs. Big flowers I haven't tested yet because I have none( maybe I go to neighbours garden at night and "borrow" some them ;-)) Feathers are also not tested

I have also painted the coil with transparent paint, because it was a bit noisy. Perhaps the reason is unaccurate winding the coil by myself? Anyway, it's not soo loud and with adjusting the magnets it's OK for me.

I've also tried to make a video to show the movement, but always got a horrible flickering because of interferences between LED frequency and my tablet cam. How did you made your videos?

MarianK17 (author)joergeli2016-11-06

Just decrease the shutter speed to something like 1/30 s.

If you only have automatic control, just dim the frame and environmental light.

About This Instructable



More by cubic-print:TimeFrame - A time portal to put on your desk.
Add instructable to: