digitemp (1) - Linux Manuals

digitemp: program to read from 1-wire temperature sensors.


digitemp - program to read from 1-wire temperature sensors.


digitemp [options]


DigiTemp uses the Dallas 1-wire bus to read temperatures from digital sensors attached to a serial port adapter. It handles initializing the bus, searching for attached devices, reading devices and custom log strings. It suports the following temperature devices: DS1820, DS18S20, DS18B20, DS1822

It also handles the DS2406 1-wire hub switches, and DS2422 and DS2423 counters.

DigiTemp uses either the DS9097 passive serial port adapter, or the DS2480B based DS9097U adapter. 1-wire adapters from ibuttonlink.com, such as the Link45 are also supported.


At least 1 action must be given, along with some optional arguments. Actions are one (and only on) of the -w -t -a -w options
-h, -?
Show summary of options.
Show verbose output.
Initialize .digitemprc file, search the bus for all supported devices.
Initialize .digitemprc file, search the bus for all supported devices, store devices in sorted serial # order.
Walk the full device tree and display the serial number and type of all devices detected on the bus.
-s /dev/ttyS0
Set serial port to use. Make sure you have permission to access this port. For USB operation pass USB instead of /dev/ttySX
-l /var/log/temperature
Send output to logfile, the output format is defined by the .B -o command
-c digitemp.conf
Set digitemp configuration file. The default is .digitemprc in the current directory.
-r 1000
Read delay in ms. This sets the amount of time to wait between sending the temperature conversion command and reading the result. The DS18S20 takes about 750mS to do the temperature conversion. Default is 1000mS (1 sec).
-t #
Read sensor number #, the # depends on the order of the sensors in the .digitemprc file.
Quiet output, no copyright banner.
Read all sensors.
Treat DS2438 as A/D converter, output raw voltages and currents.
-d 5
Delay between samples (in seconds).
-n 50
Number of times to repeat the command.
-Ocounter format string
See Counter Format below.
-o [1..3] [output format string]
See Temperature Format below.
-HHumidity format string
See Humidity Format below.

Temperature Format

The temperature format can be either a numeric value, or a string. The numeric values select pre-configured output formats:

 One line per sensor, time, C, F (default) 
 One line per sample, elapsed time, temperature in C
 Same as #2, except temperature is in F

#2 and #3 have the data seperated by tabs, suitable for import into a spreadsheet or other graphing software.

The format string uses strftime tokens plus 5 special ones for DigiTemp:

for sensor #
for centigrade
for fahrenheit
to output the hex serial number
for seconds since Epoch.

The case of the token is important! The default format string is: "%b %d %H:%M:%S Sensor %s C: %.2C F: %.2F" which gives you an output of: May 24 21:25:43 Sensor 0 C: 23.66 F: 74.59

The DS2438 sensor can be used for a variety of things. It includes a temperature sensor and A/D converter. DigiTemp defaults to using it as a humidity sensor. The raw voltages and currents can be displayed by passing the -A argument

When the -o2 or -o3 log options are used the attached DS2438's temperatures will be output without the humidity.

Counter Format String

The counter format string is similar, adding these tokens:

is the counter #, which depends on its position in the .digitemprc file
is the count in decimal.

Humidity Format String

The Humidity format string is the same as the temperature format string with the addition of this format specifier:

is the humidity in 0-100%


This manual page was written by Jesús Roncero <jesus [at] roncero.org>, for the Debian project (but may be used by others). Modifications by Brian C. Lane <bcl [at] brianlane.com>


DigiTemp updates can be found on the http://www.digitemp.com website.