SHT30 not working

I am facing exactly the same issue at the moment. I do not have much soldering experience but a friend of mine looked over my build and also measured the pins with a multimeter and an oscilloscope. Without looking into the exact signals, all of the pins (VCC, ground, SCL, SCA) seemed to be doing roughly what they are supposed to. Nevertheless, I am attaching some photos of my build for you to review.

When I am looking into my ESPHome logs, I see the following related to the SHT:

[20:10:05][C][i2c.arduino:037]: I2C Bus:
[20:10:05][C][i2c.arduino:038]:   SDA Pin: GPIO4
[20:10:05][C][i2c.arduino:039]:   SCL Pin: GPIO5
[20:10:05][C][i2c.arduino:040]:   Frequency: 50000 Hz
[20:10:05][C][i2c.arduino:043]:   Recovery: bus successfully recovered
[20:10:05][I][i2c.arduino:053]: Results from i2c bus scan:
[20:10:05][I][i2c.arduino:059]: Found i2c device at address 0x3C

<...>

[20:10:06][C][sht3xd:034]: SHT3xD:
[20:10:06][C][sht3xd:035]:   Address: 0x44
[20:10:06][E][sht3xd:037]: Communication with SHT3xD failed!
[20:10:06][C][sht3xd:039]:   Update Interval: 30.0s
[20:10:06][C][sht3xd:041]:   Temperature 'Temperature'
[20:10:06][C][sht3xd:041]:     Device Class: 'temperature'
[20:10:06][C][sht3xd:041]:     State Class: 'measurement'
[20:10:06][C][sht3xd:041]:     Unit of Measurement: '°C'
[20:10:06][C][sht3xd:041]:     Accuracy Decimals: 1
[20:10:06][C][sht3xd:042]:   Humidity 'Humidity'
[20:10:06][C][sht3xd:042]:     Device Class: 'humidity'
[20:10:06][C][sht3xd:042]:     State Class: 'measurement'
[20:10:06][C][sht3xd:042]:     Unit of Measurement: '%'
[20:10:06][C][sht3xd:042]:     Accuracy Decimals: 1

So in my (limited) understanding, the D1 Mini does not find the SHT although there is at least are some signal going through the I2C bus according to my friend’s measurements. The I2C device on 0x3C is the display.




Another update from my side.
I tried connecting an sgp30 to the i2c bus. That one gets immediately detected when running an i2c scanner.
The SHT30 is never detected.

Update: I bought another SHT30 on Amazon, connected it via jumper cables to the spare I2C pins and got temp/hum readings. I also double checked every soldering point with a multimeter and did not detect any spots with missing conductivity. I will know for sure if the initial sensor is faulty once I get access to a soldering station again to swap out the old and new sensor. Will post another update by then.

I have exactly the same problem.

I’ve finished soldering my AirGradient this evening with all the parts I’ve received from the DIY Kit. All sensors but the temperature/humidity seem to work; the temperature and humidity just display 0.00 / 0%.

I’ve checked the leads of the sensor with a multimeter and everything is soldered correctly, there are no short circuits and the pins check continuity.

Do I need to buy a new sensor or can this be fixed in the software?

I would argue this is hard to say in general. I have an appointment at our soldering lab tomorrow afternoon so I will be able to say more (about at least my situation) tomorrow.

Maybe an entire batch of SHT sensors is faulty? From the datasheet, I know that there is sort of a batch number on the actual sensor (the little black square on the breakout board) but I don’t have an appropriate magnifier to read the number on my sensor.

We use exactly the same sensor modules in our AirGradient ONE commercial sensor and did not detect any faulty ones in that batch so I do not think that there is an entirely bad batch.

Hello. I have the exact same problem as OP. Additionally, the display looks like its missing a few lines (they don’t light up horizontally). See attached. I have de-soldered and re-soldered the Temp sensor and still doesn’t work. Does anyone have any other solution to this issue?
Otherwise, everything else works well.

That’s what it shows for the temp sensor. I’ve used the scanner in Arduino and couldn’t find any I2C sensor other than the display.

I had the same problem (zero) after i tried to solder the sensor to another PCB. I assume that this is my fault and I just overheated it during soldering. Ordered a new one.

I finally got to solder my replacement sensor to the board and from what I can tell it works nicely now. Luckily, the SHT30 is the easiest to source where I live so it wasn’t a big deal after all.

A new SHT30 sensor also fixed my problem.

Same here, ordered 2 new SHT30’s and now everything is working perfect. :grinning:

Must have been a bad batch…

Same here, ordered a new SHT30 from Amazon (probably spent way too much but I didn’t wanted to wait on Aliexpress). Soldered it on with a bit of wire for having the temperature sensor away from the board and it works as expected.

I must have probably fried the sensor with too much heat during soldering the first time.

I checked around 5 SHT30 from that batch and they all worked for me. One did not work initially and then I resoldered the pins and it started working.

Same problem here. Picked up a new SHT30 online and it’s now working as expected.

I have this same problem, I ordered the diy pro kit and assembled it recently, right off the bat the temperature and humidity readings were zero. While building I removed the two pullup resistors from the SHT31 board as instructed. After finding this thread I tried installing some 2.2k resistors I had laying around and that got the temperature working most of the time but now the TVOC is stuck showing zero and occasionally the temperature still drops out. Today I saw the CO2 value drop a few times as well but so far the display is working fine. Did anyone ever find a conclusive solution to this? I’ve built quite a few gadgets around the ESP8266 and various I2C sensors and I’ve never had problems like this. I took a cursory glance with a scope right after I built it and saw reasonable looking activity on the I2C bus but it’s pretty hard to tell which data I’m looking at. In the meantime I ordered another SHT31 to try but I’m still waiting for that to arrive.

Try to update to the latest AirGradient Arduino library. We made the CO2 readings much more robust in the last update.

I already had the latest libraries. I ordered another SHT31 module from a random Chinese seller, that arrived recently so I soldered on the header and popped it in today and now it’s been rock solid so far. I’m really curious why people are having problems with these sensors, maybe there is a bad batch that has an unusually high failure rate, maybe counterfeit parts? I don’t know, but the replacement I bought looks identical to the one that came with the kit and it works perfectly whereas the other one was flaky from the start. The only difference in the process is originally I removed the pullup resistors as instructed and this time I left them as-is and installed the module as received.

What I often see is that even solder points that look good are actually not working well. So reflowing the solder often helps.

We use the same SHT module in our commercial monitor that we test every unit and never had an issue. So I do not think the module has wide spread issues.

I have >30 years of soldering experience, including some time doing it professionally so I don’t think that was the problem. I suppose it’s possible ESD damaged it since I built the thing on my coffee table so I could sit on the sofa instead of hiding out in the lab but who knows. Whatever the case it’s working great now.