IoT Based Patient Health Monitoring System using ESP8266 and Arduino

Published  September 20, 2018   54
IoT based Patient Monitoring System using ESP8266 and Arduino

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

  1. Arduino Uno and Programming Cable
  2. ESP8266 Wi-Fi module
  3. LM35 temperature sensor
  4. Pulse rate sensor
  5. Push button
  6. 10k Resistor
  7. Male-female wires
  8. 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.

Pulse Rate Sensor
 

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.

Patient Heartbeat Monitoring using Pulse rate Sensor

 

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

Circuit Diagram for IoT based Patient Monitoring System using ESP8266 and Arduino

 

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.

Parameter for Patient Monitoring

 

Step 4:- You will see three charts as shown below. Note the Write API key, we will use this key in our code.

Parameters Graph on Thingspeak for Patient Monitoring

 

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.

Creating new ThingHTTP

 

Configuring IFTTT for triggering Mail/SMS based on ThingSpeak Values

Step 1:- Login to IFTTT and search for Webhooks and click on it.

Search for Webhooks in IFTTT

 

Step 2:- Click on Documentation.

Webhooks

 

Step 3:- Type “Patient_Info” in the event box and copy the URL. We will use this URL in ThingHTTP.

Webhooks Documentation

 

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.

Making Applet to link ThingHTTP

 

Step 5:- Click on “+this” and search for Webhooks and click on it. Choose trigger as “Receive a web request”.

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.

Complete Trigger Fields

 

Step 7:- Click on “+that” and search for Google Sheets and click on it.

Click on Add row to spreadsheet.

Create 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.

Add row to spreadsheet

 

Step 9:- Review your applet and click on finish.

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.

Setting up mailing option

 

Type the email addresses on which you wish to receive email when there is a panic to the patient.

/Enter Email address for Patient data

 

Type the body content you wish to send in the email and click on create action. Review it and finish.

Enter default text for mail

 

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.

Enter URL for New ThingHTTp

 

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%%"}

 

Enter Body text and Save ThingHTTP

 

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

Triggering Condition for monitoring Patient Parameter

 

Choose ThingHTTP from Action drop down menu and select the ThingHTTP.

Select “Run action each time condition is met” and click on Save React.

Set running Condition for Patient Monitor

 

In the same way, make React for the Panic as shown.

Enter Condition for Panic action

 

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

IoT based Patient Monitoring System using ESP8266 and Arduino

 

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.

Getting Patient Info on Spredsheet

 

Press panic button for 4-5 seconds, you will get email that patient is in problem, like shown below:

Email received when Patient is in Panic

 

Check the demonstration Video given below.

Code

#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;
  }
}
}

Video

Have any question realated to this Article?

Ask Our Community Members

Comments

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.

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);

                           ^

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.

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'

 

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!

 

 

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.

is the code error free? I want to use it for my project.

 

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

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?

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(">"))

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 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 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 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

 

Hy

'class Timer' has no member named 'every'

Please

Tell me the solution to the above error.

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?