ESP8266 NodeMCU with MAX30100 Pulse Oximeter and OLED Display
View and Edit Project In Cirkit Designer
Circuit Documentation
Summary
The circuit in question is designed to interface an ESP8266 NodeMCU microcontroller with a MAX30100 pulse oximeter sensor and a 0.96" OLED display. The ESP8266 NodeMCU serves as the central processing unit, controlling the OLED display via an I2C interface and reading data from the MAX30100 sensor, also through I2C. The MAX30100 sensor is used to measure blood oxygen saturation and heart rate, and the OLED display is used to present this data to the user.
Component List
MAX30100 Pulse Oximeter Sensor
- Description: A sensor used for measuring blood oxygen saturation (SpO2) and heart rate.
- Pins:
Vin: Power supply inputGND: Ground connectionSCL: I2C clock lineSDA: I2C data lineINT: Interrupt pin
0.96" OLED Display
- Description: A small display used for showing information such as sensor data.
- Pins:
GND: Ground connectionVDD: Power supply inputSCK: I2C/SPI clock line (used as I2C in this circuit)SDA: I2C data line
ESP8266 NodeMCU
- Description: A microcontroller with Wi-Fi capabilities, used as the main controller in this circuit.
- Pins:
- Digital I/O:
D0toD8 - Analog Input:
A0 - Power:
3V3,GND,VIN - Serial:
RX,TX - SPI:
SD0,SD1,SD2,SD3,CMD,CLK - Reset and Enable:
RST,EN
- Digital I/O:
Wiring Details
MAX30100 Pulse Oximeter Sensor
Vinconnected to3V3on ESP8266 NodeMCUGNDconnected toGNDon ESP8266 NodeMCUSCLconnected toD1on ESP8266 NodeMCUSDAconnected toD2on ESP8266 NodeMCUINTconnected toD0on ESP8266 NodeMCU
0.96" OLED Display
GNDconnected toGNDon ESP8266 NodeMCUVDDconnected to3V3on ESP8266 NodeMCUSCKconnected toD1on ESP8266 NodeMCU (shared with MAX30100SCL)SDAconnected toD2on ESP8266 NodeMCU (shared with MAX30100SDA)
ESP8266 NodeMCU
3V3provides power to MAX30100Vinand OLEDVDDGNDconnected to MAX30100GNDand OLEDGNDD1(I2C SCL) connected to MAX30100SCLand OLEDSCKD2(I2C SDA) connected to MAX30100SDAand OLEDSDAD0connected to MAX30100INT
Documented Code
No code was provided for the microcontroller. The documentation of the code would typically include a description of the functionality, setup, and main loop, along with comments explaining the purpose of each function and variable. Since no code is available, this section cannot be completed. If code becomes available, it should be added here with appropriate explanations and comments for maintainability and ease of understanding.