Things used in this project

Custom parts and enclosures

SUMO Finger Holder

Code

Sumo Arduino SketchArduino
/*
 * Smart Pulse Monitor 
 * Author : Geeve George
 */
 
 
#include <Wire.h>

const int analogInPin = A0;  


int sensorValue = 0;       

int count=0;
unsigned long time1=0;  
unsigned long time2;    


#include "rgb_lcd.h"

rgb_lcd lcd;

const int colorR = 255;
const int colorG = 0;
const int colorB = 0;

void setup() {
 
  Serial.begin(9600); 
 
  lcd.begin(16, 2);
    
    lcd.setRGB(colorR, colorG, colorB);
}

void loop() {

  
  
  
  if(count==0)
  {time1=millis();
  }
  time2=millis();
  sensorValue = analogRead(analogInPin);
  
     
    
    
    
 
  if(time2>=time1+10000)
  { counter();
  }
  

  if(sensorValue <500){
    
    lcd.clear();
    
    Serial.println("Insert finger");
    lcd.setCursor(0,0);
    lcd.print("Insert Finger");
  
   
    return;
 }
                       
       
      

  
  if(sensorValue >500){
    
    lcd.clear();
  digitalWrite(Led, HIGH);
    increment();

  Serial.println(sensorValue);
 Serial.println(count);
 Serial.println(time2);
 lcd.setCursor(0,0);
 lcd.print("Counting");
    
  }
  
 
 delay(200);
    
  }

void increment()
{
  count++;

} 

    void counter()
{ 
  lcd.clear();
  count=count*6;
  Serial.print("Heart beat: ");
  Serial.print(count);
  lcd.setCursor(0,0);
  lcd.print("Heart beat:");
  lcd.setCursor(0,1);
  lcd.print(count);
  lcd.print(" BPM");
  
  
  time1=0;
  time2=0;
  count=0;
  
 delay(5000);
    

  
 
}
Processing SketchArduino
/*
 * Smart Pulse Monitor 
 * Author : Geeve George
 */
 


import processing.serial.*;
    Serial myPort;
    int xPos = 1;
    float oldHeartrateHeight = 0;

    void setup () {
    // set the window size:
    size(1000, 200);
    frameRate(30);

    // List available serial ports.
    println(Serial.list());

    // Setup which serial port to use.
    // This line might change for different computers.
    myPort = new Serial(this, "COM16", 115200);

    // set inital background:
    background(0);
    }

    void draw () {
    }

    void serialEvent (Serial myPort) {
    // read the string from the serial port.
    String inString = myPort.readStringUntil('\n');

    if (inString != null) {
    // trim off any whitespace:
    inString = trim(inString);
    // convert to an int
    println(inString);
    int currentHeartrate = int(inString);

    // draw the Heartrate BPM Graph.
    float heartrateHeight = map(currentHeartrate, 0, 1023, 0, height);
    stroke(0,255,0);
    line(xPos - 1, height - oldHeartrateHeight, xPos, height - heartrateHeight);
    oldHeartrateHeight = heartrateHeight;
    // at the edge of the screen, go back to the beginning:
    if (xPos >= width) {
    xPos = 0;
    background(0);
    } else {
    // increment the horizontal position:
    xPos++;
    }
    }
    }
AWS Lambda FunctionJavaScript
var https = require('https');

var CONFIG = {
 
  partner_token:          'API_TOKEN',
  token:                  'USER_TOKEN', 
  user_id:    "user_id",
  serial_id:   "serial_id",
 
},
DATA = {};

function logData(event, context) {
  var clickType = event.clickType;
  switch(clickType.toLowerCase()) {
   
    }
    }
    }

  var data = {
    
    user_name:            CONFIG.user_name;
    sl_no:           CONFIG.dl_no;
    ,
    datalog: {},
    order_comment:                  'The data was sucesfully stored'
  };

 
  data = JSON.stringify(data);
  
  var headers = {
    'Content-Type':   'application/json',
    'Content-Length': Buffer.byteLength(data)
  };


  var req = https.request(options, function(res) {
    console.log(res.statusCode);
    if (res.statusCode == 200 || res.statusCode == 201) {
      context.succeed(event);
    } else if (context) {
      context.fail(event);
    }

    res.on('data', function (chunk) {
      console.log("" + chunk);
    });
  });

  req.write(data);
  req.end();
}

exports.handler = logData;

Credits

Tedx zpsttf3on7
Geeve George

I work on arduino, intel edison and android development for making technology for specially abled people.

Contact

Replications

Did you replicate this project? Share it!

Love this project? Think it could be improved? Tell us what you think!

Give feedback

Comments

Similar projects you might like

Solar Power Module V2
Advanced
  • 1,656
  • 24

Full instructions

Single board to control solar charge and battery monitoring for your outdoor projects. Your project will see a perpetually charged battery.

Amazon Echo -  LED Strip
Advanced
  • 853
  • 13

Full instructions

This project allows you to use voice command to turn on/off, change color, effect of one, a range or all of an LED strip.

Battle BLE Bot 9000
Advanced
  • 105
  • 2

Work in progress

Use a front-facing light to attack your opponent's side-mounted photoresistor. When your hit points drop to 0, you are dead!

GO2
Advanced
  • 233
  • 14

Work in progress

We found an app that will check the weather and give you the best travel method to go to school or work.

Plant Assistant
Advanced
  • 425
  • 19

You can check on your plant with your smartphone to determine if it has enough water, fertillizer, sunlight, and if the air quality is good.

Plant Assistant

Team Vitronics

SmartWindow
Advanced
  • 8,517
  • 126

Full instructions

A window that tints itself according to how much light is incident upon it. You can also control the window with an iOS application!

SmartWindow

Team TINTerns

ProjectsCommunitiesTopicsContestsLiveAppsBetaFree StoreBlogAdd projectSign up / Login
Feedback