OSWatch, An Open Source Watch

If you are a soldering ninja with a flair for working with tiny parts and modules, check out the Open Source Watch a.k.a. OSWatch built by [Jonathan Cook]. His goals when starting out the project were to make it Arduino compatible, have enough memory for future applications, last a full day on one charge, use BLE as Central or Peripheral and be small in size. With some ingenuity, 3d printing and hacker skills, he was able to accomplish all of that.

OSWatch is still a work in progress and with detailed build instructions available, it is open for others to dig in and create their own versions with modifications – you just need to bring in a lot of patience to the build. The watch is built around a Microdunio Core+ board, an OLED screen, BLE112A module, Vibration motor, a couple of LEDs and Buttons, and a bunch of other parts. Take a look at the schematics here. The watch requires a 3V3, 8MHz version of the Microdunio Core+ (to ensure lower power consumption), and if that isn’t readily available, [Jonathan]  shows how to modify a 5V, 16MHz version.


A set of 3D printed parts [ZIP file] houses all of the parts in a neat bundle. A detailed sub-set of instructions by [Jonathan] shows you how to go from the raw 3D printed parts to a slick looking enclosure for the watch. This guide in itself is a great resource that shows a lot of tricks on post-processing 3D printed parts. One trick he shows is how to use a screw heated with a soldering iron to create a counter-sunk recess in the 3D printed plastic. For the Display, he used a mono OLED screen, for its easy availability and low cost. But he lists out a couple of other devices under Display Options, in case you want to use a Sharp Memory Display or a color OLED screen. On his Github repo, you will find the Arduino code as well as a rudimentary iOS app.

When you are done with most of the assembly, you end up with three layers – the ‘back’ containing the battery, charging port, vibration motor and a couple of discrete parts, the ‘middle’ containing the electronic modules, buttons, programming ports and the ‘front’ housing the display and a couple of LEDs. Put it all together and you are ready to strut your OSWatch. What we love about this project is the sheer level of build instructions and details provided by [Jonathan] that lets anyone with the right set of skills replicate his work. And if you would like to look at some more smart watch options, here’s Open Source Smart Watch , the OSHWatch  and the Zerowatch.

18 thoughts on “OSWatch, An Open Source Watch

    1. The ATmega644PA (like most micro-controllers) just needs a 32kHz crystal and 2 caps to function as RTC.

      Note: Its hard to get this right. I’ve done this before, professionally. And have chosen the wrong crystal. This design now loses up to 30sec a day. Changing the caps only made it worse. Its far easier to buy a module or get a RTCC with matching crystal.

      Its interesting that this watch is specified for ‘et-least one day’ battery life. The used micro-controller is specified for I < 2uA with a 32kHz crystal in sleep-mode. Just show the time for a few seconds when a button is pressed. Do the same for the BLE module and you can get years from a simple coin cell battery. (and no charging circuit necessary).

      1. He isn’t running just an arduino. He is supplying power to a vibration motor, oled screen, Bluetooth radio and some leds.

        Commercial smartwatches are an engineering marvel. They go so far as to incorperate wifi, arm chips, gyro sensors, light sensors, microphones, heart rate monitors, touch screen displays, and a battery with charging circuitry, all in a small package. Truth be told, this guy has a LOT of catching up to do, as all garage hackers do. We just can’t run with the giants when it comes to super miniature stuff like this. They have access to stuff we don’t. I can see the hackers building cool stuff out there that’s better than consumer sold products but when it comes to this stuff, you are better off buying than building. I’d never give up my android wear for anything I could cobble together on my wrist.

    2. The old MSP430 watch did a horrible job, but the hackers wrote software routines to compensate for the tolerance. With calibration over temperature and over time, some managed to get down to +/- 5 seconds a year. There are no reasons why this couldn’t be done if someone were to spend the effort.

      Most of the ARM chips has hardware in their RTC peripheral for trimming that add/subtract clock ticks over a preset period of time and you can trim down to ppm.

      1. The TI Chronos is still available. With a little custom firmware, it could sync time via the AP connected to a computer. Anyhow, I find mine do not drift enough over a year to require resetting the time more often than once every few months.

        The more frustrating part was looking down and seeing the CC430 thing on the screen because the battery was weak, after only having the first one for about 4 months.

      1. ^^This. No reason to re-invent an entire timekeeping subsystem when you can grab the time and date from the watch to which you are paired. I’m kicking around making a bedside clock and grabbing time data from NTP or similar is one of my bullet points.

  1. Cannot find anything special about this project really… seen a few other open source watch designs, some of which were even a tiny bit nicer and even a bit more feature packed maybe?

    Another thing – why’d you actually want an Arduino in a watch? I can’t see a point in that unless you actually add some GPIO or a ton of sensors to that, but even then… I mean, it might be nice to have some GPIO on your arm too, but… why?

    Don’t take me wrong, I mean… it’s completely awesome when people go and build stuff, but… there’s just nothing that amazing about this particular project, I guess :v

    I don’t know. I’m probably gonna get yelled at for what I said now anyway… yay. :D

    1. Why? Because they are dirt cheap and adequate for the application. If you use a SPI display you could even use a DigiSpark (ATTiny85) board. The clones are coming out of China for <$1.35 US (including shipping).
      Don't like the Arduino IDE? Then don't use it.

    2. Just because a type of project has been done before is no reason to say the one after it is any lesser or shouldn’t be shown again, they even went to the trouble of laying out all the individual parts, something a lot of the nicer builds sometimes leave out, showing only a final piece, impressive yes, helpful to hackers for replication, no.

      1. This kind of project is cool to see but like I commented above, whoever replicated it would grow tired of it and just go spend the money on a consumer ready smart watch. We, as hackers, can do amazing things at home. We just aren’t at a point where a guy in his bedroom or garage can make a smartwatch himself that he would find useful when the consumer field has skyrocketed. Pebble was one of the first endeavors that succeeded, but it wasn’t open source. They had access to resources we don’t. Maybe someone will come along and figure that part out, but this isn’t going to be it. This is only half the work. You would still need to incorperate the smartphone side of things, so you can make it more than just a timepiece.

    1. Freescale (now NXP) has some very nice WLCSP devices in theyr Kinetis family. They call them “Kinetis Mini MCU”. They have some quite powerful devices in that portfolio, up to the K22 with 120MHz Cortex M4F, but that would probably be overkill for any watch. The Cortex M0+ based devices seem to be more in line, but it would probably make more sense to use a chip that combines the wireless part (BT LE) and Cortex core into a single chip, like something from the W-Series family.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.