The goal of this project is to create a smartwatch that is easy to reprogram and use as an IOT controller or just as a DIY fashion statement. Serial communication and charging are handled on-board through a single micro-usb connector without any external dock. The watch is built around the ESP32 WROOM module and is programable using the Espressif IDF or Arduino IDE. Using the ESP32 allows for the user to develop their software while leveraging the open-source libraries and examples that are available online for quick development.
This project involves hardware, firmware, and software with a little bit of 3D printing thrown in. With the firmware developed for this project the watch is able to read status bar notifications, song names played on spotify (and control spotify), current time, and calendar events for the day. This functionality is achieved through the android companion app which sends data to the watch over BLE.
This project is on going and has already gone through quite a few revisions to get to where it is now (it started on 10/30/2019). This project is open source, hardware design files (including a current PDF schematic), 3D printable CAD files, and firmware can be found here (https://github.com/Bellafaire/ESP32-Smart-Watch).
The companion android app has been split off to its own project repo and can be found here: https://github.com/Bellafaire/Android-Companion-App-For-BLE-Devices along with a simple example program to interface an ESP32 with it over BLE
In addition to the longer-format logs on this project where I talk about progress more in depth and elements of the design I've also created smaller updates in video format which run parallel to the project logs. These project logs are intended to be a high-level overview of progress on the project and a demonstration of the features in action. All the video logs for this project are embedded below: