SDI-12 Serial Digital Interface Standard

Technical White Paper
Printer-Friendly Version

For Unidata SDI-12 Tester which simplifies the setup and fault finding of SDI-12 sensors in the field and on the laboratory bench please see our product section.

The SDI-12 interface (standard datalogger interface 1200bps) was defined by the USGS (USA – Geological Service) to allow the industry to have an agreed interface standard for sensors which measure water and other environmental parameters. There is an SDI-12 institute which defines standards and versions for SDI-12.

The interface standard allows up to ten (10) SDI- 12 compatible instruments (sensors) to be connected to a datalogger (recorder) which is able to collect readings from the sensors over a two-wire, shared communication bus at 1200 bps. The maximum length of the SDI-12 bus (distance between sensor and recorder) is 65 meters. SDI-12 is not practical for connecting simple, low-cost sensors; it is designed to be used with microprocessor-controlled instruments.

SDI-12 Electrical Interface

The SDI-12 electrical interface uses the SDI-12 Bus to transmit serial data between SDI-12 data recorders and sensors. The SDI-12 Bus is the cable that connects multiple SDI-12 devices. This is a cable with three conductors: serial data, ground and 12 volts. This figure shows the SDI-12 Bus connecting one data recorder with two sensors. The SDI-12 Bus is capable of having 10 sensors connected to it.

  • Serial Data Line
    The data line is a bi-directional, 3 state, data transfer line. The data line uses negative logic
  • Ground Line
    The ground line must be connected to the circuit ground and the earth ground at the data recorder. The sensor circuit ground also must be connected to the ground line, but not normally to its own earth ground
  • 12 Volt Line
    The data recorder (or an external power source) sets the 12-volt line to between 9.6 volts and 16 volts, with respect to ground, as measured under a maximum sensor load of 0.5 amperes. SDI-12 does not require the data recorder to be the source of power to the 12-volt line

SDI-12 Communications Protocol

SDI-12 data recorders and sensors communicate by an exchange of ASCII characters on the data line. The data recorder sends a break to wake up the sensors on the data line. A break is a continuous high signal (5 Volts) on the data line for at least 12 milliseconds.

The data recorder then sends a command. The sensor returns the appropriate response. Each command is for a specific sensor. The first character of each command is a unique sensor address that specifies which sensor the recorder wants to communicate with.

Other sensors on the SDI-12 Bus ignore the command and return to low power standby mode. When a data recorder tells a sensor to start its measurement procedure, the recorder does not communicate with any other sensor until the data collection from the first sensor is complete.

A typical recorder/sensor measurement sequence is:

  • Step 1: The data recorder wakes all sensors on the SDI-12 Bus with a break.
  • Step 2: The recorder transmits a command to a specific, addressed sensor instructing it to make a measurement.
  • Step 3: The addressed sensor responds within 15.0 milliseconds, returning the maximum time until the measurement data will be ready and the number of data values it will return.
  • Step 4: If the measurement is immediately available, the recorder transmits a command to the sensor instructing it to return the measurement(s). If the measurement is not ready, the data recorder waits for the sensor to send a request to the recorder, which indicates that the data is ready.
  • The recorder then transmits a command to get the data.
  • Step 5: The sensor responds, returning one or more measurements.