RS485 Modbus

The NexSens NX-Series sensors can communicate with an external data logger using the standard RS-485 Modbus-RTU protocol. Each sensor responds to Modbus function codes 0x03 (Read registers) and 0x10 (Write registers). Register addressing starts from 0, and data for each register contains two bytes. To connect multiple sensors on a single network, each sensor must have a unique Modbus address. By default, each sensor has the following communication settings:

  • Default address: 1 (0x01)
  • Baud Rate: 9600
  • Parity: None
  • Data bit: 8
  • Stop bit: 1
  • Universal address: 255 (0xFF)


NexSens NX5111 Turbidity Sensor
Register Address (Hex)# of RegistersNameAccessDataComments
1Get/Set Modbus Device IDRead/Write16-bit integer little endeanUse Get command with universal address 255 (0xFF); Range 1-247
2Get Software and Hardware RevisionRead OnlyASCIIRegister 1 = Hardware
Register 2 = Software
1Start MeasurementRead Only16-bit integer little endeanBy default, measurements will output every second. 
1Stop MeasurementRead Only16-bit integer little endean
5Get Temperature and Turbidity ValuesRead OnlyFloating point
(Little endian)
Register 1-2: Temprature
Register 3-4: Turbidity
Register 5: Error flag
4Get/Set User Calibration CoefficientsRead/WriteFloating point
(Little endian)
Register 1-2: K Value
Register 3-4: B Value
0Activate WiperWrite OnlyIntegerThe wiper will make four rotations in each direction.
1Get/Set Wiper IntervalRead/WriteInteger