DS1631 – Arduino Code and Temperature Validation

Basic information

The DS1631 is a low cost, I2C interface digital thermometer popular in the maker community. Capable of providing 12-bit temperature readings over a -55°C to +125°C range. I have need for a digital thermometer in many of my projects and thought it would be nice to do a simple validation against a standard thermocouple. I have also provided an Arduino Script for use with the Arduinos IDE. This code comes from the archived Arduino forums; I have updated it so it will work with a newer IDE (version 1.6.6) and Wire.h library.

The thermocouple is read using a NI 9214 thermocouple input module as shown below. The wiring schematic for the DS1631 as tested is also provided. All three address pins are pulled low, to give the chip an address of 0x90.


SchematicSchematic Arduino Code and Temperature Validation (1)


The figures below are a brief set of data collected during testing of the DS1631. Here the IC is tested against a type J thermocouple. Data in the first figure was collected using a heat gun to heat up both sensors. The heat gun was set to 100 C, and the data was collected at 500 Hz for both sensors.

Read more: Arduino Code and Temperature Validation

Leave a Comment

Your email address will not be published. Required fields are marked *