Home / Sensors / DFRobot SEN0605
DFRobot · RS-485 sensor
DFRobot
DFRobot N-P-K probe. NPK uses an IEEE-754 coefficient model (two-register decode).
The DFRobot SEN0605 is a single-parameter RS-485 soil probe reporting N-P-K over Modbus-RTU on RS-485 at 9600 bps, 8N1, on DC 5–30 V. This guide documents 14 registers, default Modbus address 1. It does not report moisture, temperature, EC and others. For those on the same bus: moisture → DFRobot SEN0600; temperature → DFRobot SEN0600. Sankhya firmware profile: DFROBOT_NPK_coeff.
The DFRobot SEN0605 exposes more than three simple nutrient words. Sankhya Farms uses the DFROBOT_NPK_coeff profile to distinguish temporary N, P and K values from the high-word/low-word coefficient pairs and signed deviations used by the device's internal model. The open-source node can collect the resulting fields at 9600 baud and send meaningful nutrient values to the free cloud dashboard rather than treating every 16-bit register as an independent reading.
This model is most useful where the N-P-K response can be checked: a field or pot trial, greenhouse experiment, home-garden comparison, educational bench or calibration exercise. Moisture, temperature, EC and pH are not reported, so a serious interpretation may require neighbouring sensors or reference tests. The dashboard provides history and context; it does not make an indirect nutrient estimate equivalent to laboratory analysis. The buried probe may be considered for a compatible substrate, but a hydroponic reservoir requires a liquid-rated nutrient or water-quality instrument. Large changes should be investigated before they become fertiliser decisions.
The temporary nitrogen, phosphorus and potassium words are 001EH, 001FH and 0020H. Nitrogen coefficient words begin at 03E8H, phosphorus at 03F2H and potassium at 03FCH; their paired high and low words must be combined as documented, with separate signed deviation registers. Sankhya's named profile performs that structured lookup instead of presenting half of a floating-point coefficient as a sensor value.
Specs sourced from: Official DFRobot wiki (SEN0600–SEN0605 product pages).
Function codes 0x03, 0x06 at 9600 bps, 8N1. Data registers are read with 0x03; configuration registers are written with 0x06. PLC column shows the 4xxxx Modbus holding-register convention.
| Register | PLC | Parameter | Type | Scale | Unit | R/W | Notes |
|---|---|---|---|---|---|---|---|
| 001EH | 40031 | Nitrogen temporary value | uint16 | 1 | mg/kg | RW | |
| 001FH | 40032 | Phosphorus temporary value | uint16 | 1 | mg/kg | RW | |
| 0020H | 40033 | Potassium temporary value | uint16 | 1 | mg/kg | RW | |
| 03E8H | 41001 | Nitrogen coefficient high word | uint16 | — | — | RW | IEEE 754 float high 16 bits. |
| 03E9H | 41002 | Nitrogen coefficient low word | uint16 | — | — | RW | IEEE 754 float low 16 bits. |
| 03EAH | 41003 | Nitrogen deviation | int16 | 1 | — | RW | |
| 03F2H | 41011 | Phosphorus coefficient high word | uint16 | — | — | RW | |
| 03F3H | 41012 | Phosphorus coefficient low word | uint16 | — | — | RW | |
| 03F4H | 41013 | Phosphorus deviation | int16 | 1 | — | RW | |
| 03FCH | 41021 | Potassium coefficient high word | uint16 | — | — | RW | |
| 03FDH | 41022 | Potassium coefficient low word | uint16 | — | — | RW | |
| 03FEH | 41023 | Potassium deviation | int16 | 1 | — | RW | |
| 07D0H | 42001 | Device address | uint16 | 1 | — | RW | |
| 07D1H | 42002 | Baud rate | uint16 | 1 | — | RW |
This probe is configured over the same RS-485 bus using Modbus write commands (function code 0x06). Configure one device at a time on the bus.
Exposes coefficient and deviation registers for internal NPK model. Not simple raw readout.
How the DFRobot SEN0605 compares with the other RS-485 models in the Sankhya library. "Drop-in" means the same parameter set and the same register map, read by the same firmware profile.
| Model | Relationship | Measures | Baud | Difference |
|---|---|---|---|---|
| DFRobot SEN0600 | Sibling | Moisture, Temperature | 9600 | Adds moisture and temperature, drops N-P-K. |
| DFRobot SEN0601 | Sibling | Moisture, Temperature, EC, Salinity, TDS | 9600 | Adds moisture, temperature, EC, salinity and TDS, drops N-P-K. |
| DFRobot SEN0602 | Sibling | Moisture, Temperature, pH | 9600 | Adds moisture, temperature and pH, drops N-P-K. |
| DFRobot SEN0603 | Sibling | EC, pH, Salinity, TDS | 9600 | Adds EC, pH, salinity and TDS, drops N-P-K. |
Every sensor on this page is in our RS-485 library. Pick your model, and the firmware-generation pipeline builds the Modbus (or ASCII) polling code for an ESP32-S3 node — no hand-coding the register math.
Contact Us