Gravity: Liquid Flow Sensor (G1/4)

DFRobotSKU: SEN0549
Sale price £18.90
incl. VAT
excl. VAT
Only 4 units left

Awesome Extras

DFRobotDFRduino Uno R3
Sale price £16.70 incl. VAT excl. VAT
DFRobotGravity: IO Expansion Shield for Arduino V7.1
Sale price £8.50 incl. VAT excl. VAT
DFRobotTerminal Block Shield for Arduino Uno
Sale price £28.50 incl. VAT excl. VAT

This DFRobot Gravity Liquid Flow Sensor is based on the electromagnetic principle. It adopts an O-ring rubber seal and uses silicone sealant at the outlet end to ensure good waterproofing. It embraces high anti-electromagnetic interference and anti-vibration capabilities, offering reliable performance and long service life.

The sensor can be used with microcontrollers like the Arduino UNO to measure the flow of liquids with high concentration and low viscosity like water, diesel, engine oil, milk, paint, detergent, honey and more (no impurity in liquid).

This version uses a G1/4 pipe diameter. We also offer a G1/2 version.

Connection Example - Arduino


  • Gravity interface, easy to wire
  • Wide voltage of 3.5~24V
  • Measure the flow of the high-concentration but low-viscosity liquid
  • RoHS compliant


  • Operating Voltage: DC3.5-24V
  • Operating Current: ≤10mA(DC5V)
  • Output: NPN Pulse signal
  • Pipe Diameter: G1/4
  • Thread Outer Diameter: 13mm
  • Thread Length: 10mm
  • Water Pressure Resistance: ≤1.0MPA
  • Insulation Resistance: >100MΩ
  • Error: ±1%(0.3-5L/min)
  • Output Pulse High Level: >DC4.7V(Input voltage DC5V)
  • Output Pulse Low Level: <DC0.5V(Input voltage DC5V)
  • Output Pulse Duty Ratio: 50%±10%
  • Flow-Pulse Correlation: 1L=540 pulses
  • Operating Temperature Range: -10°~70°C
  • Operating Humidity Range: 35%~90%RH(No condensing)
  • Storage Temperature: -25°~+80°C
  • Storage Humidity: 25%~95%RH
  • Dimension: 80*47*30mm

Package Contents

  • 1x Gravity: Liquid Flow Sensor (G1/4)



Green Wire OUT Signal Output
Red Wire VCC Positive Power Supply 3.5V-24V
Black Wire GND Negative Power Supply

Example Arduino Code

volatile double waterFlow;
void setup() {
  Serial.begin(9600);  //baudrate
  waterFlow = 0;
  attachInterrupt(1, pulse, RISING);  //DIGITAL Pin 3: Interrupt 0
void loop() {
  Serial.println("   L");

void pulse()   //measure the quantity of square wave
  waterFlow += 1.0 / 540.0; // 1L=540 pulses

Payment & Accreditations

Payment methods
Visa Mastercard Maestro PayPal Amazon Klarna

Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.