HOW TO CONNECT ARDUINO TO BLOOD PRESSURE SENSOR MONITOR - I2C EEPROM, button and valve check (3/6)

Circuit Desolator
6 May 202010:10

Summary

TLDRThis video walks through the process of hacking a blood pressure monitor with an Arduino, automating its functionality for remote operation. The project involves modifying the Arduino to work with a 3.3V system and connecting it to the blood pressure monitorโ€™s I2C bus to control key features like the start button and valve. The Arduino autonomously triggers the measurement process, monitors the device, and reads the resulting blood pressure data. The project also demonstrates how the data is displayed via a serial monitor on a smartphone, offering a practical solution for automated blood pressure measurement.

Takeaways

  • ๐Ÿ˜€ The project involves connecting an Arduino to a blood pressure monitor to automate its functions and read data from the I2C bus.
  • ๐Ÿ˜€ The blood pressure monitor uses an I2C EEPROM chip to store data, which can be accessed by the Arduino after bypassing the master-slave communication.
  • ๐Ÿ˜€ The Arduino is configured as a slave on the I2C bus, enabling it to read data from the blood pressure monitor after the master sends information.
  • ๐Ÿ˜€ A key part of the setup involves modifying the Arduino to run at 3.3V instead of 5V to match the voltage levels of the blood pressure monitor.
  • ๐Ÿ˜€ A transistor circuit is used to emulate the button press for starting the blood pressure measurement automatically with the Arduino.
  • ๐Ÿ˜€ A valve in the blood pressure monitor signals when the air pump is active, and this is monitored by the Arduino to track when measurement is complete.
  • ๐Ÿ˜€ Once the blood pressure measurement is complete, the Arduino simulates pressing the start button again to save the results to the EEPROM.
  • ๐Ÿ˜€ The project includes interfacing the Arduino with a smartphone using USB OTG to display the results of the blood pressure measurement on the screen.
  • ๐Ÿ˜€ The process of reading the blood pressure is automated, and the Arduino monitors the I2C bus to extract the data after the measurement is finished.
  • ๐Ÿ˜€ The video demonstrates the working system by reading a blood pressure of 140/115, though it notes that the reading might be higher due to the test setup.
  • ๐Ÿ˜€ Future plans include porting the project to a smaller Arduino model like the Arduino Uno or Pro Mini for better portability and integration into the device.

Q & A

  • What is the main goal of the project discussed in the video?

    -The main goal of the project is to interface an Arduino with a blood pressure monitor to automate the process of taking readings, including pressing buttons and reading values from the I2C EEPROM.

  • Why is the Arduino configured as a slave in this project?

    -The Arduino is configured as a slave to ensure stable communication with the blood pressure monitor, allowing it to listen to the I2C bus and retrieve the required data without conflicts.

  • What is the function of the transistor circuit in the project?

    -The transistor circuit emulates the start button on the blood pressure monitor, allowing the Arduino to automatically press the button to start the measurement process.

  • How does the valve play a role in the blood pressure measurement process?

    -The valve controls the flow of air during the measurement process. It closes while the monitor is pumping air and opens when the measurement is complete, signaling the Arduino to proceed with data retrieval.

  • What is the significance of the I2C EEPROM in this project?

    -The I2C EEPROM stores the blood pressure data, which the Arduino reads to obtain the final measurement once the monitor has completed the process.

  • Why was the Arduino converted from 5V to 3.3V operation?

    -The blood pressure monitor operates on 3 to 3.3 volts, so the Arduino needed to be converted to a 3.3V operation to match the voltage levels and ensure compatibility without using a logic level shifter.

  • What is the purpose of the button connected to digital pin 4?

    -The button connected to digital pin 4 triggers the start of the operation, allowing the Arduino to initiate the process of obtaining blood pressure readings from the monitor.

  • What issue did the creator face with the logic level shifter?

    -The creator faced issues with the logic level shifter, which led to the decision to modify the Arduino to run at 3.3V instead of using the shifter to avoid potential communication problems.

  • How does the Arduino communicate the blood pressure reading?

    -The Arduino communicates the blood pressure reading by sending the data to a smartphone via a serial connection, using an OTG cable and a USB terminal application for display.

  • What might cause the displayed blood pressure reading to appear higher than expected?

    -The displayed blood pressure reading might appear higher than expected because the person is not following proper posture or technique during the measurement, such as not resting the arm properly.

Outlines

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Mindmap

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Keywords

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Highlights

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Transcripts

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now
Rate This
โ˜…
โ˜…
โ˜…
โ˜…
โ˜…

5.0 / 5 (0 votes)

Related Tags
ArduinoBlood PressureI2C BusElectronicsAutomationSmart DevicesHealth MonitoringDIY ProjectEmbedded SystemsTech Tutorial