Picture of Arduino Watch Build Instructions
Steampunk Isometric Binary.jpg
Steampunk Top Analog.jpg
Update: New version out that works with Arduino 1.0 and higher!

The Arduino Watch provides augmented sensing of temperature and range, 16-bit color drawing program, Breakout game, and also tells the time in your choice of digital, binary, or analog.  Additional sensors, devices, and programs are easy to add as any standard Arduino.

The source code can be downloaded from the google code page, code.google.com/p/arduino-watch.

Updates and news on the Arduino Watch can be found at OptimizedForce.com

This is a video that gives an overview of what the Arduino Watch can do.

Step 1: The Materials

Picture of The Materials
The materials used in making the watch are

1 Arduino Mini Pro 328 - 3.3V/8MHz available at SparkFun
1 FTDI Basic Breakout (if you don't have one) available at SparkFun
1 4D Systems OLED Module 1.5" (128x128 pixels) available at SparkFun
1 Blackberry Trackballer Breakout available at SparkFun (I'm sensing a theme of the supplier)
1 3.7V 1000mAh Li-Polymer battery available at SparkFun
1 LiPoly Fast Charger available at SparkFun
1 DS1307 Real-time clock available at Digi-Key
1 Crystal 32kHz available at SparkFun

Nuts and Bolts available at local hardware stores
2 #4 bolts 3/8" long
2 #4 bolts 1/4" long
4 #4 bolts 3/4" long
8 #4 nuts
(for the nuts and bolts I found the brass ones at Ace and the zinc ones at Home Depot)

Watch Band
~13" x 1 5/8" leather band for the outer layer (I used a wide leather belt)
~8" x 1 7/8" elastic band for the inner layer (I used another belt)

1/4" OD copper tube available at Home Depot
1/2" thick piece of wood for screen case, I usually use poplar wood.
6 right angle header pins available at MarVac
1 Connector Housing 6 pin housing (if you can find a 5 pin housing get that) available at MarVac
2 Connector Housings 1 pin housing
7 female pins available at MarVac
1 IDE ribbon cable (dig it out of that pile of cables you never use)

Alternate parts
1 4D Systems OLED Module 0.96" (96x64 pixels) available at SparkFun will also work since I originally programmed the watch for that display until I accidentally broke mine and everyone was out of stock so I had to move to the next size up.
1 3.7V 900mAh Li-Polymer battery available at SparkFun smaller cheaper battery almost as much power.
1 Real-time clock module available at SparkFun or at RobotShop these modules would replace the real-time clock chip and the 32kHz crystal and give you a backup battery.

Step 2: The Software

Picture of The Software
The code for the Arduino Watch can be found on my Arduino Watch google code page http://code.google.com/p/arduino-watch/.
The main file needed is the WatchRXX.pde (were XX is the current revision) and at the same location you can also download all the libraries needed for the Arduino Watch software.

Step 3: Preparing the materials

Arduino Prep
Solder the right angle header pins to the Arduino so that you can connect the FTDI Basic Breakout board easily.

Battery Prep
Cut the JST connector off of the battery and attach the single pin housings to the ends of the wire this tutorial is useful to teach how to crimp the wires.

Step 4: Carving the Screen Case

Picture of Carving the Screen Case
Rough Carved.jpg
Rough Carved Frame with display.jpg
Display Case Finished upsidedown.jpg
This step covers the carving of the case for the OLED display.  The frame was carved on a Carvewright woodcarving machine.  Then sanded down the part and drilled the screw holes on a drill press with a 1/8" bit.  To locate the holes I put the display in and marked out where to drill.  Originally I tried to drill the holes in with the Carvewright but it split the frame during the hole drill and I had to start over. Next I used a dark stain to give the poplar wood a nice finish.

Step 5: Parts Layout

Picture of Parts Layout
This step is where you layout the parts to see how long of wires you need to have for the watch.  Remember that when the watch is on your wrist the parts will be closer together due to the curvature of the watch band.  Tape the components to the watch band and see how it fits on your wrist and make sure everything is in a comfortable position.  Layout the ribbon cable from the part to the Arduino and mark the distance on the cable (leaving wire to solder to), then cut the cable and strip the wires.

For the trackball to Arduino there needs to be a minimum of 7 wires (power, ground, button press, up, down, left, right).  If you want to light up the trackball you can use more wires and connect to an available digital out.

For the display to Arduino there are 5 wires.

Step 6: Cutting the watch band

Picture of Cutting the watch band
The step covers the cutting of the watch band to create mounting points for the trackball, display, and battery.

The screw holes are 1/8" diameter and the hole for the trackball is 1/2" diameter.

The large square in the picture was for the smaller display I was originally going to use and is not necessary.  The smaller rectangle cut out is for the connection to the display which is necessary.

Step 7: Soldering Connections Diagram

Picture of Soldering Connections Diagram
Helping hands.jpg
This Excel file has the pin map for how to wire the Arduino to the other components. 
The picture shows you what it will look like after following the next few steps.

Remember helping hands are always, well, helpful when soldering.  And if your helping hands cut into your wires stick a clothes pin in the helping hand and put your wire in the clothes pin.

Step 8: Soldering the Trackball

Picture of Soldering the Trackball
Trackball Soldering.jpg
Place the trackball board and the trackball ribbon cable into the helping hands and solder the wires.
After soldering put a little bit of hot glue over where the wires connect to the trackball board for improved strength.

Note: To make a more compact design wires should head out to the left in the picture (opposite the direction seen below) laying flat against the back of the trackball board.

At this point it is good to test that everything is wired correctly, you can do this by uploading the the Trackball Tester software found on the Arduino Watch google code page.

Step 9: Soldering the Display Connector

Picture of Soldering the Display Connector
Arduino Display Connector Solder 2.jpg
Now that the trackball is connected and tested you can move to the display connector.  Now you do not want to directly solder to the OLED display since it uses a serial connection to communicate with the Arduino and you want to be able to upload new sketches to the Arduino after you have completed the build (only one serial connection at a time allowed). 
Use a Dremel (or other cutting tool) to cut off one of the pin slots on the Connector Housing 6 pin housing to make it a 5 pin housing.  Also you can cut down the height of the housing so that it does not stick into your wrist as much.
Take the 5 wire piece of the IDE cable from the "Parts Layout" step and crimp the wires into the female pins and insert in the housing.  To increase the strength of the connector (especially if you cut the height down) add a hot glue to where the wires come out of the housing.
Solder the other side of the wires to the Arduino as specified in the pin diagram from the "Soldering Connections Diagram" step.

At this point you can use the Arduino Watch software to test the setup.  Upload the software with the display disconnected, then disconnect the power and connect the screen.  You can then power the watch with either the battery or the FTDI.  If everything is working right you should be able to navigate the displays with the trackball and run the programs from the menu screen.  The time screens will just display 0:00 in their various formats.

Step 10: Soldering the Real-Time Clock

Picture of Soldering the Real-Time Clock
RTC Crystal Close.jpg
RTC Cable Solder.jpg
RTC Cable Solder Closeup.jpg
RTC Solder.jpg
This step covers how to solder the oscillating crystal to the real time clock and how to wire the real time clock to the Arduino.  The data sheet for the DS1307 real-time clock can be found here.

First trim the legs down on the real-time clock so that they don't poke other parts of the watch.
Then solder the 32kHz crystal to X1 and X2

The SCL is soldered to A5 and SDA to A4 as shown in the soldering chart from the "Soldering Connections Diagram" step.  Then solder the power to Vcc and ground to ground.

At this point the Arduino Watch is fully functional for the basic functions, so power it up and test it out!  If the clock doesn't run try power cycling and/or use the reset button on the Arduino.  Sometimes it takes a couple cycles to the the real-time clock going.

Step 11: Solder the Extensions Header

Picture of Solder the Extensions Header
External sensors and devices can be easily attached to the Arduino Watch.  Soldering the 4 pin header to the D/I 10, 11, Vcc, and ground allows for these extensions to be connected and disconnected easily.

Step 12: Steampunking the watch

Picture of Steampunking the watch
Copper Tube Spacer Mark.jpg
Copper Tube Cut.jpg
Frame with Spacers.jpg
Battery cable with copper tube.jpg
Copper tubing is your friend when you want to give your watch a steampunk look.  Spacers for the screws were made with 1/4" OD copper tube cut to about 0.26" length, you may need to try a few times to get the right length (I had to), but you can use the extra pieces in the cover for the battery wires.  To cover the battery wires thread the wire through the small pieces of copper tube until you have covered up to the connector.  

Magnifying lenses like the ones in the picture make a great addition to the look.  You may need to remove one of the spacers to allow them to clip onto the screw or you can glue or solder the lenses to one of the spacers.

Step 13: Extensions: Range Finding

Picture of Extensions: Range Finding
Steampunk Range Screen Zoom.jpg
Steampunk Range 2.jpg
One of the attachments for the Arduino Watch is an ultrasonic range finder.  This one is a Maxbotix LV-EZ2 (from SparkFun) and the watch is reading the pulse width modulated signal from the sensor.

In future versions I may route the output to a vibrating motor or speaker to allow for someone with visual impairment to use the range finder as a cane.

Step 14: Extensions: Temperature Sensing

Picture of Extensions: Temperature Sensing
Steampunk Temperature Screen Zoom.jpg
With the temperature sensing glove attachment the Arduino Watch can give temperature warnings to the user i.e. warning that the drink is too hot or that there is a fire behind a door.

I'll be posting a separate short Instructable on how to make the glove but the sensors used are the one-wire Dallas 18B20 sensors.

Step 15: Wear and Enjoy!

Picture of Wear and Enjoy!
Now that you have your Arduino Watch wear it and enjoy!
1-40 of 89Next »
DavidS396 months ago

super richest buy high-end swiss watch like 100K, 200K USD or more
will corporate with the frac appreciation very well . I believe Swiss
and UK watch makers will survive well as they are the no 1 around the
world and nobody can compete with their
talent/innovation/precision/delicacy in this field so far, not even
close. All the normal / poor quality watches are no longer made in
Swiss. They are made in China. In fact there is a option to bild your
own watch. The only thing which you have to do Is to buy the parts
which you need and also watch biuld kit. Here you can find more
information how to do that - http://www.vintagewatchmaker.

vgregorio7 months ago

Can I just replace the trackball with 4 buttons (up, left, own, right)?

I was wondering, what could be a substitute for the OLED?

Maybe a Nokia 5110 display or you can buy a Monochrome OLED 128X128

paultnylund10 months ago

How is the battery life?

bossmaker1 year ago
also what display (specifications)
bossmaker1 year ago
I am planning on making a smartwatch similar to the same build but I need a board small enough to hold my OS. I also need a good frame. I think mines will resemble a pebble smart watch. any suggestions
tal satti1 year ago
I like your project alot, well done !

i have a question i wana ask u plz , im actually planning to do a human steps counter+ hearbeat montitor, do you think i can interface my project easily with this watch ?
kooljo2 years ago
and could i use this https://www.sparkfun.com/products/11114 instead of there other arduino. idk if there the same or not
kooljo2 years ago
could i use this for the FTDI BAsicbreakout https://www.sparkfun.com/products/9873
kooljo2 years ago
would i be able to use Serial Miniature OLED Module - 1.5" (μOLED-128-G2-GFX) (https://www.sparkfun.com/products/11676) instead of the other screens?
and how would i be able to add back lights.

i'm new to arduino so please help me. this might be my first project. thanks
nerd74732 years ago
freaking awesome!!!
Hello pros:) I am a beginner in the use of Arduino in projects like this. I am no engineer or something but could someone post a guide on how to incorporate programs in an Arduino chip (if that's what they call it) or something like a starter's introduction for Arduino projects?
Anyway this thing is nice, it suddenly sparked my interests in projects like these.
Can I buy one from you and how much would it cost?
vmspionage5 years ago
I absolutely love this. I have a few nanos at home myself... can't wait to make my own! I just wish that OLED wasn't so expensive, but the end result is certainly worth it. Good work!
Ah crap, I broke my 4d 128x128 1.5" the other day. It had a dead line so I tried to fix it by messing with the ribbon cable and I screwed it up even worse. I was on the 4D forum and apparently this is a common defect with the 1.5" version. No problem cause I've got a replacement coming in the mail today (the smaller .96" one). Good news is I got your software working with no problem, and even started on some mods for my application. I was wondering why you had the "shut down" option until I started reading up on the oled - apparently they don't like having power removed all willy-nilly. Oops. I'll be sure to remember that with my new one. Fun stuff, thanks again for the instructable! =)
Matthew Garten (author)  vmspionage5 years ago
I had a .96" and broke it and then could only get the 1.5" at the time as a replacement. Much of the software I wrote with the .96" in mind so there are only a few variables to change to make it run on the smaller screen. Let me know if you have any question about getting it running and post pictures when you do!
I got the smaller screen in the mail Friday and had no problem getting your software to work.  Of course there was a wrapping problem due to the reduced resolution but that was easily solved.  I had a few more problems however and decided to go another direction with this.

First one was that I'm not happy with the smaller size and resolution so I ordered yet another 4D screen, this time the 1.7" version.

The second problem is with the Arduino, and I kind of expected this.  The 32k of memory just doesn't give me enough space for all the functionality I would like to add to my project, so I ordered a mbed as well (512k program space, 100mhz =) ).  Not only did all the necessary libraries take up a ton of memory on the Arduino but also the annoyances of having limited serial and I2C.  I plan on connecting at least one second serial device (probably an xBee) and that wouldn't be possible on an Arduino without having to rely on the buggy SoftwareSerial library.

I did write a pretty cool cursor routine for the Arduino platform that will even work on graphic backgrounds (it snapshots the 8x8 section under the cursor before it draws the bitmap so it can erase it before moving) that seems to work well, however I wrote it stand-alone and haven't yet integrated it into your project.  Let me know if you'd like that code and I'll post it.  I think it would be a cool addition to the main menu.  Also I'm using a configurable speed (pixels moved per trackball bit cycle) and increasing that to 2 or 3 seems to make the interface a lot smoother.  I just hate having to scroll 4-5 times to move from corner to corner.

I'll keep you updated... I have a ton of parts in the mail which should make for a busy weekend.
Got some parts in today and made the band and prototype display bracket.  It's still powered by an Arduino (my mbed is on backorder), but I did get one of these in the mail


It's starting to become obvious that space is going to be limited, so I may have to go 2 "layers", under and over the band.  We'll see.
that is realy nice work you likely could make it a bit like a bracer insted so you can set the batery off to the side and save some room. i love the resolution on the screen hmmm i wonder if it could handle the android os.
Matthew Garten (author)  vmspionage5 years ago
Nice job! I like that you have the trackball LED powered. You may want to add a material layer between the skin and the components for a more comfortable fit. I'd be interested in seeing the cursor code you mentioned, so go ahead and post it for the community to take a look. Keep up the good work!
Thanks, I'll post the cursor code and updated pics later on. I haven't worked on the software at all but last weekend I made a fully enclosed metal case for the screen and another for the battery out of sheet aluminum. I'm still not sure if I'm happy with the design though - I'm using the screw holes on the OLED module which adds another ~12mm or so to the width. I'm thinking about chopping them off and securing it with hot glue in my second revision to reduce the overall size. I'm switching materials as well from aluminum to brass sheet metal.
afiedler13 years ago
Where do I get those mgnifying lenses? They looking really great! :o)

greetings André
American Science and Surplus has a set. I don't think they are that nice brass color but it's the same type.
Search: Double Vision.
hey i also found some oled parts ( i'm not able to say where ) online for one cent each ( 7.01 each with tax shipping and handling ) would those work too
hey i'm new at this and i wanted to know a little more about how to program this thing into doing things like radio and radio jamming. Also i'm kind of a newb so i might add some comments later. One other thing i think you should post another version of this that could go under gadgets.
The funtions i think should be in there are everything in here, a radio, a radio jammer, a 2 gb memory, a few more games, a word processor, and a calculator. I know it seems like a lot to ask but i'm trying to build something like that with those functions
hoser10003 years ago
Also, the DS1338 from Maxim IC is a drop in replacement for this part (DS1307) that will run at 3.3V. Samples are available directly from Maxim.
hoser10003 years ago
Nice project and I just ordered the parts to try this on my own but when I was reading over your statement regarding the RTC you say: "If the clock doesn't run try power cycling and/or use the reset button on the Arduino. Sometimes it takes a couple cycles to the the real-time clock going". How is the clock functioning at all when the power requirements for the DS1307are 4.5V - 5.5V? I assume there is some flexibility in these specifications but I cannot see it being reliable as the 3.7V Battery decreases over time. Have you had issues with this?

protobug3 years ago
hi i was wondering what would it take to add bluetooth capability to this or if thats even possible im about to order the parts and would love to just order any bluetooth parts along with it thanks!!!
Lyron3 years ago
how would i go about adapting the code for a psp 1000 joystick and 1 button to click?

(the joystick outputs 2 analog values 0-255 for x and y and the button is just connected to a digital input)
mikesnyd3 years ago
Is there a way to put an MP3 player and headphone jack on this?
mitchjorg4 years ago
Question, do you think it would be hard or easy for someone with no programming knowledge to build one of these? Would appreicate an answer. p.s. amazing job on the watch!!
i think yes if you are good at making things becaus with the programming all you need to do is copy the code then paste it into the uploader then upload it to your arduino
Matthew Garten (author)  mitchjorg4 years ago
On the software step I have links to the software for the watch, you can run it as is or modify it to suit your needs. Check it out and see. The building part of the watch is soldering, leather cutting, and carving out a case for the screen.
soooooooooooooooooooooooooo cooooooooooooooooooooollllllllllllll!!!!!!!!!!
MaxCrave4 years ago
Can someone post links to the header pins (all), the connector Housings, and the female pins? I cant seem to find all that i need...
it is the best project ever cool
This watch looks absolutely amazing, unfortunately I'm not so great with building anything other than computers. The smaller it is, the worse it comes out. Someone should make one and put it up on ebay, I'm sure it will sell really fast. I know I would buy it. If anyone wouldn't mind making one and me throwing in extra for labor, let me know.
mikebook4 years ago
I have looking for an excuse to get an Arduino to play around with, and this may be the one. Absolutely awesome, and I can't wait until I save up enough to get the parts.
what other software could one put on this?

I would be interested in buying one depending on your answer
1-40 of 89Next »