Pong Watch




Here is the video of it in action.
https://youtu.be/E3OZoS39Rkk
Parts List






Display - Monochrome OLED with I2C interface. Just a few quid from eBay.
Processor - Microchip PIC 12F1840 8 pin Micro Controller from eBay for a few quid.
Battery - rechargeable Li-ion 052025 25mm x 20mm x 5mm from eBay for a few quid.
Li-ion charger - TP4056 Lithium charger module from eBay for a few quid.
Write Software and Test


I used Microchip MPLABX to write some test code in C (attached) and downloaded it via PICKIT3 to the PIC 12F1840 and hooked it up to the OLED display. The PICKIT3 at this point was also supplying power to the circuit. The I2C was bit bashed in the code, but the PIC 12F1840 has a hardware I2C built in that I should really be using, that way the internal clock doesn't need to run so fast saving on power. Unfortunately, it shares the same pins as the PICKIT3 programmer which interferes with the I2C pull ups meaning I would have to unplug the programmer to test which would result in me losing power to the device. It worked fine as it was and I decided I just wanted to get this thing built without exploring further features of the micro controller.
Downloads
Fit OLED Display Into Watch Case




Modify Board for PIC Micro Controller



Add Switches to Board

Modify Li-ion Charger Module



Fit Board Into Watch




Attach Battery





Finished Result


Final result is a Pong Watch.
On a full charge, the watch plays pong all day long with no problems, so as long as I remember to charge it every night it will never run out of charge.
The PIC clock is derived from an internal oscillator which isn't that accurate, so currently the watch is out by a few minutes each day. My next version of the watch with make use of a real time clock IC for better time keeping. I will also add some code that will allow me to play Pong against the Watch.