I'm looking to develop my own personal SmartWatch, hardware, software, and all. My problem is starting off on the hardware portion of it; more specifically what platform I should build it on. I already have an Arduino Uno (R3), nut I was hoping to find something a bit smaller. Any recommendations on what parts I should use?
What you start with is not too critical as you can develop basic concepts on any Arduino hardware and use it to drive a display of your choice for testing. This can be migrated to whatever is found suitable as the project progresses.
Important to consider are the number of I/O lines of various sorts that you need. Most AVR ICs that you are liable top use will have "some" analog input and PWM output lines. If you were going to drive a "bare" LCD you may need to use a processor with LCD drivers, but in most designs use of an existing module with eg SPI interface is probable preferable.
Most Arduinos in the UNO, Nano, Pro Mini, ... range are in reality not a lot more functionally that a processor IC, USB bridge (if needed) and voltage regulator(s). For a tidily small watch you may ultimately wish to use a bare SMD AVR IC with an Arduino boot loader code installed. You can move away from AVR ICs to other Arduino compatible systems - with some extra knowledge needed in most cases.
Here is an Internet of things hardware roundup which includes some small controllers as examples.
Panstamps offer MSP430 and ATMega328p (Arduino compatible versions).
RFDuino - from here offer some fingertip sized products with RF capability. Note that this use an ARM Cortex M0 processor, not an ATMega controller. While it is "Arduino compatible" it will not run all code that the typical UNO, Nano, ... boards run.
Why not start with your Arduino Uno, it's got lots of I/O pins, and it's a great little device to start prototyping your watch.
You could add a number of sensors/peripherals such as
- a Bluetooth module, - connect your phone
- an IMU, - detect different excercises from your wrist movement
- a tiny motor - to make the watch vibrate
- a speaker for audible notifications
- tactile buttons for switch between modes and functions of the watch
- a LCD screen, - to see the time and other data
- maybe a few LEDs as a torch function.
Once you develop your code and your happy with it, you could shrink your board accordingly, because you will then know how much I/O pins you'll need, and what voltage these sensors need to operate, and their inputs (analog vs. digital). You could even design your own PCB board with all these sensors.
You could use the Uno as a stepping stone.
One Possibility is that you could just use an avr chip without the arduino breakout, but still include the arduino bootloader, and this way it would be easier for you to isolate your preferred features, however with this method you would be sacrificing some safety without short circuit protection, and it would be a bit more work to upload, but this is also the cheapest.
I have quite a few nanos / mini pros that I got as plain avr boards. they are great little things.
I also got a few minimus avr - if you want to venture outside of arduino. like the at90 usb stick / key, they are little boards that are 100% self-contained. they are ideal to play with on long flights.