WLED Shield ESP32 D1 mini Temperature Sensor Error

Hi - am hoping for a suggestion of what to look at to resolve my Temperature sensor issue. I’m using a Wemos D1 Mini ESP32 running WLED v.0.13.0-b6 “Toki” with the temperature usermod enabled on a v1.5.1 WLED Shield.

TEMPERATURE_PIN is set to 23 as per the following env definition:

board = esp32dev
platform = espressif32@3.2
upload_speed = 460800
build_unflags = ${common.build_unflags}
build_flags = ${common.build_flags_esp32}
  -D LEDPIN=16
  -D RLYPIN=19
  -D BTNPIN=17
lib_deps = ${esp32.lib_deps}
board_build.partitions = ${esp32.default_partitions}

I have defined a similar env for the same shield with a Wemos D1 Mini ESP8266 and it works fine where the ESP32 version shows ‘0 Sensor Error’ in the info section of WLED. Any tips would be greatly appreciated.

Try my bin file from Github maybe it will help.

Hi @srg74 - thanks for your excellent work with the wemos shield.

yes, I had tried the esp32_display_dallas.bin file but found that it caused the esp32 to become unresponsive after about a minute. I could connect but not do much, even the on/off button stopped working. I observed the same behaviour with the esp8266 in a separate test with esp8266_display_dallas.bin. I assumed that this is because I only have the dallas temperature sensor with no display and is why I attempted to build my own configuration.

My own configuration for the esp8266 worked as expected, but the esp32 is misbehaving.

Dallas & WLED & ESP32 have problems.
I am struggling with readings since the beginning. The cause IMO are incorrect timings due to dual core nature of ESP32 and interrupts needed for some features to work.
You may experimental use bin from @srg74 (which is from my fork) where I tried to slightly mitigate the problem.

@blazoncek , @srg74 - I seem to have resolved my situation. While testing, I was simply uploading and rebooting the WLED node (i.e. via software) and nothing seemed to be working. While swapping things around tonight, I turned off the power to the wled shield and when it started up again, I was getting readings from the temperature sensor correctly. Thanks for your interest in my problem.