SDI-12
SDI-12 (Serial Digital Interface at 1200 baud) is an asynchronous serial communications protocol for intelligent sensors that monitor environment data. These instruments are typically low-power (12 volts), are used at remote locations, and usually communicate with a data logger or other data acquisition device. The protocol follows a client-server configuration whereby a data logger (SDI-12 recorder) requests data from the intelligent sensors (SDI-12 sensors), each identified with a unique address.[1]
History
The first version of SDI-12 was released in 1988. It was designed by a coalition which included the
The SDI-12 Specification is maintained by a non-profit corporation called the SDI-12 Support Group. The most recent upgrade (Version 1.4) was made in July 2016.[3] The most recent version of the SDI-12 Specification (still version 1.4, with clarifications), was released on January 30, 2021.
Versions
Version 1.0 was released in 1988.
Version 1.1 was released in 1994. It was a rewriting and clarification of the version 1.0 specification under contract by Michael Jablonski's NR Systems (dba Natural Resources Consulting) and Campbell Scientific.[2][4]
Version 1.2 was released in April 1996. It defines:[3]
- Concurrent measurement command (aC!)
- Address query command (?!)
- Change address command (aAb!)
- Continuous measurement command (aR[0-9]!)
Version 1.3 was released in April 2000 and defines:[3]
- Cyclic Redundancy Check(CRC) for data validation
- Electrical interface characteristics such as number of conductors, voltage logic levels and transitions, and line impedance.
- Communications protocol such as means of establishing contact with a specific address (sensor), the measurement command set, sensor response behavior, byte frame format and allowed characters.
- Timing requirements such as length of the break condition used to awaken sensors, minimum time between messages and length of time before a sensor enters a low-power state.
Version 1.4 was released in July 2016 and defines:[3]
- High volume commands (aHA! for ASCII and aHB! for binary format) which allow up to 999 parameters to be returned from a sensor.
- Metadata Commands (aIM!) which provide meta data information about the measurement, such as the parameter name and units.
Advantages
The specification document describes a number of advantages including
- Interchangeability of sensors without reprogramming of data acquisition devices
- Power is supplied to sensors through the interface
- Ability to implement self-calibration algorithms within the sensor itself and use low-cost EEPROMs for information storage
- Applicability of training in SDI-12 to a variety of sensors and data recorders
The SDI-12 Specification is in the public domain.[5]
Drawbacks
- Specific electrical interface (serial data line, ground line, and 12-volt line)
- Baud rate limited to 1200
Details
Communication occurs over a single data line in
Electrically the protocol is a three wire digital connection: data, ground and 12 V. The data signal, using 5V logic levels, is similar to RS-232 with the same asynchronous byte encoding. The inline data is human readable as the data is transmitted in ASCII.
All SDI-12 communications are transmitted in ASCII at 1200 baud with 7 data bits and an even parity bit. The standard also specifies a communications protocol that allows sensors to remain in a low-power sleep state until awoken by a serial break signal sent by the master. The first character of each command is a unique sensor address that specifies with which sensor the recorder wants to communicate. Other sensors on the SDI-12 bus ignore the command and return to low-power standby mode. The protocol also specifies a retry mechanism to overcome any data corruption. CRCs were introduced to the SDI-12 protocol with release of version 1.3.
The standard provides guidelines on transient protection and does not require the use of a specific connector.
Applications
The protocol is most commonly supported by hydrographic sensors (level and flow), water quality sensors, meteorological instruments, soil moisture and plant physiology.[6] Less common but also known to be supported are sensors for the measurement of solar radiation, tilt (inclinometers), and other geophysical parameters.[6]
See also
- Data logger
- RS-232
- RS-485
- Serial communications
- Transducers
- 1Wire
References
- ^ "SDI-12". SDI-12 Support Group, Inc.
- ^ a b "History". SDI-12 Support Group, Inc.
- ^ a b c d "SDI-12 version 1.4 specification PDF" (PDF). sdi-12.org. 10 January 2019. Retrieved 8 December 2020.
- ^ "About – NR Systems, Inc". sdi-12-verifier.com. Retrieved 8 December 2020.
- ^ "SDI-12 Specification". sdi-12.org. Retrieved 8 December 2020.
The SDI-12 Specification is in the public domain. You may freely copy and distribute it.
- ^ a b "Companies known to manufacture SDI12 sensors". SDI12. 2017-04-27. Retrieved 2017-06-06.