Skip to content

OpenOx Wireless Pulse Sensor Kit based on AFE4400/ESP32

OpenOx Wireless Pulse Sensor

If you don't already have one, you can buy a board from here

Protocentral OpenOx is a new standalone, wireless pulse oximetry breakout board that is powered by the ubiquitous ESP32 WROOM32 module and uses the AFE4490 IC to measure oxygen levels in the blood while also providing a PPG waveform, heart rate, and SpO2 values measured with high precision.

Protocentral OpenOx redefines mobility and wireless capabilities. It functions as a data acquisition system, allowing for continuous real-time monitoring of blood oxygen levels via BLE, which improves the user's medical care within his or her environment as well as medical research opportunities. The standard Nellcor probe is used, which is comfortable to wear, does not restrict the user's freedom of movement, and functions as a battery-powered standalone device.

Features

  • Microcontroller and wireless connectivity: ESP32, in WROOM32 module format, with a Dual-core Xtensa 32-bit CPU, 4 MB of on-board flash, Wi-Fi, and support for BLE
  • Wireless interface: Bluetooth Low Energy (BLE)
  • Texas Instruments AFE4400 Single chip pulse pulse-oximetry front-end IC
  • Standard Nellcor compatible DB9 connector for probe
  • Calculates Spo2 values with provided code
  • Real-time display of PPG (Photoplethysmogram)
  • Data transmission over USB and/or BLE.

Specifications

  • On-board battery charging and regulation.

Hardware Setup

Connection with the Arduino board is as follows:

OpenOx pin label Arduino Connection Pin Function
Tx0 - Serial Communication (Transmit)
RX0 - Serial Communication (Receive)
SDA SDA Serial Data
SCL SCL Serial Clock
GND GND Ground
3V3 +3V Power supply

Software Setup

  • Follow the instructions described in the Installing Arduino Library section, search for ProtoCentral AFE4490 Pulse Oximeter Breakout Board in the Library Manager and install the latest version.

  • Protocentral has already written the Arduino library for OpenOx. You can obtain it by downloading it from Openox Github repository.

Arduino Examples

USB Streaming

  • Based on the microcontroller being used, download either the Openview GUI or Openview 2.

  • Open the GUI, make sure to select AFE4490 breakout under the Board dropdown and the appropriate Port. If everything goes well, you will be able to see the screen as pictured above.

    streaming vitals

BLE streaming

Download from Google Play

  • Click on Scan & Connect and connect to the OpenOx device and the vitals will start streaming.

Scan

  • To view the plot, click the waveforms.

    Home

  • The data will be saved to a csv file when you select the Start logging on the waveforms page which will be automatically downloaded to the phone on closing the waveforms page.

    Plots