Hi everyone,
I have a problem with my HDC2010 temperature and humidity sensor from TI. I wanted to reach out to TI on their E2E forum, but I had a very hard time even registering, so I'm hoping someone might be able to help me here.
Hardware
I'm using a SAM R34 development board called Penguino Feather. It's inserted into a custom PCB. There are 3 sensors on one power branch controlled by a load switch, all of them are interfaced via I2C, but have unique addresses. One of these sensors is the HDC2010 humidity sensor from TI.
Core
I'm using this Arduino core for the SAM R34 ported to PlatformIO.
Software
I'm using the official Arduino library from TI for interfacing this sensor. The whole codebase for my project is nearly a 1000 lines long, though the code, which I use for interfacing the sensor can be boiled down to the "HDC2010 Demo.ino" which I attached to this post.
What works
I'm able to turn on the VCC1 power branch on my board and power all the sensors. I'm able to get the I2C address of all the sensors with the I2C scanner sketch. I'm able to connect to the sensor with the provided library. I'm able to measure temperature with the sensor.readTemp() method and I'm also able to turn on and off the integrated heater and watch the temperature jumb by around 50°C.
What doesn't work
Reading humidity. The sensor.readHumidity() method always returns zero. I tried changing all the settings the sensor has, it didn't help. The sensor clearly works, because all the other methods work. I tried replacing the sensor with a new one, thinking that it might be some random hardware issue, but I got the same result.
From what I've seen, I think that this is a software issue, rather than a software issue. I don't think I'm able to test the I2C interface very much, because I don't currently have a signal analyzer at my disposal. Does anyone recognize a problem I'm not seeing? Thank you.
HDC2010 Demo.ino (1018 Bytes)