ESP8266 with ultrasonic sensor - installation error

Hello I’m trying to install my ESP8266 with an ultrasonic sensor in ESPHome.
See image:

I added the following code:

esphome:
  name: esp8266
  friendly_name: ESP8266

esp8266:
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "KDNg+ZoUoGyh7QPbddddcPcgyIX4B4qI8cB02BT1Uo="

ota:
  password: "b6f87841af9ca0dffff76110bb4f386ee"

wifi:
  ssid: !secret wlan_name
  password: !secret wlan_passwort

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

captive_portal:


# Example configuration entry
sensor:
  - platform: ultrasonic
    trigger_pin: D1
    echo_pin: D2
    name: "Ultrasonic Sensor"

Unfortunately, I get the following message when installing:

INFO Reading configuration /config/esphome/esp8266.yaml...
Failed config

sensor.ultrasonic: [source /config/esphome/esp8266.yaml:33]
  platform: ultrasonic
  
  Cannot resolve pin name 'D1' for board esp01_1m.
  trigger_pin: D1
  
  Cannot resolve pin name 'D2' for board esp01_1m.
  echo_pin: D2
  name: Ultrasonic Sensor

Anyone know where the error is?

Thanks.

Greeting Werner

Those pin names are not defined for the board (esp01_1m) chosen. Isn’t that a D1 or D1 Mini on the photo? ESPHome has several mappings of pins to the actual GPIO here.

Otherwise, with any board you can always use the GPIOx definitions. So, here D1=GPIO5 and D2=GPIO4.

1 Like

Many thanks for the answer.
Unfortunately I’m a total beginner.
I have this board:
D1 Mini NodeMcu mit ESP8266-12F WLAN Module CH340G Lua – AZ-Delivery

The PINs are explained here:
https://cdn.shopify.com/s/files/1/1509/1638/files/D1_Mini_Pinout_Diagram.pdf?5603303439559815202

Can you tell me how I should change my code?

Greeting Werner

So, the simplest option to make D1/D2 work is to change the board type:

...
esp8266:
  board: d1_mini
...

And the other thing you can do (but don’t have to after making the above change) is to use the GPIOx format:

sensor:
  - platform: ultrasonic
    trigger_pin: GPIO5
    echo_pin: GPIO4
    name: "Ultrasonic Sensor"

A good resource for pin mappings and hints on which pins work with various boards is this reference.

2 Likes

Oh great.
Changed it with the board.
Thanks very much. The installation seems to have worked:

INFO Reading configuration /config/esphome/esp8266.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing esp8266 (board: d1_mini; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- ESPAsyncTCP-esphome @ 1.2.3
|-- ESPAsyncWebServer-esphome @ 2.1.0
|   |-- ESPAsyncTCP-esphome @ 1.2.3
|   |-- Hash @ 1.0
|   |-- ESP8266WiFi @ 1.0
|-- DNSServer @ 1.1.1
|-- ESP8266WiFi @ 1.0
|-- ESP8266mDNS @ 1.2
|-- noise-c @ 0.1.4
|   |-- libsodium @ 1.10018.1
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/api_connection.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/api_frame_helper.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/api_pb2.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/api_pb2_service.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/api_server.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/list_entities.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/proto.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/subscribe_state.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/api/user_services.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/esp8266/core.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/esp8266/gpio.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/esp8266/preferences.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/logger/logger.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/md5/md5.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/mdns/mdns_component.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/mdns/mdns_esp32.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/mdns/mdns_rp2040.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/network/util.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/ota/ota_backend_arduino_rp2040.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/ota/ota_component.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/sensor/automation.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/sensor/filter.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/sensor/sensor.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/socket/socket.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/ultrasonic/ultrasonic_sensor.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/web_server_base/web_server_base.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/wifi/wifi_component.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/wifi/wifi_component_esp32_arduino.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/wifi/wifi_component_esp_idf.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/components/wifi/wifi_component_pico_w.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/application.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/color.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/component.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/component_iterator.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/controller.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/entity_base.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/helpers.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/log.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/scheduler.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/esphome/core/util.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/src/main.cpp.o
Generating LD script /data/esp8266/.pioenvs/esp8266/ld/local.eagle.app.v6.common.ld
Compiling /data/esp8266/.pioenvs/esp8266/lib7cf/ESPAsyncTCP-esphome/AsyncPrinter.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib7cf/ESPAsyncTCP-esphome/ESPAsyncTCP.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib7cf/ESPAsyncTCP-esphome/ESPAsyncTCPbuffer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib7cf/ESPAsyncTCP-esphome/SyncClient.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib7cf/ESPAsyncTCP-esphome/tcp_axtls.c.o
Compiling /data/esp8266/.pioenvs/esp8266/libaf0/Hash/Hash.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/BearSSLHelpers.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/CertStoreBearSSL.cpp.o
Archiving /data/esp8266/.pioenvs/esp8266/lib7cf/libESPAsyncTCP-esphome.a
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFi.cpp.o
Archiving /data/esp8266/.pioenvs/esp8266/libaf0/libHash.a
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiAP.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiGratuitous.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiMulti.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiSTA-WPS.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiSTA.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/ESP8266WiFiScan.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/WiFiClient.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/WiFiClientSecureBearSSL.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/WiFiServer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/WiFiServerSecureBearSSL.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/WiFiUdp.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib67b/ESP8266WiFi/enable_wifi_at_boot_time.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/AsyncEventSource.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/AsyncWebSocket.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/WebAuthentication.cpp.o
Archiving /data/esp8266/.pioenvs/esp8266/lib67b/libESP8266WiFi.a
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/WebHandlers.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/WebRequest.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/WebResponses.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3b6/ESPAsyncWebServer-esphome/WebServer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/libecb/DNSServer/DNSServer.cpp.o
Archiving /data/esp8266/.pioenvs/esp8266/libecb/libDNSServer.a
Compiling /data/esp8266/.pioenvs/esp8266/lib3ff/ESP8266mDNS/ESP8266mDNS.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3ff/ESP8266mDNS/LEAmDNS.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3ff/ESP8266mDNS/LEAmDNS_Control.cpp.o
Archiving /data/esp8266/.pioenvs/esp8266/lib3b6/libESPAsyncWebServer-esphome.a
Compiling /data/esp8266/.pioenvs/esp8266/lib3ff/ESP8266mDNS/LEAmDNS_Helpers.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3ff/ESP8266mDNS/LEAmDNS_Structs.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib3ff/ESP8266mDNS/LEAmDNS_Transfer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_aead/chacha20poly1305/sodium/aead_chacha20poly1305.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_core/ed25519/core_ed25519.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_core/ed25519/core_ristretto255.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_core/ed25519/ref10/ed25519_ref10.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_hash/crypto_hash.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_hash/sha256/cp/hash_sha256_cp.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_hash/sha256/hash_sha256.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_onetimeauth/crypto_onetimeauth.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_scalarmult/crypto_scalarmult.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_stream/chacha20/ref/chacha20_ref.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_stream/chacha20/stream_chacha20.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_stream/crypto_stream.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/crypto_verify/sodium/verify.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/sodium/codecs.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/sodium/core.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/sodium/runtime.c.o
Archiving /data/esp8266/.pioenvs/esp8266/lib3ff/libESP8266mDNS.a
Compiling /data/esp8266/.pioenvs/esp8266/lib94d/libsodium/sodium/utils.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/openssl/cipher-aesgcm.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/ref/cipher-aesgcm.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/ref/cipher-chachapoly.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/ref/dh-curve25519.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/ref/hash-blake2b.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/ref/hash-blake2s.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/ref/hash-sha256.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/sodium/cipher-aesgcm.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/sodium/cipher-chachapoly.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/sodium/dh-curve25519.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/sodium/hash-blake2b.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/backend/sodium/hash-sha256.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/aes/rijndael-alg-fst.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/blake2/blake2b.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/blake2/blake2s.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/chacha/chacha.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/donna/curve25519-donna-c64.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/donna/curve25519-donna.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/donna/poly1305-donna.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/sha2/sha256.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/sha2/sha512.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/crypto/x25519/x25519.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/cipherstate.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/dhstate.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/errors.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/handshakestate.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/hashstate.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/internal.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/names.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/patterns.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/rand_os.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/rand_sodium.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/randstate.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/signstate.c.o
Archiving /data/esp8266/.pioenvs/esp8266/lib94d/libsodium.a
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/symmetricstate.c.o
Compiling /data/esp8266/.pioenvs/esp8266/lib729/noise-c/protocol/util.c.o
Archiving /data/esp8266/.pioenvs/esp8266/libFrameworkArduinoVariant.a
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Crypto.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Esp-frag.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Esp-version.cpp.o
Archiving /data/esp8266/.pioenvs/esp8266/lib729/libnoise-c.a
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Esp.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/FS.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/FSnoop.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/FunctionalInterrupt.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/HardwareSerial.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/IPAddress.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/LwipDhcpServer-NonOS.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/LwipDhcpServer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/LwipIntf.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/LwipIntfCB.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/MD5Builder.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Print.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Schedule.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/StackThunk.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Stream.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/StreamSend.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Tone.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/TypeConversion.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/Updater.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/WMath.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/WString.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/abi.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/aes_unwrap.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/base64.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/cbuf.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/cont.S.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/cont_util.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_app_entry_noextra4k.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_eboot_command.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_features.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_flash_quirks.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_flash_utils.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_i2s.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_main.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_non32xfer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_noniso.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_phy.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_postmortem.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_si2c.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_sigma_delta.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_spi_utils.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_timer.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_vm.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_waveform_phase.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_waveform_pwm.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_wiring.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_wiring_analog.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_wiring_digital.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_wiring_pulse.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_wiring_pwm.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/core_esp8266_wiring_shift.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/crc32.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/debug.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/exc-c-wrapper-handler.S.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/exc-sethandler.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/flash_hal.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/gdb_hooks.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/heap.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/hwdt_app_entry.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/libb64/cdecode.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/libb64/cencode.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/libc_replacements.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/mmu_iram.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/reboot_uart_dwnld.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/spiffs/spiffs_cache.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/spiffs/spiffs_check.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/spiffs/spiffs_gc.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/spiffs/spiffs_hydrogen.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/spiffs/spiffs_nucleus.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/spiffs_api.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/sqrt32.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/stdlib_noniso.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/time.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/uart.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/umm_malloc/umm_info.c.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/umm_malloc/umm_integrity.c.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/umm_malloc/umm_local.c.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/umm_malloc/umm_malloc.cpp.o
Compiling /data/esp8266/.pioenvs/esp8266/FrameworkArduino/umm_malloc/umm_poison.c.o
Archiving /data/esp8266/.pioenvs/esp8266/libFrameworkArduino.a
Linking /data/esp8266/.pioenvs/esp8266/firmware.elf
RAM:   [====      ]  41.8% (used 34228 bytes from 81920 bytes)
Flash: [=====     ]  46.9% (used 489773 bytes from 1044464 bytes)
Building /data/esp8266/.pioenvs/esp8266/firmware.bin
esp8266_copy_factory_bin(["/data/esp8266/.pioenvs/esp8266/firmware.bin"], ["/data/esp8266/.pioenvs/esp8266/firmware.elf"])
======================== [SUCCESS] Took 150.54 seconds ========================
INFO Successfully compiled program.
INFO Resolving IP address of esp8266.local
INFO  -> 192.168.178.101
INFO Uploading /data/esp8266/.pioenvs/esp8266/firmware.bin (493920 bytes)
INFO Compressed to 346487 bytes
Uploading: [============================================================] 100% Done...


INFO Waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from esp8266.local using esphome API
WARNING Can't connect to ESPHome API for esp8266.local: Error resolving IP address: [Errno -5] No address associated with hostname
INFO Trying to reconnect to esp8266.local in the background
INFO Successfully connected to esp8266.local
[13:10:18][I][app:102]: ESPHome version 2023.2.4 compiled on Mar 12 2023, 13:08:12
[13:10:18][C][wifi:504]: WiFi:
[13:10:18][C][wifi:362]:   Local MAC: 48:55:19:16:8B:C6
[13:10:18][C][wifi:363]:   SSID: [redacted]
[13:10:18][C][wifi:364]:   IP Address: 192.168.178.101
[13:10:18][C][wifi:365]:   BSSID: [redacted]
[13:10:18][C][wifi:367]:   Hostname: 'esp8266'
[13:10:18][C][wifi:369]:   Signal strength: -45 dB ▂▄▆█
[13:10:18][C][wifi:373]:   Channel: 11
[13:10:18][C][wifi:374]:   Subnet: 255.255.255.0
[13:10:18][C][wifi:375]:   Gateway: 192.168.178.1
[13:10:18][C][wifi:376]:   DNS1: 192.168.178.1
[13:10:18][C][wifi:377]:   DNS2: 0.0.0.0
[13:10:18][C][logger:293]: Logger:
[13:10:18][C][logger:294]:   Level: DEBUG
[13:10:18][C][logger:295]:   Log Baud Rate: 115200
[13:10:18][C][logger:296]:   Hardware UART: UART0
[13:10:18][C][ultrasonic.sensor:045]: Ultrasonic Sensor 'Ultrasonic Sensor'
[13:10:18][C][ultrasonic.sensor:045]:   State Class: 'measurement'
[13:10:18][C][ultrasonic.sensor:045]:   Unit of Measurement: 'm'
[13:10:18][C][ultrasonic.sensor:045]:   Accuracy Decimals: 2
[13:10:18][C][ultrasonic.sensor:045]:   Icon: 'mdi:arrow-expand-vertical'
[13:10:18][C][ultrasonic.sensor:046]:   Echo Pin: GPIO4
[13:10:18][C][ultrasonic.sensor:047]:   Trigger Pin: GPIO5
[13:10:18][C][ultrasonic.sensor:048]:   Pulse time: 10 µs
[13:10:18][C][ultrasonic.sensor:049]:   Timeout: 11661 µs
[13:10:18][C][ultrasonic.sensor:050]:   Update Interval: 60.0s
[13:10:18][C][captive_portal:088]: Captive Portal:
[13:10:18][C][mdns:108]: mDNS:
[13:10:18][C][mdns:109]:   Hostname: esp8266
[13:10:18][C][ota:093]: Over-The-Air Updates:
[13:10:18][C][ota:094]:   Address: esp8266.local:8266
[13:10:18][C][ota:097]:   Using Password.
[13:10:18][C][api:138]: API Server:
[13:10:18][C][api:139]:   Address: esp8266.local:6053
[13:10:18][C][api:141]:   Using noise encryption: YES
[13:11:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:11:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:12:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:12:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:13:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:13:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:14:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:14:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:15:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:15:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:15:08][I][ota:113]: Boot seems successful, resetting boot loop counter.
[13:16:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:16:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:17:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:17:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:18:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:18:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy
[13:19:00][D][ultrasonic.sensor:036]: 'Ultrasonic Sensor' - Distance measurement timed out!
[13:19:00][D][sensor:126]: 'Ultrasonic Sensor': Sending state nan m with 2 decimals of accuracy

Unfortunately, “Unknown” is still displayed as the value for the distance sensor.
Do I possibly have to restart HA?

Greeting Werner

Now it shows something but changes the value very slowly. and not right. Currently always 1.43 or 1.44 meters or unknown.

Now the values ​​seem to be correct, but the update takes forever.
Can this be speeded up?
Sorry for the many questions.

When you run the update to the ESP device, you should see the log. Is that showing frequent updates? I don’t know what the default update_interval is, but you can specify whatever you want.

Another trick for debugging is to enable the web server on the ESP. I always throw these lines in:

# Web Server Entry
web_server:
  port: 80
  include_internal: true

Not only can you see the values right in a web browser, but this also displays the log. So, again, you can see how often it is actually updating. Yes, I’ve read all the warnings about the web server taking a lot of memory, but I have devices with up to 13 sensors and it never seems to impact performance.

1 Like

The default update interval is 60 seconds. You can change this as documented using the update_interval parameter.

1 Like

Thanks for the help.
Yes, it was the interval, I have now set it to 3 seconds. Hope that doesn’t take too much of my HA.

Thank you again

The problem isn’t so much taking core HA resources, but rapid-fire sensors sure will fill up your Recorder database if you don’t exclude them.

OK thanks. A config would be better, which only triggers when the distance changes, but then quickly.

Greeting Werner