Development news for the SDI-12 protocol, whose latest version is now available for Lufft UMB sensors.
Numerous Lufft weather sensors provide the American protocol SDI-12 besides their own UMB communication protocol.
For this protocol there are loggers for data acquisition and transmission from various manufacturers, e.g. from OTT and Adcon.
The SDI12 standard was updated to version 1.4 in July 2016.
With the previous version 1.3 it was not possible to assign the transmitted numerical value to a measured value without having the current user manual of a sensor at hand.
Example how the issued numbers looked like:
In this case, you can only guess that the 1017.0 is probably the air pressure in hPa. For the other values the guess becomes more difficult. “Translated” they mean: air temperature in °C, relative humidity in %, air pressure in hPa, wind speed average and peak in m/s.
In continuous operation this is not a big problem. On the part of the receiving logger, the assignment of position to the measured value is configured during the set-up on the basis of the sensor manual. This enables the logger to assign the measured values automatically from the first assignment on.
It becomes interesting when the further development of a sensor leads to the addition of new measured values. Since SDI-12 only allows a limited number of query commands, in this case, it is often necessary to extend an existing data set. For the SDI-12 V1.3 this could easily lead to an unnoticed misalignment in the data logger. This results in an incorrect assignment of the following data, because the user failed to study the new manual version with a firmware update.
SDI12 v1.4 addresses this problem by defining new commands that allow information about the type of measurement to be queried for each position in the data messages.
If we use the example of the first measured value in the data set above, with the V1.4 it issues 0,TA,C,cur meaning:
- TA = Temperature Air
- C = °C
- and cur = the present value.
This enables the data logger to automatically assign the received data, or at least to check the existing configuration regularly, e.g. each time the communication is restarted.
Would you like to learn more about our technology?