Close Menu
  • Articles
    • Learn Electronics
    • Product Review
    • Tech Articles
  • Electronics Circuits
    • 555 Timer Projects
    • Op-Amp Circuits
    • Power Electronics
  • Microcontrollers
    • Arduino Projects
    • STM32 Projects
    • AMB82-Mini IoT AI Camera
    • BLE Projects
  • IoT Projects
    • ESP8266 Projects
    • ESP32 Projects
    • ESP32 MicroPython
    • ESP32-CAM Projects
    • LoRa/LoRaWAN Projects
  • Raspberry Pi
    • Raspberry Pi Projects
    • Raspberry Pi Pico Projects
    • Raspberry Pi Pico W Projects
  • Electronics Calculator
Facebook X (Twitter) Instagram
  • About Us
  • Disclaimer
  • Privacy Policy
  • Contact Us
  • Advertise With Us
Facebook X (Twitter) Instagram Pinterest YouTube LinkedIn
How To Electronics
  • Articles
    • Learn Electronics
    • Product Review
    • Tech Articles
  • Electronics Circuits
    • 555 Timer Projects
    • Op-Amp Circuits
    • Power Electronics
  • Microcontrollers
    • Arduino Projects
    • STM32 Projects
    • AMB82-Mini IoT AI Camera
    • BLE Projects
  • IoT Projects
    • ESP8266 Projects
    • ESP32 Projects
    • ESP32 MicroPython
    • ESP32-CAM Projects
    • LoRa/LoRaWAN Projects
  • Raspberry Pi
    • Raspberry Pi Projects
    • Raspberry Pi Pico Projects
    • Raspberry Pi Pico W Projects
  • Electronics Calculator
How To Electronics
Home » Blood Oxygen & Heart Rate Monitor with MAX30100 & Arduino
Arduino Projects

Blood Oxygen & Heart Rate Monitor with MAX30100 & Arduino

Mamtaz AlamBy Mamtaz AlamUpdated:February 9, 202439 Comments7 Mins Read
Share Facebook Twitter LinkedIn Telegram Reddit WhatsApp
MAX30100 Pulse Oximeter Arduino
Share
Facebook Twitter LinkedIn Pinterest Email Reddit Telegram WhatsApp

Blood Oxygen & Heart Rate Monitor with MAX30100 Pulse Oximeter & Arduino

In this project we will make a device that can measure Blood Oxygen & Heart Rate using MAX30100 Pulse Oximeter & Arduino. The blood Oxygen Concentration termed as SpO2 is measured in Percentage and Heart Beat/Pulse Rate is measured in BPM. The MAX30100 is a Pulse Oximetry and heart rate monitor sensor solution. You can also use MAX30102 which is an upgraded version of MAX30100.

We will display the SpO2 and BPM value in 0.96″ OLED Display. With each beat, the display value is changed in the OLED screen. By using Bluetooth module HC-05/HC-06 (operating in a slave mode), we can send data to the android app wirelessly and monitor the data on the app as well as keep a track record of the data in text format. In this way, we can send the data read from the device to another device or to the Internet. This wearable device can be used by athletes to monitor their heart rate and blood oxygen levels during a workout.

You can also go through the basic & advanced version of this project:
1. Interfacing MAX30100 Pulse Oximeter Sensor with Arduino
2. MAX30100 Pulse Oximeter with ESP8266 on Blynk IoT App




Bill of Materials

Following are the components required for this project, i.e Blood Oxygen & Heart Rate Monitor with MAX30100 Pulse Oximeter & Arduino. All the components can be purchased from Amazon. The components name as well as purchased link is given below.

S.N.Components NameQuantityPurchase Links
1Arduino Nano Board1Amazon | AliExpress
2MAX30100 Pulse Oximeter Sensor1Amazon | AliExpress
40.96" I2C OLED Display1Amazon | AliExpress
5HC-05 Bluetooth Module1Amazon | AliExpress
6Connecting Wires10Amazon | AliExpress
7Breadboard1Amazon | AliExpress

How does Pulse Oximeter Works?

Oxygen enters the lungs and then is passed on into blood. The blood carries oxygen to the various organs in our body. The main way oxygen is carried in our blood is by means of hemoglobin. During a pulse oximetry reading, a small clamp-like device is placed on a finger, earlobe, or toe.

working of Pulse Oximeter

Small beams of light pass through the blood in the finger, measuring the amount of oxygen. It does this by measuring changes in light absorption in oxygenated or deoxygenated blood.

working of Pulse Oximeter


MAX30100 Pulse Oximeter

The sensor is an integrated pulse oximetry and heart-rate monitor sensor solution. It combines two LED’s, a photo detector, optimized optics, and low-noise analog signal processing to detect pulse and heart-rate signals. It operates from 1.8V and 3.3V power supplies and can be powered down through software with negligible standby current, permitting the power supply to remain connected at all times.

Features

C++
1
2
3
1. Consumes very low power (operates from 1.8V and 3.3V)
2. Ultra-Low Shutdown Current (0.7µA, typ)
3. Fast Data Output Capability


Working of MAX30100 Pulse Oximeter and Heart-Rate Sensor

The device has two LEDs, one emitting red light, another emitting infrared light. For pulse rate, only the infrared light is needed. Both the red light and infrared light is used to measure oxygen levels in the blood.

When the heart pumps blood, there is an increase in oxygenated blood as a result of having more blood. As the heart relaxes, the volume of oxygenated blood also decreases. By knowing the time between the increase and decrease of oxygenated blood, the pulse rate is determined.

It turns out, oxygenated blood absorbs more infrared light and passes more red light while deoxygenated blood absorbs red light and passes more infrared light. This is the main function of the MAX30100: it reads the absorption levels for both light sources and stored them in a buffer that can be read via I2C.


Circuit Diagram & Connections

The circuit diagram & connection for interfacing MAX30100 Pulse Oximeter with Arduino along with HC-05 Bluetooth Module & OLED Display is given below.

Interfacing MAX30100 Pulse Oximeter with Arduino

MAX30100 & OLED Display works on I2C Communication Protocol. So its SDA & SCL pin is connected to I2C pin of Arduino, i.e A4 & A5. Similarly Bluetooth module is an UART module and need to be connected to Tx & Rx pins of Arduino.


PCB Designing for Portable Pulse Oximeter

The PCB for Portable Pulse Oximeter has been designed in EasyEDA online PCB making tool. Below is the front view and Back View of the PCB.

MAX30100 PCB

The Gerber File for the PCB is given below. You can simply download the Gerber File and order the PCB from ALLPCB at 1$ only.

Download: Gerber File MAX301000 Pulse Oximeter Arduino




PCB Ordering, Soldering & Mounting

You can use this Gerber file to order high quality PCB for this project. To do that visit the ALLPCB official website by clicking here: https://www.allpcb.com/.

You can now upload the Gerber File by choosing the Quote Now option. From these options, you can choose the Material Type, Dimensions, Quantity, Thickness, Solder Mask Color and other required parameters.

After filling all details, select your country and shipping method. Finally you can place the order.

So after a week I got the PCB from ALLPCB. The PCB quality is good and excellent.

After that you can solder all the necessary components as per circuit diagram and make the final product ready.


The Android App

The Pulse Rate and Blood Oxygen concentration that is displayed on OLED Display can be transferred wirelessly to Android device using Andorid App over a Bluetooth Connection.

This App has been designed using MIT App Inventor. The link for both the files, i.e APK files and .aia files is given below. You can edit modify the Android app on MIT App inventor after importing .aia file. The app can be installed on any Android device and can be connected to HC-05 Bluetooth Module.

Download Android App: Download

Download .aia File: Download


Source Code/Program

The source Code/program for interfacing MAX30100 Pulse Oximter and Heart Rate Sensor with Arduino is given below. Copy this code and upload it to Arduino Board.

The library files can be downloaded from here:
1. Arduino MAX30100 Library
2. OkaOLED Library
3. Adafruit GFX Library

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <Wire.h>
#include "MAX30100_PulseOximeter.h"
 
#include "Wire.h"
#include "Adafruit_GFX.h"
#include "OakOLED.h"
#define REPORTING_PERIOD_MS 1000
OakOLED oled;
 
PulseOximeter pox;
 
uint32_t tsLastReport = 0;
 
const unsigned char bitmap [] PROGMEM=
{
0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x18, 0x00, 0x0f, 0xe0, 0x7f, 0x00, 0x3f, 0xf9, 0xff, 0xc0,
0x7f, 0xf9, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xf7, 0xff, 0xf0, 0xff, 0xe7, 0xff, 0xf0, 0xff, 0xe7, 0xff, 0xf0, 0x7f, 0xdb, 0xff, 0xe0,
0x7f, 0x9b, 0xff, 0xe0, 0x00, 0x3b, 0xc0, 0x00, 0x3f, 0xf9, 0x9f, 0xc0, 0x3f, 0xfd, 0xbf, 0xc0,
0x1f, 0xfd, 0xbf, 0x80, 0x0f, 0xfd, 0x7f, 0x00, 0x07, 0xfe, 0x7e, 0x00, 0x03, 0xfe, 0xfc, 0x00,
0x01, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xf0, 0x00, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x3f, 0xc0, 0x00,
0x00, 0x0f, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
 
void onBeatDetected()
{
Serial.println("Beat!");
oled.drawBitmap( 60, 20, bitmap, 28, 28, 1);
oled.display();
}
 
void setup()
{
Serial.begin(9600);
 
oled.begin();
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
 
oled.println("Initializing pulse oximeter..");
oled.display();
Serial.print("Initializing pulse oximeter..");
 
if (!pox.begin()) {
Serial.println("FAILED");
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("FAILED");
oled.display();
for(;;);
} else {
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("SUCCESS");
oled.display();
Serial.println("SUCCESS");
}
pox.setOnBeatDetectedCallback(onBeatDetected);
}
 
void loop()
{
pox.update();
 
if (millis() - tsLastReport > REPORTING_PERIOD_MS) {
Serial.print("Heart BPM:");
Serial.print(pox.getHeartRate());
Serial.print("-----");
Serial.print("Oxygen Percent:");
Serial.print(pox.getSpO2());
Serial.println("\n");
oled.clearDisplay();
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0,16);
oled.println(pox.getHeartRate());
 
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 0);
oled.println("Heart BPM");
 
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0, 30);
oled.println("Spo2");
 
oled.setTextSize(1);
oled.setTextColor(1);
oled.setCursor(0,45);
oled.println(pox.getSpO2());
oled.display();
tsLastReport = millis();
}
}



MAX30100 Arduino Working Project

The project is tested both on the breadboard as well as in PCB Assembled board. Initially, when no finger is placed over MAX30100, the SPO2 & BPM value both are zero. When the finger is placed, the BPM & SPO2 values start appearing. But the value shown is not correct initially, then after a few seconds, the OLED Display starts showing the correct value.

Here is a working demonstration of the device working when assembled on breadboard.

MAX30100 Blood Oxygen Heart Rate

Similarly the same thing is with the PCB portable device it also works super fine and we got the same results.

MAX30100 Arduino


MAX30100 Not Working Troubleshooting

If you purchased the MAX30100 Module shown below, then it might not work as it has a serious design problem. The MAX30100 IC uses 1.8V for VDD and this particular module uses two regulators to achieve this voltage. Nothing wrong with that. However, if you look closely, the SCL and SDA pins are pulled-up via the 4.7k ohm resistors to 1.8V! This means it won’t work well with microcontrollers with higher logic levels.

1st Method

The solution is to remove the resistors from the board (encircled on the image below) and attach external 4.7k ohms resistors to SDA, SCL and INT Pin instead.

After removing all 4.7K Resistor, connect the INT, SDA, SCL pin to the external 4.7K Pull up resistor as shown in the image below.

MAX30100 Not Working Fix

2nd Method

Similarly you can use the second method to fix this issue if you don’t like the first one. It is enough to cut the path in the place of the red cross and make a jumper as shown by the yellow line. The jumper does not need an insulated wire. You can take a tinned strand from the stranded wire. The board is covered with a protective mask and there is no short circuit to the copper pour.


Video Demonstration & Explanation

Blood Oxygen & Heart Rate Measurement with MAX30100/02 Pulse Oximeter & Arduino
Watch this video on YouTube.

Share. Facebook Twitter Pinterest LinkedIn Tumblr Email Reddit Telegram WhatsApp
Previous ArticleInterfacing GT511C3 Fingerprint Sensor (FPS) with Arduino
Next Article Interfacing LoRa SX1276 with STM32 Microcontroller | LR1276-915MHz

Related Posts

DC Energy Meter using Arduino

Build a DC Energy Meter using Arduino – 32V/5A

Updated:August 26, 20252K
Interfacing ADXL375 Accelerometer with Arduino

Interfacing ADXL375 Accelerometer with Arduino (±200g)

Updated:June 28, 2025
PZEM-004T Arduino Energy Meter

DIY AC Energy Meter using PZEM-004T & Arduino

Updated:March 6, 20258K
Interfacing BMI160 Accelerometer & Gyroscope with Arduino

Interfacing BMI160 Accelerometer & Gyroscope with Arduino

Updated:February 2, 20259K
Password Based Door Lock Security System Using Arduino & Keypad

Password Based Door Lock Security System Using Arduino & Keypad

Updated:February 2, 20252436K
Earthquake Detector Alarm with with Accelerometer & Arduino

Earthquake Detector Alarm with Accelerometer & Arduino

Updated:February 2, 2025661K
View 39 Comments

39 Comments

  1. MK Tech on August 17, 2019 8:20 PM

    good tutorial can you describe how to fix max 30100 resister

    Reply
  2. Nilesh on October 28, 2019 5:09 PM

    error help

    Arduino: 1.8.10 (Windows 10), Board: “Arduino/Genuino Uno”

    Sketch uses 15040 bytes (46%) of program storage space. Maximum is 32256 bytes.
    Global variables use 1834 bytes (89%) of dynamic memory, leaving 214 bytes for local variables. Maximum is 2048 bytes.
    Low memory available, stability problems may occur.
    avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x45
    avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xfc
    avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x45
    avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x7c
    avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x11
    avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xfc
    avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x45
    avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x1c
    avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x11
    avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x3c
    An error occurred while uploading the sketch

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    Reply
  3. Emanuele Pea on January 7, 2020 3:36 PM

    Please help me, I have the MAX 30102 sensor and with this code it doesn’t work correctly. What changes I have to do?

    Reply
  4. siwar barkho on February 13, 2020 4:59 AM

    there is a problem with code and same tings with sensor when i am trying to just test the Max 30100 tell you this error Not used: C:\Users\User\Documents\Arduino\libraries\MAX30100lib
    exit status 1
    Error compiling for board Arduino Uno.

    Reply
  5. Stephen on February 28, 2020 5:49 PM

    hi If i was to do this with the Arduino Nano 33 BLE

    how would i alter code

    Reply
  6. Anjz on March 27, 2020 2:25 PM

    Arduino: 1.8.10 (Windows 10), Board: “Arduino Nano, ATmega328P”

    Sketch uses 15052 bytes (48%) of program storage space. Maximum is 30720 bytes.
    Global variables use 1846 bytes (90%) of dynamic memory, leaving 202 bytes for local variables. Maximum is 2048 bytes.
    Low memory available, stability problems may occur.
    avrdude: loadaddr(): (b) protocol error, expect=0x14, resp=0xfc
    avrdude: loadaddr(): (b) protocol error, expect=0x14, resp=0xfc
    avrdude: loadaddr(): (b) protocol error, expect=0x14, resp=0xfc

    avrdude: stk500_paged_load(): (a) protocol error, expect=0x10, resp=0x00
    avrdude: stk500_cmd(): programmer is out of sync
    avr_read(): error reading address 0x0000
    read operation not supported for memory “flash”
    avrdude: failed to read all of flash memory, rc=-2
    avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x00
    avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x00

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    Reply
  7. Amit Kadam pune on July 18, 2020 7:33 AM

    Everything working fine till I add update pox command.
    When I add this command in loop function it gets off.
    What is the problem.

    I m new and lerner .

    Using 6 pin oled disply to see result.

    I have used cut connection and add wire method, still not working but when I connect INT TO GND after initialising command senser glows and shows result on COM port i.e serial port.

    Reply
  8. Arista on August 11, 2020 10:56 PM

    Where is the code for bluetooth module

    Reply
    • Mr. Alam on August 11, 2020 10:42 PM

      There is another post for bluetooth part. Check the link in yt video description website article.

      Reply
      • Andzar on July 23, 2021 12:27 PM

        Hello Mr. Alam. i can’t find another post for bluetooth part.

  9. Ulrich Engel on September 5, 2020 8:08 PM

    Hallo Mr. Alam,
    I use the green oxygen-modul MAX30100 with 5V. SDA -> A4 SCL -> A5 . I use arduino nano.
    Compiling and upload is ok. No error.

    My problem is in

    setup void {
    if (!pox.begin()) {
    Serial.println(“FAILED”);
    ……..} }

    I cannot initialize the pox. On Oled is written “failed”.

    Who can help me?

    Reply
    • Mr. Alam on September 8, 2020 5:43 PM

      The MAX30100 Sensor is damaged. Please fix the sensor first. The method of fixing the sensor is given.

      Reply
  10. U Engel on September 8, 2020 5:00 PM

    I´m waiting for answer to fix my project soon.

    Reply
  11. U Engel on September 8, 2020 6:38 PM

    Do I have the same problems with the red GY-MAX30100

    Reply
  12. U Engel on September 8, 2020 7:20 PM

    Thanks. Do I have the same problems with the red GY-MAX30100

    Reply
    • Mr. Alam on September 8, 2020 7:21 PM

      There is a method to fix the issue.
      You can try if its not working.

      Reply
  13. Ulrich Engel on September 19, 2020 12:30 PM

    Hello,
    I have removed all 4.7K Resistor from the sensor MAX30100/30102 (1st Method) and connect the INT, SDA, SCL pin to the external 4.7K Pull up resistor and INT to D2 as shown in the image.
    My question: must I connect with 3,3V or 5V? In the discription of the sensor I read it works with 3,3V.

    My problem is: compiling and upload ok but sensor error “INIT FAILED”.

    How can I fix this problem?

    Reply
  14. Ulrich Engel on September 19, 2020 12:32 PM

    Can I send you pictures?

    Reply
  15. ulrich Engel on September 21, 2020 8:34 PM

    On Pinterest I send you a picture of wiring the sensor MAX30100/30102 with the extern resistors (1st method).
    Maybe you can help me fixing my problems with init the sensor. I like to use the blood oxygen and heart rate monitor with my friends. They are still waiting.

    Reply
  16. Ulrich Engel on September 23, 2020 11:55 AM

    I´m still waiting for answer to fix my problems.
    I don´t think it´s good if you offer a forum and don´t respond.

    Reply
    • Mr. Alam on September 23, 2020 12:00 PM

      Hey bro, the first and 2nd method both works fine, there is no problem. If it’s not working even after trying the 1st and 2nd method. Then maybe your sensor is damaged. Buy the purple color sensor, not the green one. The purple color sensor doesn’t have any issue.

      Reply
    • Mr. Alam on September 23, 2020 12:00 PM

      Hey bro, the first and 2nd method both works fine, there is no problem. If it’s not working even after trying the 1st and 2nd method. Then maybe your sensor is damaged. Buy the purple color sensor, not the green one. The purple color sensor doesn’t have any issues.

      Reply
  17. Ulrich Engel on September 24, 2020 4:30 AM

    Thank you for answer.
    Now I use:
    Arduino UNO, LCD (5V) and purple GY-Max30100 sensor (3,3V).
    Compiling ok
    Upload OK
    Init succeed
    Data realistic with finger on sensor.
    Problem: When I take off the finger, the data do not go back to zero. Only when I put a dark plastic (packaging of sensor) over the sensor, the data are going back to zero.

    Is this normal?

    Reply
  18. Ulrich Engel on September 24, 2020 7:19 PM

    This day i Test the second version of this project. Using arduino NANO and OLED display.
    It is strange!! This project only works when I put a dark plastic (packaging of the sensor) between my finger and the sensor. Then I get right data for O² and heart rate. When I put my finger directly on the sensor, the data are zero.

    Strange!!
    Do you understand this? Can you help me?

    Reply
  19. sanjukumarsk on September 28, 2020 12:33 PM

    hi, even i am facing same problem,
    did u resolved it?

    Reply
  20. Ulrich Engel on September 28, 2020 2:18 PM

    No, I+m still waiting for answer/help.

    Reply
  21. Ulrich Engel on October 1, 2020 7:59 PM

    Since on Week I´m waiting for an answer to fix my problems. I´m not glad about this service. Maybe it is my first and my last project on this plattform. I think you can´t understand how somebody feels waiting for help and get no answer.

    Reply
  22. Aryan Phatak on October 8, 2020 8:45 PM

    Sir , is it needed to cut and short the connections on MAX30100 arduino module , arduino nano ?????

    Reply
  23. Ulrich Engel on October 8, 2020 8:52 PM

    I only use the purple GY-Max30100 sensor. I have removed all 4.7K Resistor from the sensor MAX30100/30102 (1st Method) and connect the INT, SDA, SCL pin to the external 4.7K Pull up resistor and INT to D2 as shown in the image.
    The green sensor doen´t work.
    But the purple GY-Max30100 sensor work well.

    Reply
  24. shatered07 on January 17, 2021 6:35 PM

    Hey great work ! Thanks. I am wondering what is the signs just below the blinking heart logo. I scan the codes and couldnt find anything related. Appreciated!

    Reply
  25. milana on May 4, 2021 3:29 AM

    Just show me one example that indian making one thing correct???!!! they are just talking taking taking

    Reply
  26. Seref Bal on May 26, 2021 5:54 PM

    I need max3010x code for “CCS C” compiler. I want to do this work on pic (eg 18f4550). Can you help me?

    Reply
  27. Dr Pragnya on July 5, 2021 3:01 PM

    can I contact you on email. I need total solution of these project. can you help me professionally ? my email id is
    [email protected]

    Reply
  28. tayyyaba ayaz on July 17, 2021 4:38 PM

    can u plz tell is the sensors used in this project are also used to measure glucose level?

    Reply
  29. MAHIZHAN M on December 2, 2021 2:37 PM

    Hello creator , i have a doubt ; how did you created the circuit diagram using arduino and MAX30100 sensor .I just want to know which stimulator you have used to make the circuit. please replay me the online website of the stimulator.

    Reply
    • Admin on December 3, 2021 1:32 PM

      use fritzing to draw diagrams. download fritzing from fritzing.org

      Reply
  30. Sachin R on January 15, 2022 8:12 AM

    I am using the purple sensor still intitialization failed please help

    Reply
  31. Sid on March 29, 2022 9:52 PM

    Good Morning,

    As I am preparing myself to implement this,

    Is the administrator still available?

    Reply
  32. Surlari Ilie on May 16, 2023 4:09 PM

    hello in app instead spo2 and bpm is written ” Hint for TextBox1″ what i need to do ?

    Reply

CommentsCancel reply

Latest Posts
IoT Based PM & Air Quality Monitoring System using ESP32

IoT Based PM & Air Quality Monitoring System using ESP32

May 31, 2026
DIY ESP32 MLX90640 IR Thermal Camera with Live Web Display

DIY ESP32 MLX90640 IR Thermal Camera with Live Web Display

May 10, 2026
IoT Activity Tracker with ESP32 & Accelerometer Gyroscope

IoT Activity Tracker with ESP32 & Accelerometer/Gyroscope

May 2, 2026
A Guide to Sourcing Obsolete ICs for Vintage Projects

Beyond AliExpress: A Guide to Sourcing Obsolete ICs for Vintage Projects

April 21, 2026

ESP32 IoT Vehicle Motion Analyzer with MPU6050 & LIS3MDL

April 27, 2026
Building a Smart Sensor Node with a BLE Microcontroller

Building a Smart Sensor Node with a BLE Microcontroller

February 26, 2026
High-Accuracy Pitch, Roll, Yaw with ESP32 & BNO08x IMU

High-Accuracy Pitch, Roll, Yaw with ESP32 & BNO08x IMU

April 27, 2026
DIY Colorimeter using AS7265x Spectroscopy Sensor & ESP32

DIY Colorimeter using AS7265x Spectroscopy Sensor & ESP32

February 1, 2026
Top Posts & Pages
  • 12V DC to 220V AC Inverter Circuit & PCB
    12V DC to 220V AC Inverter Circuit & PCB
  • How to use INA219 DC Current Sensor Module with Arduino
    How to use INA219 DC Current Sensor Module with Arduino
  • ECG Graph Monitoring with AD8232 ECG Sensor & Arduino
    ECG Graph Monitoring with AD8232 ECG Sensor & Arduino
  • Designing of MPPT Solar Charge Controller using Arduino
    Designing of MPPT Solar Charge Controller using Arduino
  • IoT AC Energy Meter with PZEM-004T & ESP32 WebServer
    IoT AC Energy Meter with PZEM-004T & ESP32 WebServer
  • IoT Based ECG Monitoring with AD8232 ECG Sensor & ESP32
    IoT Based ECG Monitoring with AD8232 ECG Sensor & ESP32
  • Buck Converter: Basics, Working, Design & Application
    Buck Converter: Basics, Working, Design & Application
  • How to use Modbus RTU with ESP32 to read Sensor Data
    How to use Modbus RTU with ESP32 to read Sensor Data
Categories
  • Arduino Projects (197)
  • Articles (60)
    • Learn Electronics (19)
    • Product Review (15)
    • Tech Articles (28)
  • Electronics Circuits (46)
    • 555 Timer Projects (21)
    • Op-Amp Circuits (7)
    • Power Electronics (13)
  • IoT Projects (204)
    • ESP32 MicroPython (7)
    • ESP32 Projects (81)
    • ESP32-CAM Projects (15)
    • ESP8266 Projects (76)
    • LoRa/LoRaWAN Projects (22)
  • Microcontrollers (38)
    • AMB82-Mini IoT AI Camera (4)
    • BLE Projects (18)
    • STM32 Projects (19)
  • Raspberry Pi (93)
    • Raspberry Pi Pico Projects (57)
    • Raspberry Pi Pico W Projects (12)
    • Raspberry Pi Projects (24)
Follow Us
  • Facebook
  • Twitter
  • Pinterest
  • Instagram
  • YouTube
About Us

“‘How to Electronics’ is a vibrant community for electronics enthusiasts and professionals. We deliver latest insights in areas such as Embedded Systems, Power Electronics, AI, IoT, and Robotics. Our goal is to stimulate innovation and provide practical solutions for students, organizations, and industries. Join us to transform learning into a joyful journey of discovery and innovation.

Copyright © How To Electronics. All rights reserved.
  • About Us
  • Disclaimer
  • Privacy Policy
  • Contact Us
  • Advertise With Us

Type above and press Enter to search. Press Esc to cancel.

Ad Blocker Enabled!
Ad Blocker Enabled!
Looks like you're using an ad blocker. Please allow ads on our site. We rely on advertising to help fund our site.