Turbidity sensor (TS-300B / SEN0189) with ESP32
Supply 5 V
Bus ANALOG
Measures turbidity
Pins and ESP32 wiring
| Pin | Role | ESP32 pin | Notes |
|---|---|---|---|
| OUT | Analog output | D34 | Signal. Up to about 4.5 V in clear water: use a voltage divider before the ADC |
| VCC | Power | VIN | Needs 5 V: use VIN |
| GND | Ground | GND |
Suggested wiring for the 30-pin ESP32 DevKit, avoiding flash, input-only and strapping pins. BoardPilot checks it for you as you wire.
This module is sold for 5 V. Its outputs may be 5 V: use a level shifter or a voltage divider on ESP32 inputs.
Starter code (Arduino)
void setup() { Serial.begin(115200); }
void loop() {
int mv = analogReadMilliVolts(34); // OUT on GPIO 34
Serial.println(mv);
delay(200);
}
Sources
- DFRobot SEN0189 turbidity sensor wiki, Supply 5 V; analog output 0 to 4.5 V, lower voltage means murkier water
- DFRobot SEN0189 turbidity sensor wiki, Adapter board has an analog / digital switch; pin order varies between boards
Try it in 3D in BoardPilot
Related parts
4-20 mA to voltage converter module (HW-685)49E linear hall sensor (SS49E)ACS712 current sensor moduleACS723 current sensor moduleACS758 high-current sensor module (50-200 A)AD8232 ECG heart monitor
Part data: CC BY 4.0, free to reuse with credit to BoardPilot.