Hi everyone, I followed this tutorial to create a sensor and I am using same devices with home assistant installation. I was able to connect and the ESP8266 is online, but I am getting the follwing error:
17:08:00][D][ultrasonic.sensor:036]: ‘Saltlevel in percent’ - Distance measurement timed out!
[17:08:00][D][sensor:126]: ‘Saltlevel in percent’: Sending state -nan % with 2 decimals of accuracy
[17:08:01][D][ultrasonic.sensor:036]: ‘Saltlevel in cm’ - Distance measurement timed out!
[17:08:01][D][sensor:126]: ‘Saltlevel in cm’: Sending state -nan cm with 2 decimals of accuracy
Thank you in advance for the help.
Detailes logs:
INFO Reading configuration /config/esphome/salt_level_sensor.yaml…
WARNING ‘salt_level_sensor’: Using the ‘_’ (underscore) character in the hostname is discouraged as it can cause problems with some DHCP and local name services. For more information, see Frequently Asked Questions — ESPHome
INFO Detected timezone ‘Europe/Paris’
INFO Starting log output from salt_level_sensor.local using esphome API
INFO Successfully connected to salt_level_sensor.local
[17:01:51][I][app:102]: ESPHome version 2022.8.1 compiled on Sep 2 2022, 16:38:50
[17:01:52][C][wifi:491]: WiFi:
[17:01:52][C][wifi:353]: Local MAC: :9F:6D:::
[17:01:52][C][wifi:354]: SSID: ‘IoT’[redacted]
[17:01:52][C][wifi:355]: IP Address: 192.168.20.145
[17:01:52][C][wifi:356]: BSSID: D2:21:F9:9C:84:F9[redacted]
[17:01:52][C][wifi:358]: Hostname: ‘salt_level_sensor’
[17:01:52][C][wifi:360]: Signal strength: -63 dB ▂▄▆█
[17:01:52][C][wifi:364]: Channel: 1
[17:01:52][C][wifi:365]: Subnet: 255.255.255.0
[17:01:52][C][wifi:366]: Gateway: 192.168.20.1
[17:01:52][C][wifi:367]: DNS1: 8.8.8.8
[17:01:52][C][wifi:368]: DNS2: 8.8.8.8
[17:01:52][C][logger:275]: Logger:
[17:01:52][C][logger:276]: Level: DEBUG
[17:01:52][C][logger:277]: Log Baud Rate: 115200
[17:01:52][C][logger:278]: Hardware UART: UART0
[17:01:52][C][uptime.sensor:031]: Uptime Sensor ‘salt_level_sensor Uptime’
[17:01:52][C][uptime.sensor:031]: State Class: ‘total_increasing’
[17:01:52][C][uptime.sensor:031]: Unit of Measurement: ‘s’
[17:01:52][C][uptime.sensor:031]: Accuracy Decimals: 0
[17:01:52][C][uptime.sensor:031]: Icon: ‘mdi:timer-outline’
[17:01:52][C][homeassistant.time:010]: Home Assistant Time:
[17:01:52][C][homeassistant.time:011]: Timezone: ‘CET-1CEST,M3.5.0,M10.5.0/3’
[17:01:52][C][version.text_sensor:021]: Version Text Sensor ‘salt_level_sensor ESPHome Version’
[17:01:52][C][version.text_sensor:021]: Icon: ‘mdi:new-box’
[17:01:52][C][restart:022]: Restart Switch ‘salt_level_sensor Restart’
[17:01:52][C][restart:022]: Icon: ‘mdi:restart’
[17:01:52][C][ultrasonic.sensor:045]: Ultrasonic Sensor ‘Saltlevel in percent’
[17:01:52][C][ultrasonic.sensor:045]: State Class: ‘measurement’
[17:01:52][C][ultrasonic.sensor:045]: Unit of Measurement: ‘%’
[17:01:52][C][ultrasonic.sensor:045]: Accuracy Decimals: 2
[17:01:52][C][ultrasonic.sensor:045]: Icon: ‘mdi:arrow-expand-vertical’
[17:01:52][C][ultrasonic.sensor:046]: Echo Pin: GPIO4
[17:01:52][C][ultrasonic.sensor:047]: Trigger Pin: GPIO5
[17:01:52][C][ultrasonic.sensor:048]: Pulse time: 10 µs
[17:01:52][C][ultrasonic.sensor:049]: Timeout: 11661 µs
[17:01:52][C][ultrasonic.sensor:050]: Update Interval: 10.0s
[17:01:52][C][ultrasonic.sensor:045]: Ultrasonic Sensor ‘Saltlevel in cm’
[17:01:52][C][ultrasonic.sensor:045]: State Class: ‘measurement’
[17:01:52][C][ultrasonic.sensor:045]: Unit of Measurement: ‘cm’
[17:01:52][C][ultrasonic.sensor:045]: Accuracy Decimals: 2
[17:01:52][C][ultrasonic.sensor:045]: Icon: ‘mdi:arrow-expand-vertical’
[17:01:52][C][ultrasonic.sensor:046]: Echo Pin: GPIO4
[17:01:52][C][ultrasonic.sensor:047]: Trigger Pin: GPIO5
[17:01:52][C][ultrasonic.sensor:048]: Pulse time: 10 µs
[17:01:52][C][ultrasonic.sensor:049]: Timeout: 11661 µs
[17:01:52][C][ultrasonic.sensor:050]: Update Interval: 10.0s
[17:01:52][C][web_server:125]: Web Server:
[17:01:52][C][web_server:126]: Address: salt_level_sensor.local:80
[17:01:52][C][mdns:094]: mDNS:
[17:01:52][C][mdns:095]: Hostname: salt_level_sensor
[17:01:52][C][ota:085]: Over-The-Air Updates:
[17:01:52][C][ota:086]: Address: salt_level_sensor.local:8266
[17:01:52][C][api:138]: API Server:
[17:01:52][C][api:139]: Address: salt_level_sensor.local:6053
[17:01:52][C][api:143]: Using noise encryption: NO
[17:01:52][C][wifi_info:009]: WifiInfo IPAddress ‘salt_level_sensor IP’
[17:01:52][C][wifi_info:011]: WifiInfo SSID ‘salt_level_sensor SSID’
[17:01:52][C][wifi_info:012]: WifiInfo BSSID ‘salt_level_sensor BSSID’
[17:01:52][C][wifi_signal.sensor:009]: WiFi Signal ‘salt_level_sensor WiFi Signal’
[17:01:52][C][wifi_signal.sensor:009]: Device Class: ‘signal_strength’
[17:01:52][C][wifi_signal.sensor:009]: State Class: ‘measurement’
[17:01:52][C][wifi_signal.sensor:009]: Unit of Measurement: ‘dBm’
[17:01:52][C][wifi_signal.sensor:009]: Accuracy Decimals: 0
[17:02:00][D][ultrasonic.sensor:036]: ‘Saltlevel in percent’ - Distance measurement timed out!
[17:02:00][D][sensor:126]: ‘Saltlevel in percent’: Sending state -nan % with 2 decimals of accuracy
[17:02:01][D][ultrasonic.sensor:036]: ‘Saltlevel in cm’ - Distance measurement timed out!
[17:02:01][D][sensor:126]: ‘Saltlevel in cm’: Sending state -nan cm with 2 decimals of accuracy
HERE is the code I am using:
---
esphome:
name: salt_level_sensor
platform: ESP8266
board: d1_mini
# WiFi connection, replace these with values for your WiFi.
wifi:
ssid: IoT
password: hidden
# Enable logging
logger:
# Enable Home Assistant API
api:
# Enable over-the-air updates.
ota:
# Enable Web server.
web_server:
port: 80
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
# Text sensors with general information.
text_sensor:
# Expose ESPHome version as sensor.
- platform: version
name: salt_level_sensor ESPHome Version
# Expose WiFi information as sensors.
- platform: wifi_info
ip_address:
name: salt_level_sensor IP
ssid:
name: salt_level_sensor SSID
bssid:
name: salt_level_sensor BSSID
# Exposed switches.
# Switch to restart the salt_level_sensor.
switch:
- platform: restart
name: "salt_level_sensor Restart"
sensor:
# Uptime sensor.
- platform: uptime
name: salt_level_sensor Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: salt_level_sensor WiFi Signal
update_interval: 60s
- platform: ultrasonic
trigger_pin: D1
echo_pin: D2
name: "Saltlevel in percent"
update_interval: 10s
filters:
# Calculates in %
# Replace 0.42 by the height of your container. From the sensor to the bottom.
# I used this website to know how I should multiply my values :https://www.skillsyouneed.com/num/percent-change.html
- lambda: return (0.42-x)*(100/0.42);
unit_of_measurement: "%"
- platform: ultrasonic
trigger_pin: D1
echo_pin: D2
name: "Saltlevel in cm"
update_interval: 10s
filters:
# Replace the 0.42 by the height of your container. From the sensor to the bottom.
# I multiplied by 100 in order to get CM since the sensor works in meters
- lambda: return (0.42-x)*100;
unit_of_measurement: "cm"