Most IT companies participate in the race to grab people’s wrist. A smart watch becomes the most significant item in a wearable device category. You can easily find this mood in this link, there are tons of smart watches.

But here is a simple way to evaluate smart watch’s future on your own. Make it! With Arduino micro-processor and Android, I made a simple smart watch and named it “Retro Watch“. You can do this too!

Retro Watch is an open source project to let you make a smart watch based on Arduino and Android. This text explains about modules, blueprints, how to install and use the Arduino and the Android source codes step by step.

Release note
Updated (2015.01.12) : RetroWatch supports u8glib. Now you can use various kind of OLED(or else) as you want and it consumes less memory(RAM). Instead it’s liitle slow at screen refresh. You can find updated sources at GitHub.

Updated (2015.08.27) : Deba168 made quick guide video!! This guide shows most easy way to make RetroWatch!! https://youtu.be/01Ld2wzYHKo

Step 1: Overall Structure

RetroWatch is a simple system that is used a hardware platform called Arduino, which is intended for artists, designers, and hobbyst, and an Android app. The overall structure is in the picture above.

Imagine a very small computer that you can wear on your wrist. Arduino board is a micro-processor and a storage, and there’s only one input method : a button. Bluetooth is to communicate with other devices, and the battery would be necessary for power. I’ll install an Android app for collecting or editing various RSS and system information and for notification on the Android device.

too many code errors...
<p>Arduino: 1.6.12 (Windows 7), Board: &quot;Arduino Leonardo&quot;</p><p>In file included from C:\Users\unsc\Downloads\retrowatch-master\retrowatch-master\RetroWatch_Arduino\RetroWatchArduino_spi_no_button\RetroWatchArduino_spi_no_button.ino:36:0:</p><p>bitmap.h:1269: error: variable 'bitmap_array' must be const in order to be put into read-only section by means of '__attribute__((progmem))'</p><p> PROGMEM const unsigned char* bitmap_array[] = {</p><p> ^</p><p>RetroWatchArduino_spi_no_button:130: error: variable 'weekString' must be const in order to be put into read-only section by means of '__attribute__((progmem))'</p><p> PROGMEM const char* weekString[] = {&quot;&quot;, &quot;Sun&quot;, &quot;Mon&quot;, &quot;Tue&quot;, &quot;Wed&quot;, &quot;Thu&quot;, &quot;Fri&quot;, &quot;Sat&quot;};</p><p> ^</p><p>RetroWatchArduino_spi_no_button:131: error: variable 'ampmString' must be const in order to be put into read-only section by means of '__attribute__((progmem))'</p><p> PROGMEM const char* ampmString[] = {&quot;AM&quot;, &quot;PM&quot;};</p><p> ^</p><p>exit status 1</p><p>variable 'bitmap_array' must be const in order to be put into read-only section by means of '__attribute__((progmem))'</p><p>This report would have more information with</p><p>&quot;Show verbose output during compilation&quot;</p><p>option enabled in File -&gt; Preferences.</p>
<p>This [exact] project here is true inspiration and in my opinion, a &quot;self-gratitude&quot; project. Plus I believe it saves money instead of buying a $300 ASUS ZenWatch for an Android phone/tablet.</p>
<p>hey hi..........you are just awesome..<br>i also want to make a smartwatch like this.but i only have a nokia 5110 display......................can i use nokia 5110 instead of OLED display???.....................IF YES THEN PLEASE SHARE TJE WIRING OF NOKIA 5110 DISPLAY WITH ARDUINO PRO MINI.AND ALSO SHAE THE CODE FOR IT..............PLEASE REPLY</p><p>I WANTED TO MAKE THIS PROJECT FROM A LONG TIME...</p>
<p>Having some troubles with my build.</p><p>Hi, I saw your Retro Watch and decided to build one too.</p>
<p>Hii,</p><p> I am making a similar project here can u share more details. I am looking for similar parts. </p>
<p>Hi,</p><p>thanks for the cudos.</p><p>I used a Teensy LC because of the speed and memory, A HC05 bluetooth assy and an adafruit 1.8&quot; tft display wit uSD card reader on board.</p><p>have fun making it, it is a nice and simple watch to make.</p><p>the code is basically the code from GodsTale but adapted for the tft screen.</p><p>Regards.</p>
<p>wow is there anychance you could share the code?</p>
<p>0000 or 1234</p>
<p>I have an error when I wan't to Verfy it.</p><p>the error is this:</p><p>Arduino: 1.6.7 (Windows 10), Board: &quot;Arduino/Genuino Uno&quot;</p><p>RetroWatchArduino_spi_no_button:54: error: #error (&quot;Height incorrect, please fix Adafruit_SSD1306.h!&quot;);</p><p> #error(&quot;Height incorrect, please fix Adafruit_SSD1306.h!&quot;);</p><p> ^</p><p>exit status 1</p><p>#error (&quot;Height incorrect, please fix Adafruit_SSD1306.h!&quot;);</p><p> This report would have more information with</p><p> &quot;Show verbose output during compilation&quot;</p><p> enabled in File &gt; Preferences.</p>
<p>Look at the location of the message in the code. When a requirement is not met, it shows this message. Find the reqirement and sort it out from there</p>
<p>i got the same error but cant get it to work on 1.0.6</p>
<p>i decided to try u8glib since its better.Id didn't work on 1.6.7 but worked on 1.0.6.</p>
<p>Hi guys.I used ide 1.0.6 and this probleme solved(:</p>
<p>I'm having trouble getting the code from GitHub, do you have any other ways to get the code or tips to getting the code off of GitHub</p>
My id gauravbansal03@outlook.com
I will try to make it but can you please tell me all of the hardwares you used and can send me the coding which doesn't need to be modified.
<p>is it also possible for it to be touch screen</p>
<p>could you email me im very confused</p>
<p>can you plz mail me the code used in this project </p><p>my email is hushinpahuja4@gmail.com</p><p>i will be very thank full to you </p>
<p>where do you connect the battery</p>
<p>Would this oled screen work</p><p>https://www.amazon.com/Diymall-Serial-128x64-Display-Arduino/dp/B00O2LKEW2/ref=pd_sim_147_39?ie=UTF8&amp;psc=1&amp;refRID=EAZJGPZ007XDGFMVXT5C</p>
I just finished making this. It looks great, but i am trying to figure out why some notifications will not go away in the app and whether i can change the auto update from 30 mins to 1 min or even 30 sec. I have never developed an android app so any help is welcome thanks.
<p>I'm having problems with the coding. Can any one help me correct the error with the bitmap? I'm unable to compile it due to a lot stray # and expected errors. The other problem is with the U8glib.h in which it says the directory cant be found. It is in my Arduino library though. Any help would be appreciated.</p><p>This report would have more information with<br> &quot;Show verbose output during compilation&quot;<br> enabled in File &gt; Preferences.<br>Arduino: 1.0.6 (Windows NT (unknown)), Board: &quot;Arduino Uno&quot;<br>In file included from sketch_jul31c.ino:3:<br>C:\Users\Francisco\Documents\Arduino\libraries\RetroWatch/bitmap.h:58: error: stray '#' in program<br>C:\Users\Francisco\Documents\Arduino\libraries\RetroWatch/bitmap.h:58: error: stray '##' in program<br>C:\Users\Francisco\Documents\Arduino\libraries\RetroWatch/bitmap.h:62: error: stray '#' in program<br>sketch_jul31c.ino:6:21: error: U8glib.h: No such file or directory<br>C:\Users\Francisco\Documents\Arduino\libraries\RetroWatch/bitmap.h:2: error: expected `}' before numeric constant<br>C:\Users\Francisco\Documents\Arduino\libraries\RetroWatch/bitmap.h:2: error: expected ',' or ';' before numeric constant<br>C:\Users\Francisco\Documents\Arduino\libraries\RetroWatch/bitmap.h:26: error: expected declaration before '}' token</p>
<p>I have some problems. I have a oled-display with 128x32 pixels.</p><p>What do I have to change in the code to go wright?</p><p>Thank you for the answer.</p>
<p>thanks admin http://worldfree4.org</p>
<p>I am using the u8glid_no_button program for Retrowatch and I am having a problem when I try to compile the code. It says that there is an undefined reference to U8g and U8glib. Im not sure if I didnt install the graphics library correctly or if there is something else I am forgetting to do. Any ideas on what could fix this?</p>
This piece of code produces an error when it is verified<br><br>PROGMEM const char* weekString[] = {&quot;&quot;, &quot;Sun&quot;, &quot;Mon&quot;, &quot;Tue&quot;, &quot;Wed&quot;, &quot;Thu&quot;, &quot;Fri&quot;, &quot;Sat&quot;};<br><br><br>This error occurs when the program is verified<br><br>exit status 1 <br>variable 'weekString' must be const in order to be put into read-only section by means of '__attribute__((progmem))'<br><br>why does this happen? As the string is already defined as a const and how can I fix this?<br>Thanks for any help
<p>Refer to below link:</p><p><a href="https://github.com/arduino/Arduino/wiki/1.6-Frequently-Asked-Questions#errors-related-to-avr-progmem-changes">https://github.com/arduino/Arduino/wiki/1.6-Freque...</a></p><p>By using the Arduino IDE 1.0.6, you can solve this problem</p>
<p>iam using ardiuno 1.6.10 ide</p>
<p>i cant understand what should i write in place of attribut -program can you please tell me i tried but error occure</p>
Thanks for the help I can now upload the program to my device.<br><br>Now I have another problem, when I power on the device the adafruit logo appears then it switches to the 'retro watch arduino v1.0' screen and just freezes there.<br><br>When I uploaded the program it did show an error where there wasn't enough memory and there could be stability issues. I have tried leaving it on for over 30 minutes and nothing has happened, any help would be appreciated, thanks.
<p>BRO can you tell me how you solved because i tried but nothing is happening please</p>
<p>Check the button pin. If you are not attached button (and you are using button enabled sketch) watch stops after initialization process. And check the Arduino-BT serial connection also.</p>
The 'no button' program shows an SPI error when I verify it, I changed to the 'no button SPI' program. This program will upload but the screen does not display anything. Thanks for any help.
<p>yes bro same prbleme with me</p>
<p>can we use nano with the same code</p>
can we use Nokia 5110 to this project if yes do we have to change the ardiuno code
Would this be a good first project? And if so, would this be possible to do with for example this: http://www.dfrobot.com/index.php?route=product/product&amp;product_id=1122#.VypWZPlRXqA and a display like this: https://www.adafruit.com/products/1393<br><br><br>Thanks :)
<p>Not a very good first project. But anyway, I recommend the RFDuino DIP board instead. It has a 16MHz ARM Cortex M0. Just desolder the female pin headers. That screen is real nice (like Pebble). I just got an OLED from China a year ago.</p>
<p>I tried connecting the pro mini to the UART module but all I got was a faint red light on the pro mini. Any ideas what might be wrong? </p>
<p>Is there a app on the app store for Apple for this. Please make one if there isn't :)</p>
<p>Sorry iPhone is not available now.(and for a long time)</p>
<p>Ok that's fine. My sister has a Samsung phone so i'll use that. :)</p>
<p>Does it matter where you put the wires on the bread board? </p>
<p>How would i compile apk?</p>
<p>You have to setup the Eclipse IDE + Android SDK. Find guide by searching google.</p>
<p>thank you very much!</p>
<p>can arduino uno be used .?</p>

About This Instructable




Bio: This, Too, Shall Pass Away
More by GodsTale:Arduino Network Game Social Bug: bluetooth dancing robot Make wireless charging mouse 
Add instructable to: