Skip to main content

Iot.Device.Hcsr04.Esp32 assembly for .NET nanoFramework C# projects

Total Downloads
55.7K
55,737
Published
Aug 31, 2026
1mo ago

Get Started

dotnet add package nanoFramework.Iot.Device.Hcsr04.Esp32 --version 1.2.1040

No framework information available.

README

HC-SR04 for ESP32 with RMT - Ultrasonic Ranging Module

Device bindings for the HC-SR04 sonar distance sensor. Calculates the distance from an object by using the HC-SR04 distance sensor. Specific implementation with ESP32 using RMT. This implementation is more precise than the other generic Hcsr04.

Documentation

Usage

In most of the cases, you just need to pass the 2 pins you're going to use: the Echo and Trigger pins.

using (var sonar = new Hcsr04(4, 17))
{
    if (sonar.TryGetDistance(out Length distance))
    {
        Debug.WriteLine($"Distance: {distance.Centimeters} cm");
    }
    else
    {
        Debug.WriteLine("Error reading sensor");
    }

    Thread.Sleep(1000);
}

Note: it is not possible to use the same pin for both Trigger and Echo.

Hardware Required

  • HC-SR04
  • Male/Female Jumper Wires

Circuit

Fritz diagram

  • VCC - 5V
  • GND - GND
  • Trig - Any valid GPIO
  • Echo - Any valid GPIO

The fritz diagram above depicts how you should wire your MCU in order to run the program, the resistance for R1 is 1kOhm. (Optional). As the HCSR04 works only with 5V and the MCU are mainly 3.3V, this resistor will help protecting the MCU. Check your MCU to see if the pin is 5V tolerant or not.

Downloads by Version

Similar & Alternative Packages

Hand-picked matching NuGet libraries based on tags & ecosystem

Depended On By

Find packages that declare this package as a dependency. NuGet does not provide a reverse-dependency endpoint, so candidates are checked on demand.

Adoption Assessment

A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.

No SPDX license expression is published. Review the license text and your organisation's policy before redistribution.No target framework metadata is available. Confirm compatibility in a representative project before standardising on this package.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.