-
Notifications
You must be signed in to change notification settings - Fork 13.3k
reset after a few minutes of running #3534
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Your loop body looks huge. While I do see a few yields in there, I somehow
doubt they're enough.
I suggest timing the loop body to figure out how long you're hogging the
cpu and keeping it away from the wifi stack. There's a limit to that, and
behavior depends on wifi traffic.
…On Aug 20, 2017 5:28 PM, "Ibrahim" ***@***.***> wrote:
Basic Infos
Hi, I'm wondering if I can get some help on some issues I'm having.
The sketch is a counter using two ultrasonic sensors. When one of the
sensors is triggered followed by another trigger at the other sensor
(within a few seconds), the counter either goes up or down. The new count
number is uploaded to ubidots.
The ESP runs for about 10minutes before it resets.
The serial monitor sometimes shows that it's a reset issue (rst cause:2,
boot mode:(1,6)) or a watchdog issue (rst cause:4, boot mode:(1,6)).
I tried creating a watchdog in the code like in one of SensorsIot's videos
(#33 <#33> Internet of Things
with ESP8266 #5 <#5>: Watchdogs,
Timers & Stability on youtube
https://www.youtube.com/watch?v=D_7ciW_TCac).
This makes it run for a longer time before it resets.
I have tried unplugging the LCD (the LCD uses GPIO0 and GPIO2 pins,
because it's connected via i2c), adding pull up resistors, capacitors,
switching the ESP unit.
The ultrasonic sensors are connected to GPIO 12, 13, 14, and 15. They are
also connected to an external 5.0V source.
Unplugging the LCD makes the ESP run for a few more minutes, I don't know
why...
Settings in IDE
Arduino 1.8.0
Module: NodeMCU 1.0 ES12-E Module
Flash Size: 4MB
CPU Frequency: 80Mhz
Sketch
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <ESP8266WiFi.h>
#include <SimpleTimer.h>
#include <Ticker.h>
Ticker secondTick;
volatile int watchdogCount=0;
void ISRwatchdog(){
watchdogCount++;
if (watchdogCount==5){
ESP.reset();
}
}
// the ultrasound stuff
#define trigPin1 D7
#define echoPin1 D8
#define trigPin2 D5
#define echoPin2 D6
#define led D6
#define led2 D5
#define led3 9
int hit1 = 0, hit2 = 0;
int numEntries = 0, numExits = 0;int i=1; int k=1;
unsigned long startTime_after_1;
unsigned long startTime_after_2;
// LCD stuff
char array1[]="Hello!! "; //the string to print on the LCD
char array2[]=" "; //the string to print on the LCD
int lcd_tim = 500; //the value of delay time
// initialize the library with the numbers of the interface pins
LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display
// ultrasound stuff
// Define and initialize constants and variables that we'll use later in the code
const int sleep_time = 0.5; // Time to sleep (in seconds) between posts to Ubidots
WiFiClient client;
// After creating an account on Ubidots, you'll be able to setup variables where you
// will store the data. In order to post the measurements to the Ubidots variables,
// we need their "IDs", which are given on the website
String variable_id1 = "586cb2a876254220dc6f1e0f";
// In addition, we'll need the API token, which is what prevents other users
// Ubidots to publish their data to one of your variables
String token = "qrlbTjFXFJIgm9vYDBAFSWz3Rzq5Ny";
// We'll also initialize the values for our Wi-Fi network
const char* ssid = "Liverpool FC_2.4GHz";
const char* password = "6042140214";
//////////////////////////////////////////////////////////////////////////////////
// Function Prototypes
void ubiSave_value(String, String);
// The setup function is executed once by the ESP8266 when it's powered up or reset
void setup()
{
// Initialize Serial (USB) communication, which will be used for sending debugging messages
// to the computer
Serial.begin(115200);
//ultrasound stuff
pinMode(trigPin1, OUTPUT);
pinMode(echoPin1, INPUT);
pinMode(trigPin2, OUTPUT);
pinMode(echoPin2, INPUT);
//ultrasound stuff
// Debug messsages to indicate we're about to connect to the network
Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
// Use the scanNetworks method inside the Wi-Fi class to scan for any available Wi-Fi networks
// nearby. If none are found, go to sleep
int n = WiFi.scanNetworks();
Serial.println("scan done");
if (n == 0)
{
Serial.println("no networks found");
Serial.println("Going into sleep");
// ESP.deepSleep(sleep_time * 1000000);
}
// If networks are found, attempt to connect to our Wi-Fi network
WiFi.begin(ssid, password);
Wire.begin(2,0);
lcd.begin(); //initialize the lcd
lcd.backlight(); //open the backlight
lcd.home();
// While the connection is not established, IDLE inside this while loop
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
// Once the connection to our Wi-Fi netowrk is successful, print some debug messages
Serial.println("");
Serial.println("Wi-Fi connected");
secondTick.attach(1, ISRwatchdog);
}
////////////////////////////////////////////////////////////////////////////////
// Main code
void loop()
{
i=i+1;
watchdogCount=0;
// ultrasound stuff
//check sensor1
int duration, distance;
digitalWrite(trigPin1, LOW);
delayMicroseconds (2);
digitalWrite (trigPin1, HIGH);
delayMicroseconds (5);
digitalWrite (trigPin1, LOW);
duration = pulseIn (echoPin1, HIGH);
distance = (duration/2) / 29.1;
if(distance <= 40 && distance>=5 ){
lcd.clear();
Serial.println("Entering...");
lcd.print("Entering...");
digitalWrite(led,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
hit1 = 1;
startTime_after_1=millis(); // start timer after sensor 1
// while timer is under 3seconds, keep the sensor triggered
watchdogCount=0;
}
//check sensor2
int duration2, distance2;
digitalWrite(trigPin2, LOW);
delayMicroseconds (500);
digitalWrite (trigPin2, HIGH);
delayMicroseconds (500);
digitalWrite (trigPin2, LOW);
duration2 = pulseIn (echoPin2, HIGH);
distance2 = (duration2 / 2) / 29.1;
if(distance2 <= 40 && distance2>=5){
watchdogCount=0;
lcd.clear();
Serial.println("Exitting...");
lcd.print("Exitting...");
digitalWrite(led,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
hit2 = 1;
startTime_after_2=millis(); // start timer after sensor 2
watchdogCount=0;
}
//entry was triggered, scan exit until exit is hit
while(hit1 == 1 && hit2 == 0){
//check sensor2
int dur2, dist2;
digitalWrite(trigPin2, LOW);
delayMicroseconds (500);
digitalWrite (trigPin2, HIGH);
delayMicroseconds (500);
digitalWrite (trigPin2, LOW);
dur2 = pulseIn (echoPin2, HIGH);
dist2 = (dur2 / 2) / 29.1;
if(millis()- startTime_after_1 > 3000){
hit1 = 0;
hit2 = 0;
watchdogCount=0;
Serial.println("\tFalse Reading 1");
lcd.clear();
lcd.print("False Reading 1...");
delay(250);
yield();
break;
watchdogCount=0;
}
if(dist2 <= 40 && dist2>=5){
//reset the two values
hit1 = 0;
hit2 = 0;
watchdogCount=0;
numEntries=numEntries+1;
k=0;
Serial.println("\tENTERED");
lcd.setCursor(0, 1);
lcd.print("Entered...");
digitalWrite(led,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
delay (1000);
digitalWrite(led,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
delay(250);
yield();
break;
watchdogCount=0;
}
}
//exit was triggered, scan entry until entry is hit
while(hit1 == 0 && hit2 == 1){
//check sensor2
int dur, dist;
digitalWrite(trigPin1, LOW);
delayMicroseconds (500);
digitalWrite (trigPin1, HIGH);
delayMicroseconds (500);
digitalWrite (trigPin1, LOW);
dur = pulseIn (echoPin1, HIGH);
dist = (dur / 2) / 29.1;
if(millis()- startTime_after_2 > 3000){
hit1 = 0;
hit2 = 0;
watchdogCount=0;
Serial.println("\tFalse Reading 2");
lcd.clear();
lcd.print("False Reading 2...");
delay(250);
yield();
break;
watchdogCount=0;
}
if(dist <= 40 && dist>=5){
//reset the two values
hit1 = 0;
hit2 = 0;
watchdogCount=0;
numExits++;
k=0;
Serial.println("\tEXITED");
lcd.setCursor(0, 1);
lcd.print("EXITED...");
digitalWrite(led,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
delay (1000);
digitalWrite(led,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
delay(250);
yield();
watchdogCount=0;
break;
}
}
while(hit1 == 1 && hit2 == 1){
//reset the two values
hit1 = 0;
hit2 = 0;
watchdogCount=0;
Serial.println("\tError");
lcd.clear();
lcd.print("Error...");
delay(250);
yield();
watchdogCount=0;
break;}
/* DEBUGGING
Serial.print(distance);
Serial.print("-----");
Serial.print(distance2);
Serial.println();
*/
int counter[i];
counter[i]=numEntries - numExits;
if ((counter[i])<0){
counter[i]=0;
numEntries=0;
numExits=0;
watchdogCount=0;
}
// print the number of seconds since reset:
//lcd.println(numEntries - numExits);
Serial.println(counter[i]);
//Serial.println(k);
Serial.println("Watchdog counter= "+String(watchdogCount));
watchdogCount=0;
//delay(1000);
yield();
lcd.clear();
lcd.print("Counter: "+String(counter[i]));
delay(250);
delay(1000);
yield();
// ultrasound stuff
if (counter [i]== 0){
Serial.println("\tcounter=0");
delay(250);
yield();
watchdogCount=0;
}
if (k == 0){
watchdogCount=0;
// Call our user-defined function ubiSave_value (defined below), and pass it both the
// measurements as well as the corresponding Ubidots variable IDs
ubiSave_value(String(variable_id1), String(counter[i]));
k=1;
// Send some debug messages over USB
Serial.println("Ubidots data");
Serial.println("Number of people_1: "+String(counter[i]));
Serial.println(" Going to Sleep for a while !" );
lcd.clear();
lcd.print("Counter: "+String(counter[i]));
// deepSleep time is defined in microseconds. Multiply seconds by 1e6
//ESP.deepSleep(sleep_time * 1000000);//one or other
// Wait a few seconds before publishing additional data to avoid saturating the system
delay(sleep_time*100);
watchdogCount=0;
yield();
}
}
////////////////////////////////////////////////////////////////////////////////
// User-defined functions
// We encapsulate the grunt work for publishing temperature and humidty values to Ubidots
// inside the function ubiSave_value
void ubiSave_value(String variable_id, String value)
{
watchdogCount=0;
// Prepare the value that we're to send to Ubidots and get the length of the entire string
// that's being sent
String var = "{\"value\": " + value +"}"; // We'll pass the data in JSON format
String length = String(var.length());
// If we get a proper connection to the Ubidots API
if (client.connect("things.ubidots.com", 80))
{
Serial.println("Connected to Ubidots...");
delay(100);
// Construct the POST request that we'd like to issue
client.println("POST /api/v1.6/variables/"+variable_id+"/values HTTP/1.1");
// We also use the Serial terminal to show how the POST request looks like
Serial.println("POST /api/v1.6/variables/"+variable_id+"/values HTTP/1.1");
// Specify the contect type so it matches the format of the data (JSON)
client.println("Content-Type: application/json");
Serial.println("Content-Type: application/json");
// Specify the content length
client.println("Content-Length: "+ length);
Serial.println("Content-Length: "+ length);
// Use our own API token so that we can actually publish the data
client.println("X-Auth-Token: "+ token);
Serial.println("X-Auth-Token: "+ token);
// Specify the host
client.println("Host: things.ubidots.com\n");
Serial.println("Host: things.ubidots.com\n");
// Send the actual data
client.print(var);
Serial.print(var+"\n");
}
else
{
// If we can't establish a connection to the server:
Serial.println("Ubidots connection failed...");
}
// If our connection to Ubidots is healthy, read the response from Ubidots
// and print it to our Serial Monitor for debugging!
while (client.available())
{
char c = client.read();
Serial.print(c);
}
// Done with this iteration, close the connection.
if (client.connected())
{
Serial.println("Disconnecting from Ubidots...");
client.stop();
}
watchdogCount=0;
}
Debug Messages
stack dump after using the decode looks like this:
Decoding 419 results
0x40201420: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 45
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40204795: __yield at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_main.cpp line 56
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents/Arduino/counter_using_2_ultrasonics_ubitdots_with_lcd/counter_using_2_ultrasonics_ubitdots_with_lcd.ino line 326
0x40201436: delay at /Users/ibrahim/Library/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266/core_esp8266_wiring.c line 53
0x40202aaa: loop at /Users/ibrahim/Documents
|
Thank you for the reply. I was thinking of hooking up the sensors to a nano, and connecting the nano as an i2c slave to the ESP, but I think this setup requires less power... |
Yes it can, you just have to implement it as a state machine,
e.g.: setup(): init state to 0
void loop()
{
switch(state)
{
case 0:
handleSensor0();
++state;
beak;
case 1:
handleSensor1();
++state;
break;
etc.
with the above, the execution time of one loop() will be much smaller,
which gives the wifi stack more breathing room.
Also, use good coding practices, as in break up your code into smaller
functions, then implement the core logic or sequence by calling those
functions. You can then add/remove the function calls one by one and figure
out which is causing the problem. And add heap checks in between, and debug
msgs.
As it is, your code is one huge blob that is too hard to understand, let
alone debug.
Check that the pins of your board are really correct. Check your power
supply, I use a 5V 20A (as in twenty amps) power supply for development, to
be sure any resets or comm hangs are not caused by voltage dips (I've had
many of those).
Having said that, this is not the right forum to discuss these things. This
is an issue tracker. Please close this, adjust your design, and if you
track a problem to a piece of code in the core libs, open a new issue with
a minimal code example.
…On Aug 23, 2017 6:38 AM, "Ibrahim" ***@***.***> wrote:
Thank you for the reply.
Yeah, I don't know if the loop can shortened.
I was thinking of hooking up the sensors to a nano, and connecting the
nano as an i2c slave to the ESP, but I think this setup requires less
power...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#3534 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AQC6BmCFb83Cc2F29kap6TUNwh0TBsS3ks5sa_MMgaJpZM4O8uDy>
.
|
Thank you for the detailed response!! I will try your suggestions out. |
What happens if the state is stored in a 2-byte value and is incremented above its max value (65535 for unsigned and 32768) for signed int?
Crash, very likely. Or reset back to 0/-32767.
Odesláno z iPhonu
24. 8. 2017 v 5:31, Develo <[email protected]>:
… Yes it can, you just have to implement it as a state machine,
e.g.: setup(): init state to 0
void loop()
{
switch(state)
{
case 0:
handleSensor0();
++state;
beak;
case 1:
handleSensor1();
++state;
break;
etc.
with the above, the execution time of one loop() will be much smaller,
which gives the wifi stack more breathing room.
Also, use good coding practices, as in break up your code into smaller
functions, then implement the core logic or sequence by calling those
functions. You can then add/remove the function calls one by one and figure
out which is causing the problem. And add heap checks in between, and debug
msgs.
As it is, your code is one huge blob that is too hard to understand, let
alone debug.
Check that the pins of your board are really correct. Check your power
supply, I use a 5V 20A (as in twenty amps) power supply for development, to
be sure any resets or comm hangs are not caused by voltage dips (I've had
many of those).
Having said that, this is not the right forum to discuss these things. This
is an issue tracker. Please close this, adjust your design, and if you
track a problem to a piece of code in the core libs, open a new issue with
a minimal code example.
On Aug 23, 2017 6:38 AM, "Ibrahim" ***@***.***> wrote:
> Thank you for the reply.
> Yeah, I don't know if the loop can shortened.
>
> I was thinking of hooking up the sensors to a nano, and connecting the
> nano as an i2c slave to the ESP, but I think this setup requires less
> power...
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub
> <#3534 (comment)>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AQC6BmCFb83Cc2F29kap6TUNwh0TBsS3ks5sa_MMgaJpZM4O8uDy>
> .
>
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
If you have several thousand states, your design is far too wrong.
You have a finite small numbernof states, each of which represents a small
piece of a long sequence of code. The last state is the last to execute,
theb instead of ++state you do state=0, and your sequence starts over.
…On Aug 25, 2017 11:35 AM, "Matej Sychra" ***@***.***> wrote:
What happens if the state is stored in a 2-byte value and is incremented
above its max value (65535 for unsigned and 32768) for signed int?
Crash, very likely. Or reset back to 0/-32767.
Odesláno z iPhonu
24. 8. 2017 v 5:31, Develo ***@***.***>:
> Yes it can, you just have to implement it as a state machine,
> e.g.: setup(): init state to 0
> void loop()
> {
> switch(state)
> {
> case 0:
> handleSensor0();
> ++state;
> beak;
> case 1:
> handleSensor1();
> ++state;
> break;
> etc.
>
> with the above, the execution time of one loop() will be much smaller,
> which gives the wifi stack more breathing room.
>
> Also, use good coding practices, as in break up your code into smaller
> functions, then implement the core logic or sequence by calling those
> functions. You can then add/remove the function calls one by one and
figure
> out which is causing the problem. And add heap checks in between, and
debug
> msgs.
>
> As it is, your code is one huge blob that is too hard to understand, let
> alone debug.
>
> Check that the pins of your board are really correct. Check your power
> supply, I use a 5V 20A (as in twenty amps) power supply for development,
to
> be sure any resets or comm hangs are not caused by voltage dips (I've had
> many of those).
>
> Having said that, this is not the right forum to discuss these things.
This
> is an issue tracker. Please close this, adjust your design, and if you
> track a problem to a piece of code in the core libs, open a new issue
with
> a minimal code example.
>
> On Aug 23, 2017 6:38 AM, "Ibrahim" ***@***.***> wrote:
>
> > Thank you for the reply.
> > Yeah, I don't know if the loop can shortened.
> >
> > I was thinking of hooking up the sensors to a nano, and connecting the
> > nano as an i2c slave to the ESP, but I think this setup requires less
> > power...
> >
> > —
> > You are receiving this because you commented.
> > Reply to this email directly, view it on GitHub
> > <#3534 (comment)
>,
> > or mute the thread
> > <https://github.com/notifications/unsubscribe-auth/
AQC6BmCFb83Cc2F29kap6TUNwh0TBsS3ks5sa_MMgaJpZM4O8uDy>
> > .
> >
> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub, or mute the thread.
>
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#3534 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AQC6BlzRFeinA7kvPNakCOBm69U_ICx-ks5sbtuqgaJpZM4O8uDy>
.
|
You're right. I did mean counter++ of course.
I was just trying to point that certain values may overflow unexpectedly (byte, long, etc. )
Odesláno z iPhonu
25. 8. 2017 v 17:32, Develo <[email protected]>:
… If you have several thousand states, your design is far too wrong.
You have a finite small numbernof states, each of which represents a small
piece of a long sequence of code. The last state is the last to execute,
theb instead of ++state you do state=0, and your sequence starts over.
On Aug 25, 2017 11:35 AM, "Matej Sychra" ***@***.***> wrote:
> What happens if the state is stored in a 2-byte value and is incremented
> above its max value (65535 for unsigned and 32768) for signed int?
>
> Crash, very likely. Or reset back to 0/-32767.
>
> Odesláno z iPhonu
>
> 24. 8. 2017 v 5:31, Develo ***@***.***>:
>
> > Yes it can, you just have to implement it as a state machine,
> > e.g.: setup(): init state to 0
> > void loop()
> > {
> > switch(state)
> > {
> > case 0:
> > handleSensor0();
> > ++state;
> > beak;
> > case 1:
> > handleSensor1();
> > ++state;
> > break;
> > etc.
> >
> > with the above, the execution time of one loop() will be much smaller,
> > which gives the wifi stack more breathing room.
> >
> > Also, use good coding practices, as in break up your code into smaller
> > functions, then implement the core logic or sequence by calling those
> > functions. You can then add/remove the function calls one by one and
> figure
> > out which is causing the problem. And add heap checks in between, and
> debug
> > msgs.
> >
> > As it is, your code is one huge blob that is too hard to understand, let
> > alone debug.
> >
> > Check that the pins of your board are really correct. Check your power
> > supply, I use a 5V 20A (as in twenty amps) power supply for development,
> to
> > be sure any resets or comm hangs are not caused by voltage dips (I've had
> > many of those).
> >
> > Having said that, this is not the right forum to discuss these things.
> This
> > is an issue tracker. Please close this, adjust your design, and if you
> > track a problem to a piece of code in the core libs, open a new issue
> with
> > a minimal code example.
> >
> > On Aug 23, 2017 6:38 AM, "Ibrahim" ***@***.***> wrote:
> >
> > > Thank you for the reply.
> > > Yeah, I don't know if the loop can shortened.
> > >
> > > I was thinking of hooking up the sensors to a nano, and connecting the
> > > nano as an i2c slave to the ESP, but I think this setup requires less
> > > power...
> > >
> > > —
> > > You are receiving this because you commented.
> > > Reply to this email directly, view it on GitHub
> > > <#3534 (comment)
> >,
> > > or mute the thread
> > > <https://github.com/notifications/unsubscribe-auth/
> AQC6BmCFb83Cc2F29kap6TUNwh0TBsS3ks5sa_MMgaJpZM4O8uDy>
> > > .
> > >
> > —
> > You are receiving this because you are subscribed to this thread.
> > Reply to this email directly, view it on GitHub, or mute the thread.
> >
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub
> <#3534 (comment)>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AQC6BlzRFeinA7kvPNakCOBm69U_ICx-ks5sbtuqgaJpZM4O8uDy>
> .
>
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Basic Infos
Hi, I'm wondering if I can get some help on some issues I'm having.
The sketch is a counter using two ultrasonic sensors. When one of the sensors is triggered followed by another trigger at the other sensor (within a few seconds), the counter either goes up or down. The new count number is uploaded to ubidots.
The ESP runs for about 10minutes before it resets.
The serial monitor sometimes shows that it's a reset issue (rst cause:2, boot mode:(1,6)) or a watchdog issue (rst cause:4, boot mode:(1,6)).
I tried creating a watchdog in the code like in one of SensorsIot's videos (#33 Internet of Things with ESP8266 #5: Watchdogs, Timers & Stability on youtube
https://www.youtube.com/watch?v=D_7ciW_TCac).
This makes it run for a longer time before it resets.
I have tried unplugging the LCD (the LCD uses GPIO0 and GPIO2 pins, because it's connected via i2c), adding pull up resistors, capacitors, switching the ESP unit.
The ultrasonic sensors are connected to GPIO 12, 13, 14, and 15. They are also connected to an external 5.0V source.
Unplugging the LCD makes the ESP run for a few more minutes, I don't know why...
Thank you..
Settings in IDE
Arduino 1.8.0
Module: NodeMCU 1.0 ES12-E Module
Flash Size: 4MB
CPU Frequency: 80Mhz
Sketch
Debug Messages
stack dump after using the decode looks like this:
after I unplug the LCD,
Decoded:
The text was updated successfully, but these errors were encountered: