SEN0216 Gravity: Digital Water Flow Sensor For Arduino


The Water Flow sensor measures the rate of a liquid flowing through it. The YF-S401 water flow sensor consists of a plastic valve body, flow rotor and hall effect sensor. It is usually used at the inlet end to detect the amount of flow. When liquid flows through the sensor, a magnetic rotor will rotate and the rate of rotation will vary with the rate of flow. The hall effect sensor will then output a pulse width signal. Connect it to a microcontroller and you can monitor multiple devices such as your coffee maker, sprinkler or anything else, and control the water flow rate to suit your needs!


Board Overview

SEN0216 Gravity: Digital Water Flow Sensor For Arduino Board Overview
Number Color Name Description
1 Green Signal Pulse Signal
2 Red VCC 5~12V
3 Black GND GND

Pulse Signal

SEN0216 Gravity: Digital Water Flow Sensor For Arduino Pulse Signal


In this Tutorial, we'll measure liquid flow using this sensor.


Connection Diagram

SEN0216 Gravity: Digital Water Flow Sensor For Arduino Connection Diagram

Sample Code

 This example reads Water flow sensor Sensor.

 Created 2016-3-13
 By berinie Chen <bernie.chen@dfrobot.com>

 GNU Lesser General Public License.
 See <http://www.gnu.org/licenses/> for details.
 All above must be included in any redistribution

/***********Notice and Trouble shooting***************
 1.Connection and Diagram can be found here  https://www.dfrobot.com/wiki/index.php?title=Water_Flow_Sensor_-_1/8%22_SKU:_SEN0216
 2.This code is tested on Arduino Uno.
volatile double waterFlow;
void setup() {
  Serial.begin(9600);  //baudrate
  waterFlow = 0;
  attachInterrupt(0, pulse, RISING);  //DIGITAL Pin 2: Interrupt 0
void loop() {
  Serial.println("   L");

void pulse()   //measure the quantity of square wave
  waterFlow += 1.0 / 5880.0;


Q&A Some general Arduino Problems/FAQ/Tips
A For any questions, advice or cool ideas to share, please visit the DFRobot Forum.


CAD File

DFshopping_car1.png Shopping from Gravity: Digital Water Flow Sensor For Arduino - 1/8" or DFRobot Distributor.