Description: HEART is build with MAX30100. MAX30100 is a complete pulse oximetry and heartrate sensor system solution designed for the demanding requirements of wearable devices. The MAX30100 provides very small total solution size without sacrificing optical or electrical performance. Minimal external hardware components are needed for integration into a wearable device. How do we use this to test the heart rate and? Put your finger on the detection area. What is the communication protocol between M5 core and this unit? I2C.
Product Features: Programmable Sample Rate and LED Current for Power Savings Ultra-Low Shutdown Current ( 0.7 µ A, typ) Advanced Functionality Improves Measurement Performance High Sample Rate Capability Fast Data Output Capability GROVE interface
Software Develop platform: Two Le go-compatible holes
Product Size: 32.2 mm x 24.2 mm x 8.2 mm
Product weight: 4.6 g
Package Included: 1x HEART 1x Grove
Cable Related Link: Offical Video Forum Datasheet - MAX30100 MAX30100lib EasyLoader click to download EasyLoader 1. EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader. 2. After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click "Burn" to start burning. 3. The CP210X (USB driver) needs to be installed before the EasyLoader is burned. Click here to view the driver installation tutorial 1. IDE To get the code, please click here. /* Install MAX30100lib Library first. MAX30100_RawData. ino */ #include #include "MAX30100. h" #define SAMPLING_RATE MAX30100_SAMPRATE_100HZ #define IR_LED_CURRENT MAX30100_LED_CURR_50MA #define RED_LED_CURRENT MAX30100_LED_CURR_27_1MA // set HIGHRES_MODE to true only // when setting PULSE_WIDTH to MAX30100_SPC_PW_1600US_16BITS #define PULSE_WIDTH MAX30100_SPC_PW_1600US_16BITS #define HIGHRES_MODE true // new a object MAX30100 sensor; void setup() { Serial. begin (115200); Serial. print("Initializing MAX30100.. "); if (! sensor. begin()) { Serial. println("FAILED"); for(;; ); } else { Serial. println("SUCCESS"); } sensor.
setMode (MAX30100_MODE_SPO2_HR); sensor. setLedsCurrent(IR_LED_CURRENT, RED_LED_CURRENT); sensor. setLedsPulseWidth (PULSE_WIDTH); sensor. setSamplingRate (SAMPLING_RATE); sensor. setHighresModeEnabled (HIGHRES_MODE); } void loop() { uint16_t ir, red; sensor. update(); while (sensor. getRawValues(&ir, &red)) { Serial. print (ir); Serial. print(' t' ); Serial. println (red); } }Copy to clipboardErrorCopied
Schematic:
PinMap: M5Core (GROVE A) GPIO22 GPIO21 5V GND HEART SCL SDA 5V GND