Health monitoring is the major problem in today’s world. Due to lack of proper health monitoring, patient suffer from serious health issues. There are lots of IoT devices now days to monitor the health of patient over internet. Health experts are also taking advantage of these smart devices to keep an eye on their patients. With tons of new healthcare technology start-ups, IoT is rapidly revolutionizing the healthcare industry.
Here in this project, we will make an IoT based Health Monitoring System which records the patient heart beat rate and body temperature and also send an email/SMS alert whenever those readings goes beyond critical values. Pulse rate and body temperature readings are recorded over ThingSpeak and Google sheets so that patient health can be monitored from anywhere in the world over internet. A panic will also be attached so that patient can press it on emergency to send email/sms to their relatives.
Materials required
- Arduino Uno and Programming Cable
- ESP8266 Wi-Fi module
- LM35 temperature sensor
- Pulse rate sensor
- Push button
- 10k Resistor
- Male-female wires
- Breadboard
Pulse Rate Sensor
Pulse Sensor is a well-designed plug-and-play heart-rate sensor for Arduino. The sensor clips onto a fingertip or earlobe and plugs right into Arduino. It also includes an open-source monitoring app that graphs your pulse in real time.
The front of the sensor is the covered with the Heart shape logo. This is the side that makes contact with the skin. On the front you see a small round hole, which is where the LED shines through from the back, and there is also a little square just under the LED. The square is an ambient light sensor, exactly like the one used in cellphones, tablets, and laptops, to adjust the screen brightness in different light conditions. The LED shines light into the fingertip or earlobe, or other capillary tissue, and sensor reads the amount of light that bounces back. That’s how it calculates the heart rate. The other side of the sensor is where the rest of the parts are mounted.
Before we use this sensor, we need to protect the exposed side of the sensor so that we can get accurate readings and avoid the short circuit due to sweat. For this, you can use Velcro strip or black tape. As shown in the picture.
There are three wires coming out of the sensor, Signal(S), Vcc(3 - 5 V) and GND.
Signal wire is connected to Arduino Analog pin. The same sensor is used in our Arduino Heart Beat monitoring project.
LM35 Temperature Sensor
LM35 is a analog linear temperature sensor. Its output is proportional to the temperature (in degree Celsius). The operating temperature range is from -55°C to 150°C. The output voltage varies by 10mV in response to every oC rise or fall in temperature. It can be operated from a 5V as well as 3.3 V supply and the stand by current is less than 60uA.
ESP8266-01
Most people call ESP8266 as a WIFI module, but it is actually a microcontroller. ESP8266 is the name of the microcontroller developed by Espressif Systems which is a company based out of shanghai. This microcontroller has the ability to perform WIFI related activities hence it is widely used as a WIFI module.
There are two of ways to work with your ESP8266 module. This tutorial will help you to get started with ESP8266. One way is by using the AT commands. The other way is by using the Arduino IDE. Here we will use AT commands to send data from Arduino to ESP.
Circuit Diagram
Below are the connections:
- Signal pin of pulse sensor -> A0 of arduino
- Vcc pin of pulse sensor -> 5V of arduino
- GND pin of pulse sensor -> GND of arduino
- Vout of LM35 -> A1 of Arduino
- Tx of ESP8266 -> pin 10 of arduino
- Rx of ESP8266 -> pin 11 of arduino
- CH_PD and Vcc of ESP8266 -> 3.3 V of arduino
- GND of ESP8266 -> GND of arduino
- Push button -> digital pin 8 of arduino
Configuring ThingSpeak to record Patient Data online
ThingSpeak provides very good tool for IoT based projects. By using ThingSpeak site, we can monitor our data and control our system over the Internet, using the Channels and webpages provided by ThingSpeak. ThingSpeak ‘Collects’ the data from the sensors, ‘Analyze and Visualize’ the data and ‘Acts’ by triggering a reaction. We have previously used ThingSpeak in Weather station project using Raspberry Pi and using Arduino, check them to learn more about ThingSpeak. Here we are briefly explaining to use ThingSpeak for this IoT Patient Monitoring Project.
We will use ThingSpeak to monitor patient heartbeat and temperature online using internet. We will also use IFTTT platform to connect ThingSpeak to email/message service so that alert message can be sent whenever the patient is in critical state.
Step 1:- First of all, user needs to Create a Account on ThingSpeak.com, then Sign In and click on Get Started.
Step 2:- Now go to the ‘Channels’ menu and click on New Channel option on the same page for further process.
Step 3:- Now you will see a form for creating the channel, fill in the Name and Description as per your choice. Then fill ‘Pulse Rate’, ‘Temperature’ and ‘Panic’ in Field 1, Field 2 and Field 3 labels, tick the checkboxes for the Fields. Also tick the check box for ‘Make Public’ option below in the form and finally Save the Channel. Now your new channel has been created.
Step 4:- You will see three charts as shown below. Note the Write API key, we will use this key in our code.
Step 5:- Now, we will use ThingHTTP app of the server to trigger the IFTTT applet for data entry to Google sheets and send email/sms. ThingHTTP enables communication among devices, websites, and web services without having to implement the protocol on the device level. You can specify actions in ThingHTTP, which you want to trigger using other ThingSpeak apps such as React.
To make New ThingHTTP, we will need URL for triggering which we will get from IFTTT.
Configuring IFTTT for triggering Mail/SMS based on ThingSpeak Values
Step 1:- Login to IFTTT and search for Webhooks and click on it.
Step 2:- Click on Documentation.
Step 3:- Type “Patient_Info” in the event box and copy the URL. We will use this URL in ThingHTTP.
Now let’s make Applet to link ThingHTTP to Google sheet and to send email/sms. After that we will jump to complete our ThingHTTP.
Step 4:- Click on New Applete in My Applete option.
Step 5:- Click on “+this” and search for Webhooks and click on it. Choose trigger as “Receive a web request”.
Step 6:- Type the Event Name which is same as you write in the event box in webhooks URL. Click on Create Trigger.
Step 7:- Click on “+that” and search for Google Sheets and click on it.
Click on Add row to spreadsheet.
Step 8:- Give any name to your sheet. In formatted row box, you have date and time, event name, BPM value and body temperature which will be written as shown.
Step 9:- Review your applet and click on finish.
In the same way, we have to make applet for sending email when Panic event is occurred.
So again click on “+this” and select Webhooks, then in event name enter “Panic”. In “+that” search for Gmail and click on it.
Now, click on Send an email.
Type the email addresses on which you wish to receive email when there is a panic to the patient.
Type the body content you wish to send in the email and click on create action. Review it and finish.
We have made our applets to perform the tasks. Now, come back to Thingspeak->Apps->ThingHTTP.
ThingHTTP for connecting ThingSpeak with IFTTT
Step 1:- Click on New ThingHTTP. Give any name and Paste the URL that you copied from the webhooks documentation. Fill Remaining information as shown below.
In Body, we have to write the information that we want to send to the IFTTT applet. We are sending patient Pulse reading and temperature. So the format is
{ "value1" : "%%channel_channelID_field_fieldNumber%%","value2" : "%%channel_channelID_field_fieldNumber%%"}
After filling these informations, click on Save ThingHTTP.
In the same manner, we have to make ThingHTTP for “Panic”. Follow the same steps.
In URL, write Panic in place of Patient_Info. Body remains empty and All other information are same as in previous ThingHTTP. Save it.
Now, we have to make React to trigger the URL.
React works with ThingHTTP app to perform actions when channel data meets a certain condition.
To make React, click on Apps -> React. Click on New React.
Step 2:- Give name to your React. Condition type as Numeric and Test Freaquency as on Data Insertion.
Choose the Condition on which you want to trigger the URL. Select your channel from the If Channel drop down menu. Choose field 1 i.e Pulse rate and make condition of greater than any value. I have used 60. As shown
Choose ThingHTTP from Action drop down menu and select the ThingHTTP.
Select “Run action each time condition is met” and click on Save React.
In the same way, make React for the Panic as shown.
Select “Run action each time condition is met” and click on Save React.
We have done with Web based work. Now, we will see code for Arduino.
Arduino Code Explanation
Complete Arduino code is given at the end, here we are explaining few important part of it. We will use library for Pulse rate sensor which can be downloaded from this Link. Also, we are using timer to set interval to take readings. For this we need Timer library, which can be downloaded from this Link.
Let’s jump to coding part…
First, we include all the libraries. We are using software serial to communicate with esp8266.
#include <SoftwareSerial.h> #include "Timer.h" #include <PulseSensorPlayground.h> //pulse sensor library
Make instance for timer, SoftwareSerial and pulse sensor to use in our code.
Timer t; PulseSensorPlayground pulseSensor; SoftwareSerial esp8266(10,11); //Rx,Tx
Set-up low-level interrupts for most accurate BPM match and enable DEBUG to show ongoing commands on serial monitor.
#define USE_ARDUINO_INTERRUPTS true #define DEBUG true
Set your WiFi name , password and IP of thingspeak.com
#define SSID "*********" // "your WiFiname" #define PASS "**********" // "wifi password" #define IP "184.106.153.149" // thingspeak.com ip
Declare String to update information on ThingSpeak channel. You will need API key for this, which can be found from your ThingSpeak channel-> API key . Copy Write API key and paste here.
String msg = "GET /update?key=Your Api Key";
In setup function, set the baud rate for serial communication between Arduino serial monitor and esp8266. Start the ESP communication by giving AT command to it and connect it by calling connectWiFi(); function. After that we will initialize Timers by calling t.every(time_interval, do_this); which will take the readings of the sensors and update on the channel after every time_interval you defined.
void setup() { Serial.begin(9600); esp8266.begin(115200); pulseSensor.analogInput(PulseWire); pulseSensor.blinkOnPulse(LED13); //auto-magically blink Arduino's LED with heartbeat. pulseSensor.setThreshold(Threshold); // Double-check the "pulseSensor" object was created and "began" seeing a signal. if (pulseSensor.begin()) { Serial.println("We created a pulseSensor Object !"); } Serial.println("AT"); esp8266.println("AT"); delay(3000); if(esp8266.find("OK")) { connectWiFi(); } t.every(10000, getReadings); t.every(10000, updateInfo); }
We have to make functions for connectWiFi(), panic_button(), update_info() and getReadings().
Make function for connectWiFi() which will return True or False depending upon Wi-Fi connected or not. AT+CWMODE=1 will make ESP8266 work in station mode. AT+CWJAP=\, command, used in this function, is to connect to your Access Point (your Wi-Fi router).
boolean connectWiFi() { Serial.println("AT+CWMODE=1"); esp8266.println("AT+CWMODE=1"); delay(2000); String cmd="AT+CWJAP=\""; cmd+=SSID; cmd+="\",\""; cmd+=PASS; cmd+="\""; Serial.println(cmd); esp8266.println(cmd); …… …..
Make getReadings(); function to take pulse sensor and LM35 readings and convert them to string using dtostrf(); function.
void getReadings(){ raw_myTemp = analogRead(A1); Voltage = (raw_myTemp / 1023.0) * 5000; // 5000 to get millivots. tempC = Voltage * 0.1; //in degree C myTemp = (tempC * 1.8) + 32; // conver to F Serial.println(myTemp); int myBPM = pulseSensor.getBeatsPerMinute(); // Calls function on our pulseSensor object that returns BPM as an "int". if (pulseSensor.sawStartOfBeat()) { // Constantly test to see if "a beat happened". Serial.println(myBPM); // Print the value inside of myBPM. } delay(20);
Define char array for BPM and temp and convert float value of these sensors to String using dtostrf().
char buffer1[10]; char buffer2[10]; BPM = dtostrf(myBPM, 4, 1, buffer1); temp = dtostrf(myTemp, 4, 1, buffer2); }
Make function for updating sensor information on the ThingSpeak channel.
"AT+CIPSTART=\"TCP\",\"", AT Command will establish TCP command over port 80
void updateInfo() { String cmd = "AT+CIPSTART=\"TCP\",\""; cmd += IP; cmd += "\",80"; Serial.println(cmd); esp8266.println(cmd); delay(2000); if(esp8266.find("Error")) { return; }
Attach the readings with the GET URL using "&field1="; for pulse readings and "&field2="; for temperature readings. Send this information using “AT+CIPSEND=” command.
cmd = msg ; cmd += "&field1="; //field 1 for BPM cmd += BPM; cmd += "&field2="; //field 2 for temperature cmd += temp; cmd += "\r\n"; Serial.print("AT+CIPSEND="); esp8266.print("AT+CIPSEND="); Serial.println(cmd.length()); esp8266.println(cmd.length()); if(esp8266.find(">")) { Serial.print(cmd); esp8266.print(cmd); } … …
Similarly, make function for panic_button. When button goes to HIGH, esp8266 send the information to the server using AT+CIPSTART and AT+CIPSEND commands.
void panic_button(){ panic = digitalRead(8); if(panic == HIGH){ Serial.println(panic); String cmd = "AT+CIPSTART=\"TCP\",\""; cmd += IP; cmd += "\",80"; Serial.println(cmd); esp8266.println(cmd); ….. ..
Attach this information to "&field3=“.
cmd = msg ; cmd += "&field3=";
In loop function, call panic_button() and timers using t.update() function .
void loop() { panic_button(); start: //label error=0; t.update(); …… ……
Patient Monitoring System in Action
Now, connect your hardware components according to the circuit diagram and upload the code to the Arduino. Open Serial monitor to see what’s going inside the code.
You will see data is updated defined in the Google sheets on Google drive, after the interval you defined in the timer setting.
Press panic button for 4-5 seconds, you will get email that patient is in problem, like shown below:
Check the demonstration Video given below.
#define USE_ARDUINO_INTERRUPTS true
#define DEBUG true
#define SSID "********" // "SSID-WiFiname"
#define PASS "************" // "password"
#define IP "184.106.153.149" // thingspeak.com ip
#include <SoftwareSerial.h>
#include "Timer.h"
#include <PulseSensorPlayground.h> // Includes the PulseSensorPlayground Library.
Timer t;
PulseSensorPlayground pulseSensor;
String msg = "GET /update?key=your api key";
SoftwareSerial esp8266(10,11);
//Variables
const int PulseWire = A0; // PulseSensor PURPLE WIRE connected to ANALOG PIN 0
const int LED13 = 13; // The on-board Arduino LED, close to PIN 13.
int Threshold = 550; //for heart rate sensor
float myTemp;
int myBPM;
String BPM;
String temp;
int error;
int panic;
int raw_myTemp;
float Voltage;
float tempC;
void setup()
{
Serial.begin(9600);
esp8266.begin(115200);
pulseSensor.analogInput(PulseWire);
pulseSensor.blinkOnPulse(LED13); //auto-magically blink Arduino's LED with heartbeat.
pulseSensor.setThreshold(Threshold);
// Double-check the "pulseSensor" object was created and "began" seeing a signal.
if (pulseSensor.begin()) {
Serial.println("We created a pulseSensor Object !"); //This prints one time at Arduino power-up, or on Arduino reset.
}
Serial.println("AT");
esp8266.println("AT");
delay(3000);
if(esp8266.find("OK"))
{
connectWiFi();
}
t.every(10000, getReadings);
t.every(10000, updateInfo);
}
void loop()
{
panic_button();
start: //label
error=0;
t.update();
//Resend if transmission is not completed
if (error==1)
{
goto start; //go to label "start"
}
delay(4000);
}
void updateInfo()
{
String cmd = "AT+CIPSTART=\"TCP\",\"";
cmd += IP;
cmd += "\",80";
Serial.println(cmd);
esp8266.println(cmd);
delay(2000);
if(esp8266.find("Error"))
{
return;
}
cmd = msg ;
cmd += "&field1="; //field 1 for BPM
cmd += BPM;
cmd += "&field2="; //field 2 for temperature
cmd += temp;
cmd += "\r\n";
Serial.print("AT+CIPSEND=");
esp8266.print("AT+CIPSEND=");
Serial.println(cmd.length());
esp8266.println(cmd.length());
if(esp8266.find(">"))
{
Serial.print(cmd);
esp8266.print(cmd);
}
else
{
Serial.println("AT+CIPCLOSE");
esp8266.println("AT+CIPCLOSE");
//Resend...
error=1;
}
}
boolean connectWiFi()
{
Serial.println("AT+CWMODE=1");
esp8266.println("AT+CWMODE=1");
delay(2000);
String cmd="AT+CWJAP=\"";
cmd+=SSID;
cmd+="\",\"";
cmd+=PASS;
cmd+="\"";
Serial.println(cmd);
esp8266.println(cmd);
delay(5000);
if(esp8266.find("OK"))
{
return true;
}
else
{
return false;
}
}
void getReadings(){
raw_myTemp = analogRead(A1);
Voltage = (raw_myTemp / 1023.0) * 5000; // 5000 to get millivots.
tempC = Voltage * 0.1;
myTemp = (tempC * 1.8) + 32; // conver to F
Serial.println(myTemp);
int myBPM = pulseSensor.getBeatsPerMinute(); // Calls function on our pulseSensor object that returns BPM as an "int".
// "myBPM" hold this BPM value now.
if (pulseSensor.sawStartOfBeat()) { // Constantly test to see if "a beat happened".
Serial.println(myBPM); // Print the value inside of myBPM.
}
delay(20);
char buffer1[10];
char buffer2[10];
BPM = dtostrf(myBPM, 4, 1, buffer1);
temp = dtostrf(myTemp, 4, 1, buffer2);
}
void panic_button(){
panic = digitalRead(8);
if(panic == HIGH){
Serial.println(panic);
String cmd = "AT+CIPSTART=\"TCP\",\"";
cmd += IP;
cmd += "\",80";
Serial.println(cmd);
esp8266.println(cmd);
delay(2000);
if(esp8266.find("Error"))
{
return;
}
cmd = msg ;
cmd += "&field3=";
cmd += panic;
cmd += "\r\n";
Serial.print("AT+CIPSEND=");
esp8266.print("AT+CIPSEND=");
Serial.println(cmd.length());
esp8266.println(cmd.length());
if(esp8266.find(">"))
{
Serial.print(cmd);
esp8266.print(cmd);
}
else
{
Serial.println("AT+CIPCLOSE");
esp8266.println("AT+CIPCLOSE");
//Resend...
error=1;
}
}
}
Comments
The solution is discussed
The solution is discussed here
https://circuitdigest.com/forums/internet-things/solved-error-compile-u…
code error
168:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
exit status 1
'class Timer' has no member named 'every'
Did you get the solution for
Did you get the solution for that? Please help
C:\Users\Lenovo\Documents
C:\Users\Lenovo\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino: In function 'void getReadings()':
Patient_Monitoring:128:27: error: 'A1' was not declared in this scope
raw_myTemp = analogRead(A1);
^
ERROR COMPILLING FOR BOARD ARDUINO/GENUINO UNO
When i upload this code on arduino board,i have this type of error.The error given below:
Arduino: 1.8.6 (Windows 10), Board: "Arduino/Genuino Uno"
C:\Program Files\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files\Arduino\hardware -tools C:\Program Files\Arduino\tools-builder -tools C:\Program Files\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files\Arduino\libraries -libraries C:\Users\Aisha Anam\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10806 -build-path C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578 -warnings=none -build-cache C:\Users\AISHAA~1\AppData\Local\Temp\arduino_cache_762418 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\Arduino\hardware\tools\avr -verbose C:\Users\Aisha Anam\Documents\Arduino\IOTBased\IOTBased.ino
C:\Program Files\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files\Arduino\hardware -tools C:\Program Files\Arduino\tools-builder -tools C:\Program Files\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files\Arduino\libraries -libraries C:\Users\Aisha Anam\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10806 -build-path C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578 -warnings=none -build-cache C:\Users\AISHAA~1\AppData\Local\Temp\arduino_cache_762418 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\Arduino\hardware\tools\avr -verbose C:\Users\Aisha Anam\Documents\Arduino\IOTBased\IOTBased.ino
Using board 'uno' from platform in folder: C:\Program Files\Arduino\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Program Files\Arduino\hardware\arduino\avr
Detecting libraries used...
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp" -o nul
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\libraries\\SoftwareSerial\\src" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp" -o nul
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\libraries\\SoftwareSerial\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\PulseSensorPlayground-master\\src" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp" -o nul
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\libraries\\SoftwareSerial\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\PulseSensorPlayground-master\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\Timer-master" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp" -o nul
Using cached library dependencies for file: C:\Program Files\Arduino\hardware\arduino\avr\libraries\SoftwareSerial\src\SoftwareSerial.cpp
Using cached library dependencies for file: C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master\src\PulseSensorPlayground.cpp
Using cached library dependencies for file: C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master\src\utility\PulseSensor.cpp
Using cached library dependencies for file: C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master\src\utility\PulseSensorSerialOutput.cpp
Using cached library dependencies for file: C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master\src\utility\PulseSensorTimingStatistics.cpp
Using cached library dependencies for file: C:\Users\Aisha Anam\Documents\Arduino\libraries\Timer-master\Event.cpp
Using cached library dependencies for file: C:\Users\Aisha Anam\Documents\Arduino\libraries\Timer-master\Timer.cpp
Generating function prototypes...
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\libraries\\SoftwareSerial\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\PulseSensorPlayground-master\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\Timer-master" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp" -o "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\preproc\\ctags_target_for_gcc_minus_e.cpp"
"C:\\Program Files\\Arduino\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\preproc\\ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files\\Arduino\\hardware\\arduino\\avr\\libraries\\SoftwareSerial\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\PulseSensorPlayground-master\\src" "-IC:\\Users\\Aisha Anam\\Documents\\Arduino\\libraries\\Timer-master" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp" -o "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp.o"
Compiling libraries...
Compiling library "SoftwareSerial"
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\SoftwareSerial\SoftwareSerial.cpp.o
Compiling library "PulseSensorPlayground-master"
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\PulseSensorPlayground-master\PulseSensorPlayground.cpp.o
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\PulseSensorPlayground-master\utility\PulseSensorTimingStatistics.cpp.o
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\PulseSensorPlayground-master\utility\PulseSensorSerialOutput.cpp.o
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\PulseSensorPlayground-master\utility\PulseSensor.cpp.o
Compiling library "Timer-master"
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\Timer-master\Event.cpp.o
Using previously compiled file: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_build_523578\libraries\Timer-master\Timer.cpp.o
Compiling core...
Using precompiled core: C:\Users\AISHAA~1\AppData\Local\Temp\arduino_cache_762418\core\core_arduino_avr_uno_5638c217b04eda8279099c4937887265.a
Linking everything together...
"C:\\Program Files\\Arduino\\hardware\\tools\\avr/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578/IOTBased.ino.elf" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\sketch\\IOTBased.ino.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\SoftwareSerial\\SoftwareSerial.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\PulseSensorPlayground-master\\PulseSensorPlayground.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\PulseSensorPlayground-master\\utility\\PulseSensor.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\PulseSensorPlayground-master\\utility\\PulseSensorSerialOutput.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\PulseSensorPlayground-master\\utility\\PulseSensorTimingStatistics.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\Timer-master\\Event.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578\\libraries\\Timer-master\\Timer.cpp.o" "C:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578/..\\arduino_cache_762418\\core\\core_arduino_avr_uno_5638c217b04eda8279099c4937887265.a" "-LC:\\Users\\AISHAA~1\\AppData\\Local\\Temp\\arduino_build_523578" -lm
C:\Users\AISHAA~1\AppData\Local\Temp\cc4HPwqB.ltrans0.ltrans.o: In function `begin':
C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master\src/PulseSensorPlayground.cpp:55: undefined reference to `PulseSensorPlayground::UsingInterrupts'
C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master\src/PulseSensorPlayground.cpp:56: undefined reference to `PulseSensorPlaygroundSetupInterrupt()'
collect2.exe: error: ld returned 1 exit status
Using library SoftwareSerial at version 1.0 in folder: C:\Program Files\Arduino\hardware\arduino\avr\libraries\SoftwareSerial
Using library PulseSensorPlayground-master at version 1.4.11 in folder: C:\Users\Aisha Anam\Documents\Arduino\libraries\PulseSensorPlayground-master
Using library Timer-master in folder: C:\Users\Aisha Anam\Documents\Arduino\libraries\Timer-master (legacy)
exit status 1
Error compiling for board Arduino/Genuino Uno.
code error
getting timer.h error can u send me the corrected code
Do you have the corrected
Do you have the corrected code? Please help
code error
i have a problem in code if anyone got the code plzz send me its urgent .............
168:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
exit status 1
'class Timer' has no member named 'every'
need quick help
I have a coding problem.
... you have the right program, please send to me at emal [email protected]
because I tried a lot of mistakes that happened ... so plesae help me
Urgent
I have a coding problem.
... you have the right program, please send to me at emal [email protected]
because I tried a lot of mistakes that happened ... so plesae help me
I have a coding problem.
I have a coding problem.
... you have the right program, please send to me at email [email protected]
because I tried a lot of mistakes that happened ... so please help me. Thank you
Am Facing this type of error kindly help me.
sketch_dec21a:9:19: error: Timer.h: No such file or directory
compilation terminated.
exit status 1
Timer.h: No such file or directory
Am facing This error in code
Am facing This error in code during compilation.Help me please .
sketch_dec21a:9:19: error: Timer.h: No such file or directory
compilation terminated.
exit status 1
Timer.h: No such file or directory
I HAVE CODING PROBLEM!
I HAVE CODING PROBLEM!
Arduino: 1.8.8 (Windows 10), Board: "Arduino/Genuino Uno"
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:3:55: warning: missing terminating " character
#define SSID PLDTHOMEDSLCuyugan" // "SSID-WiFiname"
^
MOTION:111:3: error: missing terminating " character
cmd+=SSID;
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'void setup()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:47:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'void updateInfo()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:77:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:91:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'boolean connectWiFi()':
MOTION:3:14: error: 'PLDTHOMEDSLCuyugan' was not declared in this scope
#define SSID PLDTHOMEDSLCuyugan" // "SSID-WiFiname"
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:111:8: note: in expansion of macro 'SSID'
cmd+=SSID;
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:118:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'void panic_button()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:157:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:169:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
Multiple libraries were found for "PulseSensorPlayground.h"
Used: C:\Users\Arielle Ja9\Documents\Arduino\libraries\PulseSensorPlayground-master
Not used: C:\Users\Arielle Ja9\Documents\Arduino\libraries\PulseSensor_Playground
exit status 1
missing terminating " character
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'void setup()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:47:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'void updateInfo()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:77:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:91:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'boolean connectWiFi()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:118:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino: In function 'void panic_button()':
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:157:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\Arielle Ja9\Desktop\MOTION\MOTION.ino:169:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
Sketch uses 12576 bytes (38%) of program storage space. Maximum is 32256 bytes.
Global variables use 749 bytes (36%) of dynamic memory, leaving 1299 bytes for local variables. Maximum is 2048 bytes.
RELATED TO AURDINO PROGRAM
CAN YOU SEND THE ERROR FREE AURDINO UNO PROGRAM CODE
Request for help
I am getting the BpM and temperature values in the serial monitor but not getting in the thingspeak channel and not getting any mail or Google sheet
Please help me
Arduino libraries
Ardunio library used to the run the wifi module? Do we have to add some header file for that?
not getting data in output
13:03:03.244 -> AWe created a pulseSensor Object !
13:03:03.277 -> AT
13:03:19.266 -> 171.88
13:03:19.266 -> AT+CIPSTART="TCP","52.201.99.35",80
13:03:22.291 -> AT+CIPSEND=59
13:03:23.287 -> AT+CIPCLOSE
13:03:31.288 -> 167.48
13:03:31.322 -> AT+CIPSTART="TCP","52.201.99.35",80
13:03:34.334 -> AT+CIPSEND=59
13:03:35.349 -> AT+CIPCLOSE
13:03:43.337 -> 166.60
13:03:43.372 -> AT+CIPSTART="TCP","52.201.99.35",80
13:03:46.377 -> AT+CIPSEND=59
13:03:47.376 -> AT+CIPCLOSE
13:03:55.408 -> 166.60
13:03:55.408 -> AT+CIPSTART="TCP","52.201.99.35",80
13:03:58.401 -> AT+CIPSEND=59
13:03:59.431 -> AT+CIPCLOSE
13:04:07.424 -> 166.60
13:04:07.460 -> AT+CIPSTART="TCP","52.201.99.35",80
13:04:10.471 -> AT+CIPSEND=59
13:04:11.469 -> AT+CIPCLOSE
This is the output that am getting. Neither is the data getting updated ;nor it is displayed in the Thingspeak channel. What are the possible mistakes that i could have made? why is the Update command not displayed in the output?
If you can solve it, please
If you can solve it, please help me!
Once reason that I could
Once reason that I could think of is your access token not mathing. Did you change that in the code ?
have you solved the problem
have you solved the problem?if you solved it can you please help me out
Hi, This is Priya. Did you
Hi, This is Priya. Did you get results in thingspeak channel?
mail is not being sent
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino: In function 'void setup()':
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino:47:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino: In function 'void updateInfo()':
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino:77:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino:91:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino: In function 'boolean connectWiFi()':
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino:118:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino: In function 'void panic_button()':
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino:157:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\acer\Documents\Arduino\health_monitoring\health_monitoring.ino:169:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
code error
i have a problem in code if anyone got the code plzz send me its urgent .............
168:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
exit status 1
'class Timer' has no member named 'every'
Please help me i'm Not recieving values from thingspeak to IFTTT
For me code is working perfectly. Even in ThingSpeak also all datas are getting correctly. But once i passing those values to IFTTT in my Patient_Info event not taking value1 and value2. And in my google sheet entires are adding only with event name and date without pulse and tempeature.
code error
i have a problem in code if anyone got the code plzz send me its urgent .............
168:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
exit status 1
'class Timer' has no member named 'every'
i am getting the problem
i am getting the problem while compiling it showing as below
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino: In function 'void setup()':
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino:47:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino: In function 'void updateInfo()':
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino:77:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino:91:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino: In function 'boolean connectWiFi()':
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino:118:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino: In function 'void panic_button()':
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino:157:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\konga\OneDrive\Documents\Arduino\miniproject\miniproject.ino:169:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
if anybody completed this sucessfull please give reply
i am geting error in
i am geting error in uploading the code. can anyone give the solution.
I am getting this as output.
I am getting this as output. What to do?
We created a pulseSensor Object !
AT
1
AT+CIPSTART="TCP","184.106.153.149",80
AT+CIPSEND=82
AT+CIPCLOSE
1
AT+CIPSTART="TCP","184.106.153.149",80
AT+CIPSEND=82
AT+CIPCLOSE
124.38
AT+CIPSTART="TCP","184.106.153.149",80
AT+CIPSEND=98
AT+CIPCLOSE
1
AT+CIPSTART="TCP","184.106.153.149",80
my wifi doesnt connected is
my wifi doesnt connected is there anything i can do
can anybody that has a
can anybody that has a working code for this project please post the full code. or maybe e-mail it to [email protected] . i will really appreciate any help i can get here thank you
Can anybody that has a
Can anybody that has a working code for this project please post the full code, or maybe e-mail it to [email protected] . I will appreciate any help i can get here. Thank you
Arduino: 1.8.19 (Windows
Arduino: 1.8.19 (Windows Store 1.8.57.0) (Windows 10), Board: "Arduino Uno"
sketch_mar18c:8:10: fatal error: Timer.h: No such file or directory
#include "Timer.h"
^~~~~~~~~
compilation terminated.
exit status 1
Timer.h: No such file or directory
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
can anyone help me out this?
error: 'class Timer' has no
error: 'class Timer' has no member named 'every'
t.every(10000,updateInfo);
^~~~~
Help me out with this please.
Arduino: 1.8.7 (Windows 10), Board: "Arduino/Genuino Uno"
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino: In function 'void setup()':
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino:46:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino: In function 'void updateInfo()':
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino:76:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino:90:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino: In function 'boolean connectWiFi()':
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino:117:23: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("OK"))
^
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino: In function 'void panic_button()':
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino:156:26: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find("Error"))
^
C:\Users\hp\Documents\Arduino\Patient_Monitoring\Patient_Monitoring.ino:168:22: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
if(esp8266.find(">"))
^
C:\Users\hp\AppData\Local\Temp\ccczdJLl.ltrans0.ltrans.o: In function `begin':
C:\Users\hp\Documents\Arduino\libraries\PulseSensorPlayground-master\src/PulseSensorPlayground.cpp:55: undefined reference to `PulseSensorPlayground::UsingInterrupts'
C:\Users\hp\Documents\Arduino\libraries\PulseSensorPlayground-master\src/PulseSensorPlayground.cpp:56: undefined reference to `PulseSensorPlaygroundSetupInterrupt()'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board Arduino/Genuino Uno.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.