UM-0085-B09
DT80 Range User Manual
Page 343
RG
Testing and Configuring an SDI-12 Device
SDI-12 Address
The first task is to determine the address of the sensor. All SDI-12 sensors are able to be set to one of at least ten
different addresses. Depending on the sensor, this may be done by:
•
changing a hardware setting, e.g. DIP switches
•
sending an SDI-12 "change address" command (aAb!, where a is the current address and b is the new address)
•
connecting the sensor to a PC serial port and using configuration software supplied by the sensor manufacturer.
You may also need to use this configuration software to configure other aspects of the device – for example the
device's SDI-12 interface may be disabled by default, so you would need to enable it using the configuration
software.
Consult the sensor's documentation to determine how to set its address. Note that all SDI-12 sensors are factory set to
address 0. If you are only connecting one sensor to the SDI-12 bus then you can leave it set to this value.
Using SDI12SEND
The DT80's
SDI12SEND
command allows you to manually send SDI-12 commands to the sensor for testing and
configuration purposes. The format of this command is as follows:
SDI12SEND
channel
"
string
"
where:
•
channel is the digital I/O channel (
5-8
) (
4
for DT81/82E)
•
string is a valid SDI-12 command string to send to the device. All commands start with the sensor address (
0-
9
,
A-Z
or
a-z
) and end with a ! character.
If there is a reply from the device then it will be displayed, assuming the
/M
(enable messages) and
/h
(free format)
switches are set.
For example, the
a
I!
command (
a
= address) should result in the sensor returning an identification string, e.g.
SDI12SEND 5 "0I!"
5SDI12: 0I!012SENTEK XEPI 1165FA14F000800
In this example a sensor with address
0
is connected to digital channel
5D
. The output of the
SDI12SEND
command
shows the complete transaction: the first few characters (up to the
!
) are the command string that was sent, the rest are
the response from the sensor. In this case, the response indicates:
•
0
– the sensor's address
•
12
– the version of SDI-12 supported by the sensor (1.2)
•
SENTEK
– the sensor manufacturer
•
XEPI
– the model name
•
116
– the sensor firmware version
•
5FA14F000800
– other sensor details, e.g. serial number
If a valid response is not received, an error message will be displayed, e.g.:
SDI12SEND 5 "3I!"
5SDI12: 3I! *no response
In this case the command was sent to the address 3, which is the wrong address. This error may also indicate a wiring
problem, or perhaps the SDI-12 interface on the device has not been enabled.
Errors such as "*
framing error
", possibly in conjunction with a garbled looking message, generally indicate an
address conflict (more than one device with the same address is connected) although it may also indicate an electrical
noise issue.
Reading Data from SDI-12 Devices
Measurement Modes
SDI-12 sensors can operate in one of two different modes:
•
Measure on demand
is the traditional SDI-12 method, which all sensors support. The sensor is idle (typically in
a low power mode) until it is woken by the data logger sending it a measurement request. The sensor then
takes the measurement and then, possibly several seconds later, returns the data.
•
Continuous measurement
is an alternative method, supported by some SDI-12 sensors. The sensor takes
measurements at regular intervals, then when the data logger requests data it immediately replies with the last
reading it took.