This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

HDC3020: Trigger on Demand Mode gives only prevoius sampled data.

Part Number: HDC3020

I am using HDC3020 sensor with I2C interface to get Temperature and Humidity readings. Upon the following sequence,

Reset the sensor using reset pin

On first Trigger On demand followed by read sequence as stated below Temperature and Humidity are read 0x00

Start condition->Slave address(Write)->MSB command(0x24)->LSB command(0x00)->Repeated start->Slave address(Read)->Temperature MSB(0x00)->Temperature LSB(0x00)->CRC(0x81)->Humidity MSB(0x00)->Humidity LSB(0x00)->CRC(0x81)->Stop condition

Only upon next Trigger on Demand followed by read sequence I am getting the actual value of 1st Trigger On demand command.

Is this scenario expected. If so, how I can get the values on the same Trigger on Demand? 

  • Ruthrapathy,

    How much time are you waiting between the 0x00 LSB is sent to the part and the repeated start is issued to begin the read back of data? For command 0x2400, I would wait at least 15ms (set it to 20ms wait to be safe) for a full conversion to complete.

    Thanks

    -Alex Thompson

  • I have given delay of 20ms between sending the command 0x2400 and sending repeated start but still the problem exist (Refer attached image)

  • Thanks for sending this picture, it is helpful. This is not expected behavior, you should see a proper Temp and RH reading each time you issue the 0x2400 command, even on the first try.

    Could you please share your schematic for the HDC3020? Also, do you see this on multiple HDC3020s, or just this one device? I think this is an I2C communication issue, so I would expect you to see it on multiple parts but it would be good to check that this part isn't unique. Can you also try releasing the SDA line between the 0x2400 command and the next read request?

    Thanks

    -Alex Thompson