<p>The MAX30102 is an integrated pulse oximeter and heart rate monitor biosensor module. It integrates a red LED and an infrared LED, photodetector, optical components, and low-noise electronic circuitry with ambient light suppression.</p> <p>It features a 1.8V power supply and a separate 5.0V power supply for internal LEDs for heart rate and blood oxygen acquisition in wearable devices, worn on the fingers, earlobe, and wrist. The standard I2C-compatible communication interface can transmit the collected values to the KL25Z and other microcontrollers for heart rate and blood oxygen calculation</p> <p>In addition, the chip can also shut down the module through software, the standby current is close to zero, and the power supply is always maintained. Because of its excellent performance, the chip is widely used in the Samsung Galaxy S series mobile phones.</p> <p>Compared with the previous generation MAX30100, the chip integrates a glass cover to effectively eliminate external and internal light interference and has the best reliable performance.</p> <hr /> <h4> Useful link:</h4> <p>For more information such as Pinout & Programming , see this <a href=""https://lastminuteengineers.com/max30102-pulse-oximeter-heart-rate-sensor-arduino-tutorial/"" target=""_blank"" rel=""noopener""><strong>tutorial .</strong></a></p> <hr /> <h5><strong>Main Applications:</strong></h5> <ol> <li>Medical Monitoring Devices</li> <li>Fitness Assistant Devices</li> <li>Wearable Devices</li> </ol> <hr /> <h4>Features and Specifications:</h4> <ol> <li>LED peak wavelength: 660nm/880nm</li> <li>LED power supply voltage: 3.3~5V</li> <li>Detection signal type: light reflection signal (PPG)</li> <li>Output signal interface: I2C interface</li> <li>Communication interface voltage: 1.8~3.3V~5V (optional)</li> <li>Board reserved assembly hole size: 0.5 x 8.5mm</li> </ol> <hr /> <h4>Package Includes:</h4> <p>1 x MAX30102 Heart Rate and Pulse Oximeter Sensor Module (Black)</p>
Pin Connections Table 1
Board Sensor Pin Connection MAX30102 VCC/GND/SDA/SCL 3.3V / GND / board SDA / board SCL
MAX30102 Heart Rate Sensor And Puls Detection - Arduino Uno
MAX30102 Heart Rate Sensor And Puls Detection - Arduino Nano
MAX30102 Heart Rate Sensor And Puls Detection - Arduino Mega
MAX30102 Heart Rate Sensor And Puls Detection - ESP32
MAX30102 Heart Rate Sensor And Puls Detection - ESP8266
MAX30102 Heart Rate Sensor And Puls Detection - STM32
MAX30102 Heart Rate Sensor And Puls Detection - Raspberry Pi Pico
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Arduino Uno: A4=SDA, A5=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Arduino Nano: A4=SDA, A5=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Arduino Mega: D20=SDA, D21=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for ESP32: GPIO21=SDA, GPIO22=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for ESP8266: D2=SDA, D1=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for STM32: PB7=SDA, PB6=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Raspberry Pi Pico: GPIO4=SDA, GPIO5=SCL
6 #include <Wire.h>
7 #include "MAX30105.h" // SparkFun library - also covers MAX30100/30102 register-compatible reads
8
9 MAX30105 particleSensor;
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!particleSensor.begin(Wire, I2C_SPEED_STANDARD)) {
15 Serial.println ("MAX3010x not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 particleSensor.setup (); // default sensor settings (LED brightness, sample rate...)
19 }
20
21 void loop () {
22 long irValue = particleSensor.getIR();
23
24 if (irValue < 50000 ) {
25 Serial.println ("No finger detected");
26 } else {
27 Serial.print ("IR: "); Serial.print (irValue);
28 Serial.print (" Red: "); Serial.println (particleSensor.getRed());
29 // Real BPM/SpO2 needs the library's beat-detection / SpO2 algorithm on top of these raw readings.
30 }
31
32 delay (20 );
33 }
Project Notes: I2C optical heart-rate/SpO2 sensor.
نظرة عامة ومواصفات المنتج — بالعربية MAX30102 Heart Rate Sensor And Puls Detection متوفر الآن في متجر إكوسترا للإلكترونيات، ضمن قسم Sensors، بسعر 100,00 EGP. كود المنتج لدينا: EK497. المنتج غير متوفر حالياً — تواصل معنا عبر واتساب لمعرفة موعد توفره القادم.
أهم المواصفات الفنية:
Product Type: Heart Rate Sensor ModulePa Model: MAX30102Sensor Type: Optical Pulse & SpO2 Sensorالشريحة: MAX30102Operating Voltage (V): 1.8 – 3.3Logic Level (V): 3.3 (5V tolerant via onboard regulator – varies)Pa Interface: I2CHeart Rate Detection: Yesهذا المنتج مناسب لمشاريع الأردوينو (Arduino) و ESP32 و Raspberry Pi، ومشاريع الروبوتات وإنترنت الأشياء والتعليم الهندسي. جميع القطع مفحوصة قبل الشحن.
تصفّح المزيد من Sensors في إكوسترا.