Ultraschall-Sensor HC-SR04: Distance measurement timed out!

Hallo zusammen,

erstmal vorweg: Ich bin absoluter Anfänger mit allen Dingen rund um Home Assistant und ähnliche Themen. Hab aber alles, was ich in den letzten Monaten aufgebaut hab, dank diverser YT-Videos hinbekommen!!
Und jetzt habe mich an mein erstes ESPHome - Projekt herangewagt und mich dabei so gut es geht an dieses Video gehalten: https://www.youtube.com/watch?v=XKuUj0ojpZw - da geht es um die Nutzung eines Ultraschall-Sensors.

Das war soweit auch super und Danke für das das Video! Ich hab’s mit dem ATOM LITE gemacht und ich denke, ich hab es im Prinzip auch zum Laufen gebracht.
Ich denke, ich hab’ die richtige Bezeichnung der Pins für den ATOM Lite im Internet gefunden und eingetragen: trigger_pin: GPIO21 / echo_pin: GPIO25 und ansonsten sieht das ziemlich gut aus.
ABER: In dem Moment, an dem die ersten Messwerte kommen sollten, bekomme ich die Fehlermeldung:

[15:13:32][D][ultrasonic.sensor:036]: ‚Ultrasonic Sensor‘ - Distance measurement timed out!
[15:13:32][D][sensor:093]: ‚Ultrasonic Sensor‘: Sending state nan m with 2 decimals of accuracy

Google hat mir ein paar wenigen Posts zu ähnlichen Problemen gezeigt, einige scheinen das durch „Herumprobieren“ mit dem Parameter „timeout“ gelöst zu haben. Das hilft bei mir aber nicht. Ich bekomme keine Werte. Habt Ihr noch eine Idee? Oder könnte der Sensor auch einfach defekt seint?

Die gesamt YAML sieht so aus:


esphome:
name: esphome-web-104ba4
friendly_name: Ultraschall_Sensor_01
min_version: 2024.11.0
name_add_mac_suffix: false

esp32:
board: esp32dev
framework:
type: esp-idf

Example configuration entry

sensor:

  • platform: ultrasonic
    trigger_pin: GPIO21
    echo_pin: GPIO25
    name: „Ultrasonic Sensor“
    update_interval: 2s
    timeout: 4m

pulse_time: 20us

filters:

lambda: if (isnan(x)) { return 999.0; } return x;

Enable logging

logger:

Enable Home Assistant API

api:

Allow Over-The-Air updates

ota:

  • platform: esphome

wifi:
on_connect:
- delay: 5s

ap:


Danke, viele Grüße und frohes neues Jahr aus NRW :smile:

Schau dir mal das Video hier dazu an:

Beim Sensor steht auch oft, dass man ihn mit 3,3V betreiben soll. Aber um die volle Distanz zu erreichen musst du ihn auf 5V verwenden.

Danke schonmal. Ich werd’ mir das anschauen!!
Ich bekomme aber leider überhaupt keine Werte. Auch wenn ich direkt die Hand darüber halte.

Hast du Tx und Rx korrekt angeschlossen? Wenn keine Werte ankommen, deutet es daraufhin, dass die Kabel nicht korrekt sind oder der Sensor defekt ist.

Bei allen Verkabelungen mit esp oder anderen chips ist das zwingend notwendig.

3v/5v auf vin
Tx auf Rx
Rx auf Tx
Massen auf gnd

1 „Gefällt mir“

Hallo in die Runde!
Ich hab das verlinkte Video oben inklusive Grundlagenvideo zu ESPHome ebenfalls geschaut und mir daraufhin die Komponenten (außer das Display) bestellt. Die Integration in ESPHome in HA hat auch soweit funktioniert.
Aktuelles Problem ist jedoch, dass in HA ein Sensor angelegt wird, der aber keinen Wert liefert

esphome:
  name: garage
  friendly_name: garage

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: !secret api

ota:
  - platform: esphome
    password: !secret ota

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Test Fallback Hotspot"
    password: "FL6XCCD1Rd3l"


captive_portal:

sensor:
  - platform: ultrasonic
    trigger_pin: GPIO27
    echo_pin: GPIO26
    name: "Entfernungsmesser"
    update_interval: 10s

Als ESP hab ich den AZ-Delivery ESP32 Dev KitC V2 ESP32-WROOM-32 gekauft. Das ist auch der, der im Video verlinkt war.

Das Log sagt folgendes:

INFO ESPHome 2024.12.4
INFO Reading configuration /config/esphome/test.yaml...
INFO Starting log output from garage.local using esphome API
WARNING Can't connect to ESPHome API for garage.local: Error resolving IP address: [Errno -5] No address associated with hostname (APIConnectionError)
INFO Trying to connect to garage.local in the background

als ich dies hinzugefügt habe, hat er mir den Sensor im HA angelegt:

# Optional manual IP
  manual_ip:
    static_ip: 192.168.....
    gateway: 192.168....
    subnet: 255.255.255.0

Jedoch bekomm ich keine Werte angezeigt.

Im Log steht folgendes:

[08:36:12][D][ultrasonic.sensor:036]: 'Entfernungsmesser' - Distance measurement timed out!
[08:36:12][D][sensor:094]: 'Entfernungsmesser': Sending state nan m with 2 decimals of accuracy

Vielen Dank im Voraus für eure Hilfe.

Welche Entfernung möchtest du denn messen?
Ist die vielleicht außerhalb der Reichweite des Ultraschallsensors?

Danke für die Rückmeldung. Daran hat es nicht gelegen. Hab verschiedene Distanzen und Oberflächen versucht. Durch Internetrecherche hab ich herausgefunden, dass folgendes dem Code hinzugefügt werden muss:


    timeout: 20m

Danach wurden sofort Werte angezeigt.
Hoffe das hilft dem ein oder anderen auch weiter!