Let the ESP32Ping ping a remote machine.
#Note that this is a port from https://github.com/dancol90/ESP8266Ping With this library an ESP32Ping can ping a remote machine and know if it's reachable. It provide some basic measurements on ping messages (avg response time).
First, include the library in your sketch along with WiFi library:
#include <WiFi.h>
#include <ESP32Ping.h>
Next, simply call the Ping.ping()
function
IPAddress ip (192, 168, 0, 1); // The remote ip to ping
bool ret = Ping.ping(ip);
ret
will be true if the remote responded to pings, false if not reachable.
The library supports hostname too, just pass a string instead of the ip address:
bool ret = Ping.ping("www.google.com");
Additionally, the function accept a second integer parameter count
that specify how many pings has to be sent:
bool ret = Ping.ping(ip_or_host, 10);
After Ping.ping()
has been called, the average response time (in milliseconds) can be retrieved with
float avg_time_ms = Ping.averageTime();
Memory leak bug ( marian-craciunescu/ESP32Ping#4 )
averageTime changed from int
to float
.Expect the code to still work , but you should upgrade
Fixed counters data. (Any review and testing is welcomed)