No problem, I’ve added them to the github repository here: SaltSentryManuals/3d print files at main · Lemcke-solutions/SaltSentryManuals · GitHub
I just received my Salt Sentry. I’ve flashed the ESPHome version onto it, but I see the following in the logs:
[16:50:49][I][app:100]: ESPHome version 2024.12.2 compiled on Jan 15 2025, 16:46:19
[16:50:49][I][app:102]: Project lemcke-solutions.salt-sentry version v2.1
[16:50:49][I][i2c.arduino:096]: Results from i2c bus scan:
[16:50:49][I][i2c.arduino:098]: Found no i2c devices!
[16:50:49][E][component:082]: Component vl53l0x.sensor is marked FAILED
Is there a work-around for this? The distance and percentage sensors are returning nan as a result.
Did you use the configuration from SaltSentryManuals/ESPHome.yaml at 77b2a7bde41c42e2e6e429f3192dc026dad9ab91 · Lemcke-solutions/SaltSentryManuals · GitHub ?
The important part is:
i2c:
sda: 2
scl: 14
scan: true
I test all devices before I send them out, so the vl53l0x should be ok. I didn’t test the ESPHome configuration for a while, maybe changes in ESPHome might be causing problems. If you did use the above configuration, please let me know, then I will do some testing myself.
Thanks for responding so quickly.
I’m embarrassed to say that power cycling the device fixed this immediately. It’s been perfectly fine since.
Great to hear it’s now working.
Hi @ErikNL
I have used mine for a year without issues now. This morning it stopped reporting data.
Changing the power supply/cable didn’t seem to make a difference. Neither did reflashing.
I checked out the logs, and I think these are the relevant bits:
[11:57:44][I][i2c.arduino:069]: Results from i2c bus scan:
[11:57:44][I][i2c.arduino:075]: Found i2c device at address 0x29
[11:58:20][D][sensor:093]: 'percentage': Sending state -nan % with 1 decimals of accuracy
It seems to still find the sensor, but it doesn’t get any useful data from it. I’ve obviously done this with items at multiple distances from the sensor, yet it always seems to come back with a nan value.
Do you have any idea what this could be?
I’ve never seen this issue before. It’s interesting that the sensor is still detected on the I2C bus but isn’t returning valid data.
Could you check if the distance in centimeters is also not reported?
Feel free to send me a PM—I can exchange your device for another one so I can investigate the issue further.
I’ve setup the salt sentry and its reading a percentage level, although I can’t get the distance sensor to work, just shows as unknown?
This is the yaml code.
Hi Ed,
That’s odd, your configuration seems to be ok. The Saltsentry should report the distance in cm on the configured topic, postfixed with"_distance", so it does seem like you’ve configured it the right way.
Does te reported percentage change when you point it to a object closer by or further away?
Yes the distance reading changes, I’ve tested it on the bench and place an object underneath and the distance changed from 100% to 68%
Hi Ed,
Thanks for testing that! It’s interesting that the level reading changes but distance still shows as unknown. This isn’t an issue I’ve encountered before, but one thing you could try is using ESPHome to see if that gives a more consistent result.
I have a configuration available here: ESPHome Configuration. If you’re familiar with ESPHome, you could try flashing this and checking if the sensor reports correctly. You can always revert to the original firmware afterward if needed.
Hi Erik!
I am long due to fix this as I became a father in between things. But I have tried resetting it and reconfigured it.
But it does not update any longer. Not sure how to continue the troubleshooting. It sends values every 5 minutes but it is always the same independent of the tank level.
I am expecting hardware issue unfortunately.
I’m not familiar with ESPHome, I’ve added the device builder add on and will try and figure out all the steps to get it setup etc.
I’ll try and flash the config you’ve linked to and let you know how I get on.
Any tips appreciated.
Hi Nick, can you send me a PM with your details? than I can exchange your unit.
Hi Erik,
I’m managed to connect and setup the salt sentry in esphome, i’ve flashed the yaml config you linked to, but it doesn’t work.
I can complete the wifi part of the setup, I can see the device with the its IP address on my network and can ping it fine, but web browsing to the IP address doesn’t work.
YAML config is below. Would you mind taking a look and seeing where i’ve gone wrong please?
esphome:
name: "salt-sentry"
friendly_name: Salt Sentry
min_version: 2024.11.0
name_add_mac_suffix: false
project:
name: lemcke-solutions.salt-sentry
version: "v2.1"
esp8266:
board: esp_wroom_02
# Enable logging
logger:
# Enable Home Assistant API
api:
# Allow Over-The-Air updates
ota:
- platform: esphome
password: "1285242ebef1545569b423bdccb15bcf"
dashboard_import:
package_import_url: github://Lemcke-solutions/SaltSentryManuals/blob/main/ESPHome.yaml
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Salt-Sentry Fallback Hotspot"
password: "i6DInw0TyVYt"
captive_portal:
i2c:
sda: 2
scl: 14
scan: true
globals:
- id: full_cm
type: float
initial_value: '5'
- id: empty_cm
type: float
initial_value: '35'
sensor:
- platform: vl53l0x
id: distance_m
address: 0x29
update_interval: 60s
long_range: false
internal: true
- platform: template
unit_of_measurement: cm
icon: mdi:arrow-expand-down
name: distance
id: distance
lambda: |-
return id(distance_m).state * 100;
- platform: template
name: "percentage"
unit_of_measurement: '%'
icon: mdi:percent
lambda: |-
if (id(distance).state < id(full_cm)) {
return 100;
}
if (id(distance).state > id(empty_cm)) {
return 0;
}
return 100 - (id(distance).state - id(full_cm)) / ((id(empty_cm) - id(full_cm)) / 100);
update_interval: 60s
i’ve flashed the sensor again and adjusted the distances, and it appears to be working!!
It’s added to home assistant through esphome integration which I think is actually a better than MQTT for me.
Great to hear you’ve got it working!
I’ve used my salt sentry for almost a year, but now it isn’t sending any readings and it says this in the log. Does this mean its dead?
[E][component:082]: Component vl53l0x.sensor is marked FAILED
Complete log below
INFO Starting log output from 192.168.1.85 using esphome API
INFO Successfully connected to salt-sentry @ 192.168.1.85 in 19.596s
INFO Successful handshake with salt-sentry @ 192.168.1.85 in 0.027s
[17:50:33][I][app:100]: ESPHome version 2025.3.0 compiled on Mar 21 2025, 17:49:59
[17:50:33][I][app:102]: Project lemcke-solutions.salt-sentry version v2.1
[17:50:33][C][wifi:600]: WiFi:
[17:50:33][C][wifi:428]: Local MAC: BC:FF:4D:C7:60:4F
[17:50:33][C][wifi:433]: SSID: [redacted]
[17:50:33][C][wifi:436]: IP Address: 192.168.1.85
[17:50:33][C][wifi:439]: BSSID: [redacted]
[17:50:33][C][wifi:441]: Hostname: 'salt-sentry'
[17:50:33][C][wifi:443]: Signal strength: -70 dB ▂▄▆█
[17:50:33][C][wifi:447]: Channel: 6
[17:50:33][C][wifi:448]: Subnet: 255.255.255.0
[17:50:33][C][wifi:449]: Gateway: 192.168.1.1
[17:50:33][C][wifi:450]: DNS1: 0.0.0.0
[17:50:33][C][wifi:451]: DNS2: 0.0.0.0
[17:50:33][C][logger:177]: Logger:
[17:50:33][C][logger:178]: Max Level: DEBUG
[17:50:33][C][logger:179]: Initial Level: DEBUG
[17:50:33][C][logger:181]: Log Baud Rate: 115200
[17:50:33][C][logger:182]: Hardware UART: UART0
[17:50:33][C][i2c.arduino:071]: I2C Bus:
[17:50:33][C][i2c.arduino:072]: SDA Pin: GPIO2
[17:50:33][C][i2c.arduino:073]: SCL Pin: GPIO14
[17:50:33][C][i2c.arduino:074]: Frequency: 50000 Hz
[17:50:33][C][i2c.arduino:086]: Recovery: bus successfully recovered
[17:50:33][I][i2c.arduino:096]: Results from i2c bus scan:
[17:50:33][I][i2c.arduino:102]: Found i2c device at address 0x29
[17:50:33][C][template.sensor:022]: Template Sensor 'distance'
[17:50:33][C][template.sensor:022]: State Class: ''
[17:50:33][C][template.sensor:022]: Unit of Measurement: 'cm'
[17:50:33][C][template.sensor:022]: Accuracy Decimals: 1
[17:50:33][C][template.sensor:022]: Icon: 'mdi:arrow-expand-down'
[17:50:33][C][template.sensor:023]: Update Interval: 60.0s
[17:50:33][C][template.sensor:022]: Template Sensor 'percentage'
[17:50:33][C][template.sensor:022]: State Class: ''
[17:50:33][C][template.sensor:022]: Unit of Measurement: '%'
[17:50:33][C][template.sensor:022]: Accuracy Decimals: 1
[17:50:33][C][template.sensor:022]: Icon: 'mdi:percent'
[17:50:33][C][template.sensor:023]: Update Interval: 60.0s
[17:50:33][C][vl53l0x:024]: VL53L0X 'distance_m'
[17:50:33][C][vl53l0x:024]: State Class: 'measurement'
[17:50:33][C][vl53l0x:024]: Unit of Measurement: 'm'
[17:50:33][C][vl53l0x:024]: Accuracy Decimals: 2
[17:50:33][C][vl53l0x:024]: Icon: 'mdi:arrow-expand-vertical'
[17:50:33][C][vl53l0x:025]: Update Interval: 60.0s
[17:50:33][C][vl53l0x:026]: Address: 0x29
[17:50:33][C][vl53l0x:030]: Timeout: 10000us
[17:50:33][E][component:082]: Component vl53l0x.sensor is marked FAILED
[17:50:33][C][captive_portal:089]: Captive Portal:
[17:50:33][C][mdns:116]: mDNS:
[17:50:33][C][mdns:117]: Hostname: salt-sentry
[17:50:33][C][esphome.ota:073]: Over-The-Air updates:
[17:50:33][C][esphome.ota:074]: Address: 192.168.1.85:8266
[17:50:33][C][esphome.ota:075]: Version: 2
[17:50:33][C][esphome.ota:078]: Password configured
[17:50:33][C][safe_mode:018]: Safe Mode:
[17:50:33][C][safe_mode:019]: Boot considered successful after 60 seconds
[17:50:33][C][safe_mode:021]: Invoke after 10 boot attempts
[17:50:33][C][safe_mode:022]: Remain in safe mode for 300 seconds
[17:50:33][C][api:140]: API Server:
[17:50:33][C][api:141]: Address: 192.168.1.85:6053
[17:50:33][C][api:145]: Using noise encryption: NO
[17:51:05][D][sensor:093]: 'distance': Sending state nan cm with 1 decimals of accuracy
[17:51:08][D][sensor:093]: 'percentage': Sending state -nan % with 1 decimals of accuracy
Hi all,
For a few weeks now my sentry stopped working. Ive powered it down and up, it appears in wifi, ive set it to connect to my wifi, it sends output once and then nothing anymore. I cant seem to reach is via the ip adress and i dont even see it showing up in my router anymore. Ive connected it to a forced 2.4ghz network.
If i try to connect directly to the ip adress it just shows a blank screen.
Im not sure where to start troubleshooting. Any advice? Ive already did a reset.
Thanks in advance! Remco
Hi Remco,
please send me a DM, it might have broken in which case I can exchange it for a new one.

