> For the complete documentation index, see [llms.txt](https://longer-vision-robot.gitbook.io/arduino-full-stack/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://longer-vision-robot.gitbook.io/arduino-full-stack/10_other_sensors/035_pulsemonitor.md).

# 10.3 Pulse Monitor

## Hardware Wiring

![Pulse Monitor](/files/-LCFEE6mO7K0CPlVb5FL)

## Sketch

The code can be found at [Examples\_Arduino - sensor-kit-for-arduino - \_035\_PulseMonitor - \_035\_PulseMonitor.ino](https://github.com/LongerVisionRobot/Examples_Arduino/blob/master/sensor-kit-for-arduino/_035_PulseMonitor/_035_PulseMonitor.ino).

```
int ledPin=13;
int sensorPin=0;

double alpha=0.75;
int period=20;
double change=0.0;

void setup()
{
  pinMode(ledPin,OUTPUT);
}

void loop()
{
  static double oldValue=0;
  static double oldChange=0;
  int rawValue=analogRead(sensorPin);
  double value=alpha*oldValue+(1-alpha)*rawValue;
  change=value-oldValue;

  digitalWrite(ledPin,(change<0.0&&oldChange>0.0));

  oldValue=value;
  oldChange=change;
  delay(period);
}
```
