SDI-12
From Wikipedia, the free encyclopedia
SDI-12 is the acronym for "Serial Data Interface at 1200 Baud". SDI-12 is an asynchronous, ASCII, serial communications protocol that was developed for intelligent transducers that typically monitor environmental data. These instruments are typically low-power, are often used in remote locations, and usually communicate with a data logger or other data acquisition device. In this master-slave configuration, the data logger or data acquisition device typically acts as the master to the data monitoring instruments, which are the slaves. One master can communicate with multiple slaves, so the SDI-12 protocol requires that each device in the serial network be identified with a unique address, which is represented by a single ASCII character.
Electrically the protocol is a three wire connection - data, ground and 12V. It bears no resemblance to RS-485 or RS-232 although the timing is similar. The inline data is human readable as the data is transmitted in plain ASCII.
As specified by the SDI-12 Support Group, all SDI-12 communications are transmitted in ASCII at 1200 baud. A serial break signal is sent by the master prior to any SDI-12 message to alert the connected slaves of the impending communication. Only the slave whose address matches the address in the sent message should respond. Checksums are not used.