Gravity: Water Flow Sensor (1/2

SEN0217 Gravity: Water Flow Sensor For Arduino


The Water Flow sensor measures the rate of a liquid flowing through it. The YF-S201 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 arduino 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

Number Color Name Description
1 Green Signal Pulse Signal
2 Red VCC 5~12V
3 Black GND GND

Pulse Signal

SEN0217 Gravity: Water Flow Sensor For Arduino Pulse Signal


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


Connection Diagram

SEN0217 Gravity: Water Flow Sensor For Arduino Connection Diagram

Sample Code

 * @file  SEN0217.ino
 * @brief  This example reads Water flow sensor Sensor.
 * @copyright  Copyright (c) 2010 DFRobot Co.Ltd (
 * @license  The MIT License (MIT)
 * @author  berinie Chen <>
 * @version  V1.0
 * @date  2016-3-13

/***********Notice and Trouble shooting***************
 1.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 / 450.0; // 450 pulses for 1 liter (see product parameters)


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


DFshopping_car1.png Get Gravity: Water Flow Sensor (1/2") For Arduino from DFRobot Store or DFRobot Distributor.

Category: Sensors & Modules > Sensors > Liquid Sensors

Turn to the Top