All Projects → SMotlaq → open-watch

SMotlaq / open-watch

Licence: MIT license
An open-source handmade smartwatch. All of the codes, PCBs and schematics are available. ⌚

Programming Languages

c
50402 projects - #5 most used programming language
Makefile
30231 projects
HTML
75241 projects
assembly
5116 projects

Projects that are alternatives of or similar to open-watch

arm-hard-fault-handler
What to do when Hard fault hits? Debugger and error reporter solution for ARM Cortex M3 and M4.
Stars: ✭ 32 (-8.57%)
Mutual labels:  arm, stm32
PrntrBoardV2
32-bit 3D Printer controller board using STM32F407 and replaceable TMC2660/2209 stepper drivers.
Stars: ✭ 31 (-11.43%)
Mutual labels:  arm, stm32
Awesome-Retro-Docs
A curated collection of technical documentation for Arcades, Handhelds, Consoles, Computers and MCU’s.
Stars: ✭ 128 (+265.71%)
Mutual labels:  arm, pcb
Grbl Advanced
Grbl-Advanced is a no-compromise, high performance, low cost alternative for CNC milling. This version of Grbl runs on a STM32F411RE / STM32F446RE Nucleo Board. Now with backlash compensation, multi-axis and Tool Table support!
Stars: ✭ 182 (+420%)
Mutual labels:  arm, stm32
TMcuSys
🍆 STM32平台uCos与emWin练习项目。图片、音乐、视频、游戏、IAP运行器。
Stars: ✭ 25 (-28.57%)
Mutual labels:  arm, stm32
Dirtyjtag
JTAG probe firmware for STM32F1
Stars: ✭ 183 (+422.86%)
Mutual labels:  arm, stm32
stm32f103xx
DEPRECATED
Stars: ✭ 31 (-11.43%)
Mutual labels:  arm, stm32
Jesfs
Jo's Embedded Serial File System (for Standard Serial NOR-Flash)
Stars: ✭ 104 (+197.14%)
Mutual labels:  arm, bluetooth
JBC SolderingStation
JBC_SolderingStation
Stars: ✭ 63 (+80%)
Mutual labels:  arm, stm32
drone-stm32-map
STM32 peripheral mappings for Drone, an Embedded Operating System.
Stars: ✭ 16 (-54.29%)
Mutual labels:  arm, stm32
Xpcc
DEPRECATED, use our successor library https://modm.io instead
Stars: ✭ 177 (+405.71%)
Mutual labels:  arm, stm32
WolfieMouse
IEEE Reion 1 Micromouse competition.
Stars: ✭ 29 (-17.14%)
Mutual labels:  stm32, pcb
Stm32 graphics display drivers
STM32 LCD drivers (currently: spi(dma), gpio, fsmc(dma), st7735, st7783, ili9325, ili9328, ili9341, ili9486, ili9488, hx8347g)
Stars: ✭ 151 (+331.43%)
Mutual labels:  arm, stm32
Frosted
Frosted: Free POSIX OS for tiny embedded devices
Stars: ✭ 194 (+454.29%)
Mutual labels:  arm, stm32
Arm Cmake Toolchains
CMake toolchain configurations for ARM
Stars: ✭ 148 (+322.86%)
Mutual labels:  arm, stm32
STM32Primer2 GNSS Tracker
GNSS Tracker For STM32 Primer2
Stars: ✭ 24 (-31.43%)
Mutual labels:  arm, stm32
Stm32l4xx Hal
A Hardware abstraction layer for the stm32l432xx series chips written in rust.
Stars: ✭ 65 (+85.71%)
Mutual labels:  arm, stm32
Stm32f0 arm
STM32 Cortex-M0 course
Stars: ✭ 72 (+105.71%)
Mutual labels:  arm, stm32
stm32 template
这是一个stm32f103 和 stm32f407单片机在Unix、Linux等系统下使用的模版,可以使用make编译、下载、调试。
Stars: ✭ 48 (+37.14%)
Mutual labels:  arm, stm32
tinyPulsePPG
ATTiny85 Pulse Oximeter with Photoplethysmogram (PPG) display
Stars: ✭ 105 (+200%)
Mutual labels:  pulse-oximeter, max30102

Contributors Forks Stargazers Issues MIT License

Table of Contents
  1. About The Project
  2. Donation
  3. Components
  4. Roadmap
  5. Pictures
  6. Results
  7. License
  8. Refereces
  9. Contact

About The Project

Welcome to Open-Watch ✋🏻😃 a wearable device for health monitoring and fitness tracking.

Special thanks to PCBWay for sponsoring us on this open-source project and providing these awesome 4-layer PCBs! Open-Watch is an open-source smartwatch project developed for our B.Sc. final thesis. This smartwatch can measure the linear acceleration of your hand, rotational speed, heart rate, and SpO2 (oxygen saturation). All of these data will be processed by an STM32 processor with an ARM Cortex-M core. You can find these essential components here.

MPU6050 was used for IMU purposes. We use the Kalman filter to reduce the noise effect and extract clean data from the sensor (3-axis linear acceleration, 3-axis rotational velocity, and 3-axis rotation angle).

MAX30102 is the sensor used for health care purposes. We just read raw data and devolve the processes to the smartphone.

Open-watch will send these collected data to a smartphone via a Bluetooth module. On the smartphone side, an Android app reads the data from Bluetooth and processes them. For health care applications like heart rate and SpO2 analysis, we use ML-based algorithms to extract these parameters from raw data read from the pulse-oximeter sensor. In this section a real-time algorithm for analysis of photoplethysmography signal (PPG) for measurement of SpO2 will be implemented.

The final valuable data will be shown on a smartphone as well as the smartwatch screen.

(back to top)

Donation

Do you want to support us in this project?

Buy me a Coffee

(back to top)

Components

(back to top)

Roadmap

  • Hardware design
    • Microcontroller
    • Vibration motor
    • Bluetooth
    • Buzzer
    • Touch keys
    • Charger
    • PPG sensor
    • MPU6050
  • PCB design
  • PCB Ordering
  • Body design
  • 3D print
  • Soldeing
  • Firmware programming
    • RTC
    • Bluetooth commands
    • Vibration waves
    • Buzzer
    • OLED
      • UI/UX
    • Touch buttons
    • Battery level indicator
    • Power saving
    • MPU6050
      • Get raw data
      • Kalman filter
      • Movement detection
    • PPG sensor
      • Get raw data
      • Transfer data using Bluetooth
  • Android programming
    • Get blutooth data
    • UI/UX
    • PPG data analysis
      • Heartbeat
      • SpO2
  • Assembling
  • Final test 😎

See the open issues for a full list of proposed features (and known issues).

(back to top)

Pictures

Overview

PCB - 2D

PCB - 3D

PCB - Real

(back to top)

Results

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Refereces

Dataset:

MIMIC-III Database (https://mimic.mit.edu)

[1] Johnson, A., Pollard, T., & Mark, R. (2016). MIMIC-III Clinical Database (version 1.4). PhysioNet. https://doi.org/10.13026/C2XW26.

[2] Moody, B., Moody, G., Villarroel, M., Clifford, G., & Silva, I. (2020). MIMIC-III Waveform Database (version 1.0). PhysioNet. https://doi.org/10.13026/c2607m

[3] Kemp, J., Zhang, K., & Dai, A. (2020). MIMIC-III - SequenceExamples for TensorFlow modeling (version1.0.0). PhysioNet. https://doi.org/10.13026/n2v5-5b32.

Main references:

[1] Kiyasseh et al, CLOCS: Contrastive learning of cardiac signals across space, time, and patients, In Proc. ICML 2021

[2] Torres-Soto, J., Ashley, E.A. Multi-task deep learning for cardiac rhythm detection in wearable devices. npj Digit. Med. 3, 116 (2020). https://doi.org/10.1038/s41746-020-00320-4

[3] El Hajj C, Kyriacou P.A. Cuffless blood pressure estimation from PPG signals and its derivatives using deep learning models, Biomedical Signal Processing and Control. 70 (2021) https://doi.org/10.1016/j.bspc.2021.102984

[4] Solà, J., & Delgado-Gonzalo, R. (2019). The Handbook of Cuffless Blood Pressure Monitoring: A Practical Guide for Clinicians, Researchers, and Engineers. The Handbook of Cuffless Blood Pressure Monitoring. https://doi.org/10.1007/978-3-030-24701-0

(back to top)

Contact

Salman AmiMotlaq - @SMotlaq - [email protected]

Seyedmohammadsaleh Mirzatabatabaei - @seyedsaleh - [email protected]

Project Link: https://github.com/SMotlaq/open-watch

(back to top)


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].