are we online?

Hello everyone,

The reason why I would like to present to you today a project with our ESP32DevC Board is not very pleasant. Unfortunately, there are providers who, while promising to provide rural regions with fast Internet, cannot keep their promises. Since we are mainly active in the online business, a connection failure means a forced break for us, this is very annoying.

Perhaps many of you have already wondered why we are not easily reached by phone- well, the answer should now be clear.

In order to know whether we are online or not, I have quickly configured an ESP32 with RGB LED to display our online status. My colleague is currently working on a blog post on network surveillance using Nagios to record downtimes. This project will be presented shortly.

We need:

First we install the libary of pbecchiwhich the ESP8266-Libya for which ESP32 has adapted, you will find here.

We therefore invite the ESP32 ping-master.zip from GitHub. and install them as usual in the Arduino IDE under Sketch>Include Library->.Zip Library Add...

The wiring:

ESP32 LED
GPIO26 G
GPIO27 R
GNI GNI

 

The code:

 

/*
 Author: pbecc
*/
'35; undef PROVA '35; includes <WiFi.h> '35; includes  "Ping.h" // the setup function runs once when you press reset or power the board const char page[] = "AZ-DELIVERYrep";  // your network SSID (name) const char password[] = "19351384954612657685";       // your network password void setup() { Serial.start(115200); Serial.print("Connecting t");  pinMode(26, OUTPUT);  pinMode(27, OUTPUT);  digitalWrite(26, LOW);  digitalWrite(27, LOW); Serial.Print(page); // WiFi.mode(WIFI STA); WiFi.start(page, password); while (WiFi.status() != WL CONNECTED) { delay(500); Serial.print("."); } Serial.Print("Pinging address: 192.0.43.10"); } void run() { int ed[4] = { 192,0,43,10 }; int  i = 0; while (Serial.available()) { char c = Serial.read(); delay(100);    int  choice = 0; while (c != '.' &&  c != 10 && c!=255) { if (c >= '0'&& c<='9') { choice = choice*10+(c-'0'); } c = Serial.read(); } ed[i++] =choice ; } IPAddress rod = IPAddress(ed[0], ed[1], ed[2], ed[3]); Serial.printf("Ping:%d %d %d %d >", ed[0], ed[1], ed[2], ed[3]); if (ping start(rod, 4, 0, 0, 2)){ Serial.Print(Okay.);   digitalWrite(27, LOW);   digitalWrite(26, HIGH); } ed { Serial.Print(FAILED);  digitalWrite(26, LOW);    digitalWrite(27, HIGH); } delay(10000); } int Reset(char s) { char c = Serial.read(); Serial.print(c); int digit = 1,choice=0; while (c != s &&  c != 10&&c>0) { if(c>'0') choice += digit*(c - '0'); digit *= 10; c=Serial.read(); Serial.print(int(c)); } Serial.Print(digit); return digit; }

 

Until the next post and wish you a happy ending,

 

Albert Vu.

Team AZ-Delivery

 

Esp-32Projects for beginners

5 comments

Dietmar K.

Dietmar K.

Hallo,
ich habe versucht Programm zum laufen zu bringen, ich bekomme aber immer Fehlermeldungen
error: stray ‘\240’ in programm
error: stray ‘\302’ in programm
usw
Was könnte dies sein?
Für Tipps wäre ich sehr dankbar.
Viele Grüße
Dietmar

Paddy

Paddy

Moin!

Könnt Ihr dieses Projekt noch weiter ausbauen und einen Anstoß oder gar eine Lösung bieten, wie man die Daten speichern und dann später auswerten kann?

Moritz S

Moritz S

Vielen Dank für die Kommentare :-)
Nagios kennen wir noch aus Zeiten, in denen wir in großen Rechenzentren gearbeitet haben, allein schon aus Nostalgiegründen möchten wir dieses Projekt umsetzten.
Die rot/grüne Led hängt im Unternehmen an einem sehr zentralen Ort und soll lediglich unseren Mitarbeiten signalisieren wann sie sich stressfrei um anderen Aufgaben zuwenden können.

Alex

Alex

Schnelle und einfacher kommt man nicht zu einer vollständigen Netzwerk und Serviceüberwachung – und die Hardware liegt bei Euch im Lager ;-)

https://www.heise.de/ct/ausgabe/2018-19-Raspi-ueberwacht-Server-und-Netzwerkdienste-mit-Check-MK-4147940.html

Ulf Kosack

Ulf Kosack

Wenn Ihr Euch ein Gefallen tun wollt, nehmt nicht mehr Nagios. Der Open-Source-Weg heißt Icinga (https://www.icinga.com/).

Viele Grüße
Ulf

Leave a comment

All comments are moderated before being published

Recommended blog posts

  1. Install ESP32 now from the board manager
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP programming via WLAN