The KSLV 605 capacitive level sensor from Kacise is widely used across industrial liquid level monitoring applications in Southeast Asia, Europe, and North America. Properly configuring its Modbus RTU communication is essential to ensure reliable data transmission and optimal system performance.

This comprehensive guide covers everything from basic baud rate configuration to advanced field calibration, helping engineers in India, Vietnam, Brazil, and other regions integrate the KSLV 605 into their SCADA or PLC systems quickly and correctly.

To learn more about the agreement, please click here.

1. Basic Communication Setup

Before communicating with the sensor, you must ensure your baud rate and Slave ID match your controller or PLC. The factory default settings are:

ParameterDefault ValueDescription
Baud Rate19,200 bpsHigh 8 bits of register 0x00
Slave ID1Lower 8 bits of register 0x00
Data Format8N18 data bits, No parity, 1 stop bit
ProtocolModbus RTUIndustrial standard serial protocol

Modifying the Baud Rate

The baud rate is stored in the high 8 bits of register 0x00. To read the current rate, send the following command:

01 03 00 00 00 01

  • Returned value 06 = 19,200 bps (default)
  • Returned value 05 = 9,600 bps
  • Returned value 07 = 38,400 bps
  • Returned value 08 = 57,600 bps
  • Returned value 09 = 115,200 bps

Watch: Part 1 – Modifying the Baud Rate

To change the baud rate, write the corresponding value to the high byte of register 0x00 using a Modbus write single register command (Function Code 06).

Changing the Slave ID

The Slave ID is stored in the lower 8 bits of register 0x00. After writing a new ID (for example, changing from 01 to 02), you must restart the sensor by disconnecting and reconnecting power for changes to take effect.

Watch: Part 2 – Modifying the Slave ID

2. Reading Measurement Data

The primary function of the KSLV 605 capacitive level sensor is to provide real-time liquid level and temperature data via Modbus registers.

Register AddressData TypeDescriptionExample
0x0101Unsigned Int16Liquid level (mm)0x01F4 = 500 mm
0x0102Integer16Temp (°C) x 1000x0CE4 = 33.00°C
0x0103Unsigned Int16Status flagsBit mask for alarms
0x0104Integer16Datum distance (mm)Max range minus offset

Liquid Level Reading

Read from register 0x0101. The returned value represents height in millimeters directly. For example, a return value of 0x01F4 (500 in decimal) indicates a 500 mm liquid level.

Temperature Reading

Read from register 0x0102. The calculation rule is:

Decimal Value / 100 = Temperature in °C

  • If no customized liquid temperature measurement, this displays the internal chip temperature.
  • Example: 0x0CE4 = 3300 decimal = 33.00°C

Watch: Part 10 – How to Read Measurement Results

3. Configuring Switches and 4-20mA Output

If your KSLV 605 has the switch output version, you can define specific relay behavior and analog ranges through register configuration.

Switch Settings

  • Switch 1: Register 0x01 – Define upper/lower alarm thresholds
  • Switch 2: Register 0x04 – Define secondary relay thresholds (also maps to 4-20mA range)

Watch: Part 3 – Switch 1 Settings | Watch: Part 5 – Switch 2 Settings

Setting Threshold Values

Value (mm) x 10 – Convert to Hex – Write to Register

Example: To set a switch threshold at 100 mm, calculate 100 x 10 = 1000, which is 0x03E8 in hex.

Watch: Part 4 – Switch 1 Thresholds

4-20mA Current Loop Mapping

The low and high thresholds for Switch 2 automatically correspond to the 4 mA and 20 mA analog output range.

Watch: Part 6 – Switch 2 Thresholds & 4-20mA

4. Performance Tuning

Measurement Averaging Configuration

To balance response speed and measurement stability, adjust the averaging count in register 0x07:

CountHexUpdate IntervalBest Use Case
20x02~1 secFast-changing processes
40x04~2 secGeneral-purpose monitoring
80x08~4 secStable liquids, minor fluctuations
120x0C~5 secMax noise filtering (default)

To increase response speed, reduce the averaging count. Changing from 0x0C (12 samples, ~5 s interval) to 0x02 (2 samples) provides updates approximately once per second.

Watch: Part 7 – Modifying Averaging Count

Blind Spot Compensation

The KSLV 605 has a default blind zone of 12 mm at the bottom of the sensing range. If there is an additional gap (e.g., 8 mm), adjust register 0x09 to the total (20 mm).

Write 0x0014 (20 in decimal) to register 0x09 for full accuracy.

Watch: Part 8 – Blind Spot Compensation

5. Field Calibration Procedure

Manual calibration is needed when changing the liquid medium (e.g., water to oil). All commands use register 0x0A:

StepActionCodeDetails
1Zero Calibration130Empty tank, let sensor dry, then write code
2Full Calibration230Fill to max level, then write code
3Save Settings30CRITICAL – Settings lost if not saved

Warning: You must write code 30 after calibration to save permanently, or data is lost on power cycle.

Watch: Part 9 – How to Calibrate

6. Troubleshooting Common Issues

IssuePossible CauseSolution
No response from sensorBaud rate or Slave ID mismatchVerify controller matches defaults (19200bps, ID 1)
Inaccurate readingsCalibration not saved or blind spot not compensatedRepeat calibration procedure
Fluctuating level dataAveraging count too lowIncrease count in reg 0x07 (try 0x08 or 0x0C)
Switch triggers incorrectlyThresholds miscalculatedRecalculate: mm x 10 to hex
4-20mA driftSwitch 2 thresholds not matchingVerify both low and high thresholds

Conclusion

Configuring the KSLV 605 capacitive level sensor via Modbus RTU ensures reliable long-term performance. Whether deploying in water treatment plants across India and Southeast Asia, chemical facilities in Europe, or oil and gas in Brazil, these guidelines maximize accuracy and uptime.

For support, contact our engineering team at Kacise for free Modbus integration consultation.

Resource