Introduction: Quick Digital Thermometer Using Cheap USB to TTL Converter and DS18B20 - WITHOUT Arduino or Raspberry Pi

In my previous instructable I gave an introduction to Digital thermometer using DS18B20 and ESP8266 nodemcu board with SPI OLED display, and programming using Arduino IDE. That required knowledge of programming, basic electronics and required a bit of electronics hardware too.

But what about those who HATE programming and Electronics..... but still want to have a handy digital thermometer.

In this instructable I will go a step BACK, interfacing a digital temperature sensor DS18B20 and getting the realtime temperature readings in degrees and Fahrenheit on windows PC WITHOUT any programming :).

Here, I managed (with the help of several google searches ;)) to interface the DS18B20 with my laptop using cheaply available USB to RS232 converter. And with the help of free software "OneWireViewer" from Maxim Integrated; we can program resolution, view temperature readings or save the data in text or excel files. The best thing is we do not need any microcontroller, microprocessor, Arduino or Raspberry PI etc.

**The DS18B20 Measures Temperatures from -55°C to +125°C (-67°F to +257°F) with ±0.5°C Accuracy from -10°C to +85°C. A fairly reasonable temperature range for day to day applications and weather system. This sensor IC is 1-wire device i.e. can run only using ground and 1 additional wire ( two wires in total).

Wikipedia says "1-Wire is a device communications bus system designed by Dallas Semiconductor Corp. that provides low-speed data, signaling, and power over a single signal. 1-Wire is similar in concept to I²C, but with lower data rates and longer range. It is typically used to communicate with small inexpensive devices such as digital thermometers and weather instruments." read more here and here.

But Interfacing 1-wire devices require complex programming for bus timing adjustments. That makes life of a Common electronics enthusiast difficult. To make it easier, Maxim Integrated has made freely available OneWireViewer software for different PC operating systems. But again, it demands Expensive proprietary USB to RS232 adapters. I had a cheap USB to RS232-TTL converter lying in my drawer, and I decided to use it to communicate with DS18B20. After scratching my head and with help of great GOOGLE i finally manged to make it work with very simple connections... WITHOUT using any additional electronic component. Not even a pull-up resistor.

This DS18B20 temp sensor is available at around 2USD and cloned USB to RS232-TTL (i used one with Prolific PL2303HX) converter for around 2-3 USD on ebay,amazon or aliexpress.

Note:- In subsequent steps I am using following abbreviations for personal ease-

UTC = USB to RS232 TTL Converter

DS = DS18B20 1-wire temperature sensor with programmable resolution

Step 1: Hardware Connections Between DS18B20 (DS) and USB to RS232 TLL Converter (UTC)

Note:- In subsequent steps I am using following abbreviations for personal ease-

UTC = USB to RS232 TTL Converter

DS = DS18B20


Bill of Materials (Links for specific source of each component is given on my bloghere)

1) DS18B20

2) USB to RS232 TTL converter with Prolific PL2303HX IC

3) Few Male-Female SIL Socket Row Strip PCB Connector, can be skipped if you want to solder DS directly to UTC

4) 2 Wires (optional), soldering equipment and other accessories.

DS comes in different forms, packages. It comes as IC or on ebay,aliexpress etc we can find very cheap encapsulated versions. The one I have used is with steel encapsulation ordered from aliexpress.com (links given on my blog )

**If you are using TO-92 packaging i.e. Bare IC form shown in attached image, the pin out is - Left-Gnd, Middle-DQ or Data, Right-VCC (I have coded those lines as Black, Yellow, Red respectively to match the wire coding of encapsulated form) **In general the black wire is ground line, red is +ve VCC (+3.0 to +5.5V) and Yellow line is the DQ or data line. But we will use DS in Parasite power mode i.e. using only two wires for connections (Ground and Data).

Hardware connections: As shown in the attached figure

1) Since DS is a 1-wire device/sensor that can be powered in Parasite mode, I have shorted the Receive (RXD) and Transmit (TXD) pins of UTC and connected it to data or DQ (Yellow wire/pin 2) of DS.

2) The ground GND (Black wire/pin 1) and Power VDD (Red wire/pin 3) are shorted together and connected to ground GND of UTC.

Refer my video section here for exact wire connections and pin information.

Step 2: Installing Windows 7 or 8.1 Drivers for Cloned USB to RS232 TLL Converter (UTC) With Prolific PL2303HX IC.

Getting these cloned, cheap UTC to work in Windows is a bit tricky. We need to have right drivers to get it detected in our Device Manager of windows PCs.

The Windows 7 or 8.1 drivers for cloned UTC with Prolific PL2303HX IC. can be found here. Download this zip file and extract to some known folder. May be these work also with windows 10 etc. but I have tried this only on Win7 , 8.1. I would be happy to know results if someone tries this on win 10. For Windows XP i used driver available here.

(following sequence is for windows 8.1 PC - similar procedure needs to be followed for other Windows versions).

1) Press Windows button of your PC and search for Device Manager

2) Open Device manager and expand Ports (COM & LPT) section. Insert UTC into USB port of the PC.

3) After sometime, if drivers for the UTC are not present on your PC, an error will be indicated by Yellow triangle next to "Prolific USB to Serial Comm Port (COMxx)".... Do not Panic.

4) Follow sequences as shown in my video starting here

5) After installation of drivers, Yellow triangle should disappear- note-down the COM port number for later use.

6) After installation of drivers for converter, download the OneWireViewer PC interface software from official page of Maxim here. Choose correct operating system of your PC and whether it is 64bit or 32 bit OS.

Step 3: Installing OneWireViewer Software and Read the Temperature From DS18B20

** First remove the UTC from USB port of your PC during installation of OneWireViewer software, to avoid problems during installation of software.

1) Download the OneWireViewer and drivers from the official page of Maxim Integrated for 1-wire/iButton sensors, here.

2) After installing the software + drivers (in previous step), Insert UTC into USB port and make connections between UTC and DS. and open the OneWireViewer software.

3) Once software starts for the first time, it asks for the Adapter name and USB port number, refer this section of my video.

4) Insert the COM port number that we had noted in previous step and click OK.

5) On the Top left side, you should see the unique 64bit ID of the connected DS18B20, click on that and then on the tab named Real-time Temperature and explore other settings.... to enjoy temperature readings :).

NEXT To DO-----

1) I do not have more 1-wire devices, so trying to connect more than one device and see if it works.

2) Try same connections for USB to TTL converters with ICs other than Prolific PL2303.

if someone can try this technique it would be great to know if it works or not............ good luck.

Comments

author
PaoloC70 (author)2016-12-20

I made it with a CP2102 USB-to-Serial adapter on Win10 64 bit. In december 2016 the software is still the one shown in this instructable. I am not using the parasite power, but I feed the 18B20 with 5V from the serial adapter. Thank you for exploring this subject!

About This Instructable

4,438views

28favorites

License:

Bio: A Researcher, an Engineer and an electronics enthusiast
More by TheElectromania:Quick Digital thermometer using cheap USB to TTL converter and  DS18B20 - WITHOUT Arduino or Raspberry PiDigital thermometer on OLED display using ESP8266 ESP-12E NodeMCU and DS18B20 temperature sensorPIR Motion Detector With Arduino: Operated at Lowest Power Consumption Mode
Add instructable to: