Connecting and Calibrating a Temperature Sensor to an Arduino Uno


Share This Post

In this tutorial, we will show you how to connect an Atlas Scientific EZO™ RTD Temperature Circuit and a PT-1000 Temperature Probe to an Arduino Uno. There are multiple ways to connect Atlas Scientific sensors to an Arduino, but for ease of use; we will be using a simple setup that will get our temperature sensor running in UART mode in no time!

There is no shortage of temperature probes out there, and the most accurate of them all is the platinum RTD (Resistance Temperature Detector) probe. However, converting the resistance of platinum to an actual temperature is unusually complicated. Fortunately, the Atlas Scientific EZO™ RTD Circuit makes taking high accuracy readings from a platinum RTD probe easy.

Necessary items

Before we begin have the following items readily available:

  • 1x Atlas Scientific EZO™ RTD Temperature Circuit
  • 1x Atlas Scientific PT-1000 Temperature Probe
  • 1x Atlas Scientific Pre-Assembled Female BNC
  • 1x Breadboard
  • 1x Arduino Uno (most commonly used Arduino)1x USB cable type A – B male/male
  • 4x Different colored male/male jumper wires
  • 2x Small jumper wires

Step 1. Wiring the Circuit

When connecting an EZO™ circuit to an Arduino or a Raspberry Pi, try to remember that organization is key, which is why we are using 4 different colored jumper wires. Sure, we all know that Red is VCC and Black is GND. However, over the years we have seen many people use the same-colored jumper wires throughout their entire project. I know, having all the jumper wires in black looks really cool… but it’s very easy to get lost in your own mess. For this tutorial, we are going to use Red, Black, Yellow, and Green.

We are going to follow this wiring diagram. Do not worry, it looks more complicated than it really is!

Let’s start by placing the EZO™ RTD Temperature Circuit into the middle of the breadboard.

You can use any size breadboard you would like. For this tutorial, I am using a tiny one.

Next, we’re going to place one of the small jumper wires to the left side of the EZO™ RTD Temperature Circuit, so that it bridges the gap in the middle of the breadboard, as shown in the image below.

Once that small jumper wire is in the correct spot, place the second small jumper wire under the VCC pin at the bottom of the EZO™ RTD Temperature Circuit, as shown in the image below. This will extend the VCC line up towards the top of the breadboard.

Now that we extended the VCC line, it’s time to connect the jumper wires. Place the green jumper wire in the slot just above the RX pin of the EZO™ RTD Temperature Circuit.

Next, place the yellow jumper wire in the slot just above the TX pin.

Then, place the black jumper wire in the slot just above the GND pin.

Lastly, place the red jumper wire one slot over to the left, so it lines up with the smaller jumper wire, as shown in the image below.

Step 2. Wiring the Arduino Uno

Alright, we are making good progress, our breadboard and circuit are all wired up. Now, let’s move on to the Arduino Uno.

Let’s start by placing the yellow jumper wire into pin 2 on the Arduino Uno board.

Then, place the green jumper wire into pin 3 on the Arduino Uno board.

These two jumper wires are important as they will allow both the EZO™ RTD Temperature Circuit and the Arduino Uno board to communicate with each other.

Next, place the red jumper wire into the 5V pin. And finally, place the black jumper wire into any of the 2 GND or ground pins near the 5V pin.

These two jumper wires will supply power and a ground line from the Arduino Uno to the EZO™ RTD Temperature Circuit.

Now that all four of the jumper wires have been connected, we are ready for the Pre-assembled Female BNC. Place it on the breadboard such that the pins highlighted by the white rectangle line up with the PRB and PGND pins on the EZO™ RTD Temperature Circuit. Then, connect the PT-1000 temperature probe to the BNC.

Step 3. Power it up!

Using the USB cable type A – B male/male, connect one end into your PC and the other into the Arduino Uno board.

Once the USB cable has been connected at both ends, you will notice the LEDs on the Arduino are now lit up and blinking. The EZO™ RTD Temperature Circuit should also be lit up and blinking.

We are all finished with the wiring, now comes the fun part.

Side Note
All Atlas Scientific Sensors have two working modes, UART and I2C. Each of these modes are identified by a color. If your EZO circuit is blinking green you are in UART mode. If the circuit is showing a solid blue, you are in I2C mode.

By default, all Atlas Scientific Sensors should come in UART mode.

However, if your EZO™ RTD Temperature Circuit is a solid blue (I2C mode) refer to the Datasheet on how to change modes.

Step 4. Flashing the code

If you do not already have the Arduino IDE software installed onto your computer, please do so now, as we will be using it for the last section of this tutorial. You can download the Arduino IDE software by clicking HERE.

Next, we need to get the Arduino Uno Sample code, instead of writing it all out, let’s just download it from our website. Click HERE to download the code!

Extract the sample code *.ino file and run it. The Arduino IDE software will inform you that the *.ino file needs to be placed within its own sketch folder, just click OK to continue.

You should now be in the Arduino IDE software.

We’re almost ready to take readings from the EZO™ RTD Temperature Circuit, but before we do, we must make sure that the Arduino IDE software knows which board we are using. Go to Tools > Board > Arduino AVR Boards > and make sure that Arduino Uno is selected.

Finally, you must tell the software which COM port on your computer the Arduino Uno board is connected to. Go to Tools > Port > and choose the correct COM port.

Now that everything has been properly set up, and the code is ready to go, press the upload button (located at the top left) and it will upload the code directly to your Arduino Uno board.

From within the Arduino IDE Software, open the Serial Monitor (looks like a magnifying glass located at the top right) and make sure to set it to append carriage return only and set the baud rate to 9600. Now, you can start taking readings from the EZO™ RTD Temperature Circuit.

Step 5. Calibration

Calibration can be done at any value; a simple method is to calibrate the probe in boiling water. The boiling point of water is 100 ℃ (depending on your altitude).

Place the PT-1000 probe in a beaker of water and bring the water to a boil. Watch the readings within the Serial Monitor, and once they hit 100 calibrate to that temperature by entering:

Cal,100 (press enter)
The EZO™ RTD Temperature Circuit will respond with: *OK.

The EZO™ RTD Temperature Circuit has been calibrated and you are now ready to take temperature readings!

Temperature Probes & Sensors

Subscribe To Our Newsletter

Get product updates and learn from the best!

More To Explore


How To Improve Pond Water Quality & Master Maintenance

Some of the practices that can be carried out include but are not limited to the regular removal of organic debris from the pond, the introduction of aquatic plants for nutrient absorption and oxygenation, and the addition of beneficial bacteria to break down waste. Constant pH, temperature, and oxygen level checks also assist in keeping


Understanding The Role Of ORP In A Reverse Osmosis (RO) Plant

Oxidation-reduction potential (ORP) or redox monitors the condition of the reverse osmosis (RO) plant. The ORP value indicates if the membrane will be susceptible to attack by chlorine or other oxidizers, which can cause significant damage, and shorten the lifespan of the RO plant, thus increasing maintenance costs. ORP is also used to detect the

Want to learn more about our products?

Scroll to Top

To track your order please enter your Order ID in the box below and press the "Track" button. This was given to you on your receipt and in the confirmation email you should have received.