
Hach LDO sc Model 2
Luminescent dissolved oxygen sensor, read through a Hach sc controller with a Modbus RS485 module.
The Hach LDO sc Model 2 is a luminescent dissolved oxygen sensor that measures oxygen in water, such as irrigation water and water basins in greenhouses, and connects to a Hach sc controller. This Modbus RTU template reads dissolved oxygen in mg/l and % saturation, temperature and the error and status words, and lets you write altitude, salinity and calibration settings from ModbusCloud.
- Protocol
- Modbus RTU
- Connection
- RS485, 19200 baud
- Registers
- 94, read and write
- Brand
- Hach
- Key readings
- Dissolved oxygen · Oxygen saturation · Temperature · Red and blue amplitude · Days to clean · Error and status word
- Available commands
- Altitude or air pressure · Salinity correction · Calibration offset and gain · Signal averaging · Cleaning interval
- Compatible models
- LDO sc Model 2 (LDO 2 sc, LXV416.99.20001)
- Last updated
Registers (94)
94 read, 40 write
| Name | Unit | Access | Address (Hidden until you enter your email) | Function (hidden) | Type (hidden) |
|---|---|---|---|---|---|
| Dissolved Oxygen | mg/l | Read | |||
| DO Saturation | % | Read | |||
| Temperature | °C | Read | |||
| Phase Difference | Read | ||||
| Blue Phase | Read | ||||
| Red Phase | Read | ||||
| Blue Magnitude | Read | ||||
| Red Magnitude | Read | ||||
| DO Integer mg/l | mg/l | Read | |||
| DO Integer ppm | ppm | Read | |||
| DO Integer Percent | % | Read | |||
| Temperature Integer °F | °F | Read | |||
| Temperature Integer °C | °C | Read | |||
| Internal Temperature | Read | ||||
| Internal Pressure | Read | ||||
| Internal Humidity | Read | ||||
| Reference Voltage | Read | ||||
| 5V Supply | Read | ||||
| High Limit | Read | ||||
| Low Limit | Read | ||||
| Classified Error Word | Read | ||||
| Classified Status Word | Read | ||||
| Altitude or Pressure | Read and write | ||||
| Salinity | Read and write | ||||
| Sample Value | Read and write | ||||
| Calibration Offset | Read and write | ||||
| Calibration Gain | Read and write | ||||
| Offset Readback | Read | ||||
| Altitude or Pressure Readback | Read | ||||
| Meas Unit | Read and write | ||||
| Alt/Press Unit | Read and write | ||||
| Temperature Unit | Read and write | ||||
| Signal Average | s | Read and write | |||
| Log Interval | Read and write | ||||
| Clean Interval | d | Read and write | |||
| Days to Clean | d | Read | |||
| Sensor Life | d | Read | |||
| Cap Lot Code | Read | ||||
| Output Mode | Read | ||||
| Abort Query | Read and write | ||||
| No Yes Query | Read and write | ||||
| Function Code | Read and write | ||||
| Next State | Read | ||||
| DO Word | Read | ||||
| Temperature Word | Read | ||||
| Alt or Press Word | Read | ||||
| Sample Value Word | Read | ||||
| Offset Word | Read | ||||
| Sensor Name | Read and write | ||||
| Serial Number | Read and write | ||||
| Software Version | Read | ||||
| Boot Version | Read | ||||
| Driver Version | Read | ||||
| Undocumented Reading 1 | Read | ||||
| Undocumented Reading 2 | Read | ||||
| Undocumented Reading 3 | Read | ||||
| Undocumented Reading 4 | Read | ||||
| Undocumented Reading 5 | Read | ||||
| Undocumented Reading 6 | Read | ||||
| Undocumented Reading 7 | Read | ||||
| Undocumented Reading 8 | Read | ||||
| Undocumented Reading 9 | Read | ||||
| Undocumented Reading 10 | Read | ||||
| Undocumented Reading 11 | Read | ||||
| Undocumented Setting 1 | Read and write | ||||
| Undocumented Setting 2 | Read and write | ||||
| Undocumented Setting 3 | Read and write | ||||
| Undocumented Setting 4 | Read and write | ||||
| Undocumented Setting 5 | Read and write | ||||
| Undocumented Setting 6 | Read and write | ||||
| Undocumented Setting 7 | Read and write | ||||
| Undocumented Setting 8 | Read and write | ||||
| Undocumented Setting 9 | Read and write | ||||
| Undocumented Setting 10 | Read and write | ||||
| Undocumented Setting 11 | Read and write | ||||
| Undocumented Setting 12 | Read and write | ||||
| Undocumented Setting 13 | Read and write | ||||
| Undocumented Setting 14 | Read and write | ||||
| Undocumented Setting 15 | Read and write | ||||
| Undocumented Setting 16 | Read and write | ||||
| Undocumented Setting 17 | Read and write | ||||
| Undocumented Setting 18 | Read and write | ||||
| Undocumented Setting 19 | Read and write | ||||
| Undocumented Setting 20 | Read and write | ||||
| Undocumented Setting 21 | Read and write | ||||
| Undocumented Text 1 | Read | ||||
| Undocumented Text 2 | Read | ||||
| Undocumented Word 1 | Read | ||||
| Undocumented Word 2 | Read and write | ||||
| Undocumented Word 3 | Read and write | ||||
| Undocumented Word 4 | Read and write | ||||
| Undocumented Word 5 | Read | ||||
| Undocumented Word 6 | Read | ||||
| Undocumented Word 7 | Read |
Loading registers…
Send your device list
If a device is not in the library yet, we build the template for free as soon as we have the register data.
Use cases
- Show dissolved oxygen and temperature of irrigation water on a dashboard next to pH and EC.
- Get an email or webhook alert when dissolved oxygen drops below the level you set for the irrigation water.
- Alert on an error word that is not 0, so a sensor cap or hardware fault reaches you right away.
- Track days to clean and sensor cap life to plan cleaning and cap replacement for every sensor.
- Keep 365 days of oxygen history to see the effect of water treatment, temperature and season.
Installation
Fit the Modbus RS232/RS485 module in the Hach sc200 or SC4500 controller and set its switches to RS485, with termination on at the end of the bus.
Wire RS485 A and B of the module to A and B of the ModbusCloud Gateway and terminate both ends of the bus.
In the controller's Modbus settings, set or note the Modbus address of the LDO sc. Keep 19200 baud, RTU, no parity, 1 stop bit and data order Little Endian.
In ModbusCloud, add a Modbus device with the address of the sensor and the same serial settings, then import this template.
Check that dissolved oxygen and temperature match the controller display.
Things to watch for
The sensor does not answer. What should I check?
Every sensor answers on its own Modbus address, not on the address of the controller or the module. Check the address of this sensor in the controller's Modbus settings, the serial settings (19200 baud, no parity, 1 stop bit by default), that switch 4 on the module selects RS485 and that A and B are not swapped. The template needs the RS485 module; it does not work over SC4500 Modbus TCP.
Dissolved oxygen shows huge or tiny numbers. Why?
The template expects the factory data order of the Modbus module, Little Endian. When the data order in the controller is set to Big Endian, the two halves of every value are swapped. Set the data order back to Little Endian. On an SC1000 with virtual slaves, scrambled values point to a different word order.
Why does % saturation differ from what I expect?
Saturation depends on the altitude or air pressure and on the salinity set in the sensor. Check both in the template or on the controller. The default altitude is 0 ft, which is sea level; enter the real altitude or the absolute air pressure.
What are the undocumented registers?
The sensor has registers without a name or description. The template includes them so you can see every value, but their meaning is unknown. Do not build alarms on them and do not write to the undocumented settings.
Can I write settings from ModbusCloud safely?
A write changes the sensor configuration directly, the same as the controller menu. Read the current value first and change one setting at a time; a wrong altitude, salinity or offset shifts every oxygen value. Register writing is off per gateway until you request it.
More Hach templates
Want to see how it works?










