Meter Group sensors that use SDI12 protocol (like the Hydros 21) come from the factory with a default SDI12 address of ‘0’. Their sensors are programmed to output a serial data string containing the current measurement upon powerup if the address is set to ‘0’. Meter Group’s dataloggers all talk to their sensors like this. You can see it in action if you use a sketch using SoftwareSerial to monitor the sensor data pin and capture the serial data string immediately after you apply power to the sensor. That would work fine if you were only using one sensor on the bus, and only wanted one reading. Since we typically take 6 to 10 readings and average them, plus we usually have several other SDI12 sensors all connected to the same data wire, then having individual addressed for each sensor is imperative. If you connect 2 or more Meter Group sensors to the same data pin and they’re both set to channel ‘0’, they’ll both attempt to send the serial string at the same time, and you won’t be able to capture it properly with the Mayfly logger.
In order for the Meter Group sensors to properly respond to SDI12 commands, they need to be programmed to any other channel EXCEPT ‘0’.
Most other sensors don’t have this specification, and we sometimes leave them as ‘0’ if we’re just testing it. But for deployments, we’ve been using our own “in-house” channel allocations, just to keep things simple. For example, our turbidity sensors are usually channel ‘2’ or ‘3’, oxygen sensors are ‘5’, etc. That makes it a little easier to keep track of when juggling the sketches for hundreds of stations, each with different combinations of sensors.