Home / Sensors / DFRobot SEN0604
DFRobot · RS-485 sensor
DFRobot
DFRobot 4-in-1 — moisture, temp, EC, pH (with salinity/TDS).
The DFRobot SEN0604 is a 6-in-1 RS-485 soil probe reporting moisture, temperature, EC, pH, salinity and TDS over Modbus-RTU on RS-485 at 9600 bps, 8N1, on DC 5–30 V. This guide documents 15 registers, default Modbus address 1. It does not report N-P-K. For those on the same bus: N-P-K → DFRobot SEN0605. Sankhya firmware profile: DFROBOT_4in1.
Sankhya Farms supports the DFRobot SEN0604 with the DFROBOT_4in1 profile. The node polls moisture, signed temperature, EC and pH plus the sensor's salinity and TDS outputs at 9600 baud, then sends them to the free cloud dashboard. Conversion coefficients and calibration registers remain configuration, so a broad register map does not turn into a cluttered chart of unrelated integers.
The sensor can be useful in an orchard, field plot, greenhouse bed, nursery container, landscaped site, home garden or solid hydroponic medium where several root-zone conditions need to be compared. One timeline makes it possible to ask whether a conductivity rise occurred while the medium was drying, whether pH changed after irrigation, or whether a temperature event coincided with a moisture shift. Sankhya can remain a read-only monitoring layer; the presence of AI and automation features does not force a grower to hand control to the platform.
The main values are moisture at 0000H ×0.1%, signed temperature at 0001H ×0.1 °C, EC at 0002H in µS/cm and pH at 0003H ×0.1. Salinity and TDS are 0007H and 0008H. Later words beginning at 0022H and 0050H are coefficients and calibration values. Sankhya maps the semantic fields rather than charting every register indiscriminately.
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 |
|---|---|---|---|---|---|---|---|
| 0000H | 40001 | Soil moisture | uint16 | 0.1 | % | RO | |
| 0001H | 40002 | Soil temperature | int16 | 0.1 | °C | RO | |
| 0002H | 40003 | Electrical conductivity | uint16 | 1 | uS/cm | RO | |
| 0003H | 40004 | pH | uint16 | 0.1 | pH | RO | |
| 0007H | 40008 | Salinity | uint16 | 1 | mg/L | RO | Reference only. |
| 0008H | 40009 | TDS | uint16 | 1 | mg/L | RO | Reference only. |
| 0022H | 40035 | Conductivity temperature coefficient | uint16 | 0.1 | % | RW | |
| 0023H | 40036 | Salinity conversion coefficient | uint16 | 0.01 | — | RW | |
| 0024H | 40037 | TDS conversion coefficient | uint16 | 0.01 | — | RW | |
| 0050H | 40081 | Temperature calibration | int16 | 0.1 | °C | RW | |
| 0051H | 40082 | Moisture calibration | int16 | 0.1 | % | RW | |
| 0052H | 40083 | Conductivity calibration | int16 | 1 | uS/cm | RW | |
| 0053H | 40084 | pH calibration | int16 | 0.1 | pH | 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.
Official map. 4-in-1: moisture+temp+EC+pH.
How the DFRobot SEN0604 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 SEN0601 | Sibling | Moisture, Temperature, EC, Salinity, TDS | 9600 | Drops pH. |
| DFRobot SEN0603 | Sibling | EC, pH, Salinity, TDS | 9600 | Drops moisture and temperature. |
| DFRobot SEN0602 | Sibling | Moisture, Temperature, pH | 9600 | Drops EC, salinity and TDS. |
| DFRobot SEN0600 | Sibling | Moisture, Temperature | 9600 | Drops EC, pH, salinity and TDS. |
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