From 0c3cee1177aa479e0e00545d3f1b15fcb9af98ee Mon Sep 17 00:00:00 2001 From: "Gajula, Anish" Date: Thu, 20 Nov 2025 23:33:03 -0500 Subject: [PATCH] Updated the README file --- README | 71 +++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 61 insertions(+), 10 deletions(-) diff --git a/README b/README index 829c098..df54834 100644 --- a/README +++ b/README @@ -11,13 +11,64 @@ Authors: DESCRIPTION =========== - This project aims to create a prototype of a modern day smart watch/fitness - tracker. We aim to achieve the following features: - * Display interface with the uLCD-144-G2 unit - * 5-button UI - * Up, down, select to mimic crown - * Two other "hot" buttons - * Simple Pedometer with the ICM-20948 IMU - * Vibration Motor (to receive notifications) - * Read/Write stats to a (Micro) SD Card via SPI - * Battery powered by a TBD mAh Li-Po battery + Startup & Watch Face UI +Design the startup and primary display screens on the uLCD (SPI communication). +* Display a startup splash screen on boot. +* Implement a watch face with an analog clock and moving hands. +* Use RTC module to keep accurate time. + +Application Grid UI +Create a 2 × 3 grid menu interface on the uLCD showing all available watch applications. +* Use graphic assets stored on microSD card. +* Optimize loading for efficient battery use. + +Menu Navigation via Buttons +Implement menu control using hardware input buttons. +* Up, Down, Left, Right buttons → Navigate the grid apps. +* Select button → Open selected app. +* Back button → Return to previous screen. +* Support interrupts & digital input. +* Implement shortcuts from watch face (e.g., long press to open an app quickly). + +Pedometer & IMU Functionality +Use IMU for activity recognition. +* Detect basic movement for pedometer app. +* Differentiate running, walking, and sitting/standing. +* Display step count in pedometer app. + +Messaging App with Serial Communication +Enable messaging functionality between two ESP modules. +* Implement wireless communication via Bluetooth, WiFi, or ESP-NOW. +* Display incoming messages in the messaging app. +* Optional: Basic message composing via UI. + +Settings App +Allow user configuration. +* Adjust settings such as time sync, haptic intensity, brightness, etc. +* Store settings on microSD or in flash memory. + +Battery & Power Efficiency +Design to operate using a battery power source. +* Optimize firmware for low power consumption. +* Consider sleep modes and screen power-down. +* Manage charging/power regulation. + +Haptic Feedback System +Control vibration motor via PWM. +* Provide tactical feedback on app selection. +* Trigger a vibration every hour using RTC timing. + +MicroSD Storage Integration +Use microSD module for storing graphics and configuration files. +* Load UI element images from SD card. +* Store saved preferences or logs if needed. + +Threaded System Architecture +Implement the firmware using multithreading, not sequential execution. +* Separate threads for UI refresh, IMU data processing, communication, RTC update, and user input. +* Ensure safe data sharing between threads. + +RTC Integration +Accurately maintain time across operations. +* Constantly update watch face time. +* Provide time reference for vibrating every hour. -- 2.47.3