NewPing allows interfacing with ultrasonic sensors simple, fast & powerful.
Initially, I was not happy with how poorly ultrasonic sensors performed. I soon realized the problem was not the sensor, it was the available ping and ultrasonic libraries causing the problem. The NewPing library totally fixes these problems, adds many new features, and breathes new life into these very affordable distance sensors.

Author: Tim Eckel

Maintainer: Tim Eckel

Read the documentation

Go to repository


This library is compatible with the avr, arm, megaavr, esp32 architectures so you should be able to use it on the following Arduino boards:

Compatibility Note

Note: while the library is supposed to compile correctly on these architectures, it might require specific hardware features that may be available only on some boards.


To use this library, open the Library Manager in the Arduino IDE and install it from there.