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:
| Parameter | Default Value | Description |
|---|---|---|
| Baud Rate | 19,200 bps | High 8 bits of register 0x00 |
| Slave ID | 1 | Lower 8 bits of register 0x00 |
| Data Format | 8N1 | 8 data bits, No parity, 1 stop bit |
| Protocol | Modbus RTU | Industrial 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 Address | Data Type | Description | Example |
|---|---|---|---|
| 0x0101 | Unsigned Int16 | Liquid level (mm) | 0x01F4 = 500 mm |
| 0x0102 | Integer16 | Temp (°C) x 100 | 0x0CE4 = 33.00°C |
| 0x0103 | Unsigned Int16 | Status flags | Bit mask for alarms |
| 0x0104 | Integer16 | Datum 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:
| Count | Hex | Update Interval | Best Use Case |
|---|---|---|---|
| 2 | 0x02 | ~1 sec | Fast-changing processes |
| 4 | 0x04 | ~2 sec | General-purpose monitoring |
| 8 | 0x08 | ~4 sec | Stable liquids, minor fluctuations |
| 12 | 0x0C | ~5 sec | Max 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:
| Step | Action | Code | Details |
|---|---|---|---|
| 1 | Zero Calibration | 130 | Empty tank, let sensor dry, then write code |
| 2 | Full Calibration | 230 | Fill to max level, then write code |
| 3 | Save Settings | 30 | CRITICAL – 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
| Issue | Possible Cause | Solution |
|---|---|---|
| No response from sensor | Baud rate or Slave ID mismatch | Verify controller matches defaults (19200bps, ID 1) |
| Inaccurate readings | Calibration not saved or blind spot not compensated | Repeat calibration procedure |
| Fluctuating level data | Averaging count too low | Increase count in reg 0x07 (try 0x08 or 0x0C) |
| Switch triggers incorrectly | Thresholds miscalculated | Recalculate: mm x 10 to hex |
| 4-20mA drift | Switch 2 thresholds not matching | Verify 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.
