Pinouts

The HDC1008 is a I2C sensor. That means it uses the two I2C data/clock wires available on most microcontrollers, and can share those pins with other sensors as long as they don't have an address collision. For future reference, the default I2C address is 0x40 but you can adjust it by connecting the address pins to Vin ('high' logic votlage), for four possible addresess: 0x40, 0x41, 0x42 or 0x43

Power Pins:

  • Vin - this is the power pin. Unlike many sensors, this chip can be powered by 3-5 VDC, so there is no voltage regulator on board. Simply power the board with the same power as the logic level of your microcontroller - e.g. for a 5V micro like Arduino, use 5V. For a 3V ARM processor, use 3V
  • GND - common ground for power and logic

I2C Logic pins:

  • SCL - I2C clock pin, connect to your microcontrollers I2C clock line. 3-5V logic OK
  • SDA - I2C data pin, connect to your microcontrollers I2C data line. 3-5V logic OK

Optional Pins

These are pins you don't need to connect to unless you want to!

  • RDY - This is the interrupt/'ready' pin from the HDC100x. The chip has some capability to 'alert' you when data is ready to be read from the sensor. We don't use this pin in our library but it's available if you need it! It is open collector so you need to use a pull-up resistor if you want to read signal from this pin.
  • A0 A1 - These are the address select pins. Since you can only have one device with a given address on an i2c bus, there must be a way to adjust the address if you want to put more than one HDC100X on a shared i2c bus. The A0/A1 pins set the bottom 2 bits of the i2c address. There are pull-down resistors on the board so connect them to Vin to set the bits to '1'. They are read on power up, so de-power and re-power to reset the address

The default address is 0x40 and the address can be calculated by 'adding' the A0/A1 to the base of 0x40
A0 sets the lowest bit with a value of 1, A1 sets the middle bit with a value of 2. The final address is 0x40 + A1 + A0.
So for example if A1 is tied to Vin and A0 is tied to Vin, the address is 0x40 + 2 + 1 = 0x43.
If only A0 is tied to Vin, the address is 0x40 + 1 = 0x41
If only A1 is tied to Vin, the address is 0x42 + 2 = 0x42

In the first revision of the PCB for this design we swapped the silkscreen for A0 and A1 by accident. Please note A0 is the pin all the way to the left, A1 is one pin to the right. We will fix in the next order of PCBs!
This guide was first published on Jul 15, 2015. It was last updated on Jul 15, 2015. This page (Pinouts) was last updated on Aug 20, 2019.