Grove AM2315 Encased I2C Temperature and Humidity Sensor  0020-GRVOTH-DSBT.main

 

The AM2315 I2C capacitive humidity sensing digital temperature and humidity sensor contains a temperature and humidity combined sensor calibrated digital signal device. It uses special temperature and humidity acquisition technology, to ensure that the sensor has high reliability and excellent long-term stability. The sensor includes a capacitive sensor and an integrated high-precision temperature measurement device.

 

[include-page id=”buy-include-file”]

This probe has been used in numerous SwitchDoc Labs projects including Project CuracaoWeatherPi and the upcoming SunRover solar powered robot.

Features0020-GRVOTH-DSBT.aimage3

  • Comes with attached Grove connector
  • 3.3V to 5.5V I2C interface and power
  • 10 mA max current use during conversion
  • Good for 0-100% humidity readings with minimum 2% accuracy
  • Good for -20 to 80°C temperature readings ±0.1°C typical accuracy
  • Updated every 500ms (0.5 Hz)
  • Body size 98mm x 16mm diameter
  • 20 inch long – 4 wire cable
  • This board/chip uses I2C address 0x5C

 

IMG_3366SwitchDoc Labs uses these fine sensors on many of our projects, including WeatherPiProject Curacao and SunRover (a solar powered robot).    They are working well in these designs, so we decided to search out the manufacturer and carry this part for our customers.

A small microprocessor inside the AM2315 provides the readings and adjustments to the values from the sensors and supports an I2C interface for reading the finished & calibrated data.  The sensor is in a rugged case and comes with a mounting bracket.

While it is not waterproof, it is weather resistant.  This sensor does better for sensing temperature and humidity where there might be wind and rain.   SwitchDocLabs also sells a plastic sunshield for this device, which will available shortly.

When looking for the AM2315 using i2cdetect (on the Pi) or I2CTest on the Arduino, remember that this device has a sleep mode and so you may have to look twice.0016-OTH-DSBT.aimage3

Hooking it Up

Plug the Grove connector into an Grove I2C Connection on your shield.   Or use a Grove to Female Pin Header to connect up to pin headers.   You cannot change the i2c address so only one sensor per i2c bus.  However, you can use the SwitchDoc Labs 4 Channel I2C Mux to support multiple devices in one project.  You can also use the 4 Channel I2C Mux to convert the Raspberry Pi 3.3V I2C bus to 5.0V I2C.

0020-GRVOTH-DSBT.aimage2Two ~10Kohm pullup resistors on the I2C bus are required for use, connected from the SDA and SCL lines to the power wire.  Note that many devices, including the SwitchDoc Labs 4 Channel I2C Mux already have these pullup resistors.  Further note that Arduino’s DO NOT HAVE 10K Pullups on their I2C bus.

TroubleShooting

If you don’t see it on your i2cdetect on the Raspberry Pi or I2C scanner on the Arduino, remember the following two things:

1) Check your wiring. Note that the colors aren’t a reliable guide to what wire goes where. Make sure you read the label on the wires. I’m sure you have done this, but check it again. The colors vary from batch to batch.

2) The AM2315 Outdoor temperature sensor is at address 0x5C. The manufacturer of the device puts the sensor into a sleep mode except when it is going to be used to avoid self heating of the sensor. That makes sense, however, it means you have to go through a funny sequence to make sure the device is awake and responding. It doesn’t respond to an Arduino I2C scan nor a Raspberry Pi I2C scan, i2cdetect.

You can run the i2cdetect -y 1 twice quickly and it will often pick the sensor up on the second run.

The best thing to do to determine if it is actually there is run the test software and see if you are getting data. That is how we detect if it is present.

https://github.com/switchdoclabs/Pi_AM2315

Downloads

 

Raspberry Pi

Sop with has provided an excellent tutorial for hooking up the AM2315 to a Raspberry Pi here.  Note:  We don’t recommend hooking up the Raspberry Pi I2C bus to 5.0V pull-ups as shown in the tutorial.  We recommend 3.3V as the Pi I2C lines are not 5.0V tolerant.