The following figure shows a timing diagram for a SDI-12 command and its response. The tolerance for all SDI-12 timing is ±0.40 ms.
The exception to this is the time between the stop bit of one character and the start bit of the next character. The maximum time for this is 1.66 ms, with no tolerance.
- A data recorder transmits a break by setting the data line to spacing for at least 12 ms.
- The sensor does recognize a break condition for a continuous spacing time of less than 6.5 ms. The sensor will always recognize a break when the line is continuously spacing for more than 12 ms.
- When receiving a break, a sensor must detect 8.33 ms of marking on the data line before it looks for an address.
- A sensor must wake up from a low-power standby mode and be capable of detecting a start bit from a valid command within 100 ms after detecting a break.
- After a data recorder transmits the last character of a command, it must relinquish control of the data line within 7.5 ms.
- After receiving the break and the command, the addressed sensor sets the data line to marking at 8.33 ms and then sends the response (tolerance: -0.40 ms). The start bit of the first response byte must start within 15 ms after the stop bit of the last byte of the command (tolerance: +0.40 ms).
- After a sensor transmits the last character of a response, it must relinquish control of the data line within 7.5 ms (tolerance: +0.40 ms).
- No more than 1.66 ms of marking are allowed between the end of the stop bit and the start bit (for example between characters) on any characters in the command or the response (no tolerance.) This permits a response to an M command to be sent within a 380 ms window.
- Sensors must return to a low-power standby mode after receiving an invalid address or after detecting a marking state on the data line for 100 ms (tolerance: +0.40 ms).
- When a recorder addresses a different sensor, or if the data line has been in the marking state for more than 87 ms, the next command must be preceded by a break.
|The low-power standby mode, in addition to being a low-power consumption state, is a protocol state and it takes a moment to leave that state.|