Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Grove Button: Examples, Pinouts, and Specs

Image of Grove Button
Cirkit Designer LogoDesign with Grove Button in Cirkit Designer

Introduction

The Grove Button, manufactured by Seeed Studio, is a simple push-button switch designed for user input in electronic projects. It features a Grove connector, which simplifies integration with microcontrollers and makes it ideal for rapid prototyping. The button operates as a momentary switch, meaning it is only active while being pressed. This component is widely used in applications such as user interfaces, control systems, and interactive projects.

Explore Projects Built with Grove Button

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Pushbutton Interface with General Purpose I/O Plug
Image of Assista GP IO: A project utilizing Grove Button in a practical application
This circuit consists of a General Purpose Input/Output (GPIO) plug connected to four pushbuttons. Each pushbutton is wired to a unique input pin on the GPIO plug, allowing the state of each button (pressed or not pressed) to be detected individually. The common terminals of the pushbuttons are interconnected and likely serve as a ground or reference voltage connection.
Cirkit Designer LogoOpen Project in Cirkit Designer
Adafruit Circuit Playground-Based Interactive Control System with Pushbutton and Slide Potentiometers
Image of Lever Up Controller: A project utilizing Grove Button in a practical application
This circuit features an Adafruit Circuit Playground Dev Edition microcontroller interfaced with a pushbutton and two slide potentiometers. The pushbutton is connected to digital pin D6, while the potentiometers provide analog input to pins D9 and D10, allowing for variable control inputs.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Multi-Button Controller with Seeed Studio nRF52840
Image of RetroBle Atari Controller: A project utilizing Grove Button in a practical application
This circuit consists of five pushbuttons connected to a Seeed Studio nRF52840 microcontroller, which is powered by a Polymer Lithium Ion Battery. Each pushbutton is connected to a different GPIO pin on the microcontroller, allowing for individual button press detection and processing.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO Controlled LED with Pushbutton
Image of one green led & pull down: A project utilizing Grove Button in a practical application
This circuit features an Arduino UNO configured to control a green LED using a pushbutton. The LED is connected to digital pin D13 through a 330 Ohm resistor, and the pushbutton is connected to digital pin D2 with a pull-down resistor to ground. When the button is pressed, the Arduino turns on the LED; when released, the LED turns off.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Grove Button

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Assista GP IO: A project utilizing Grove Button in a practical application
Pushbutton Interface with General Purpose I/O Plug
This circuit consists of a General Purpose Input/Output (GPIO) plug connected to four pushbuttons. Each pushbutton is wired to a unique input pin on the GPIO plug, allowing the state of each button (pressed or not pressed) to be detected individually. The common terminals of the pushbuttons are interconnected and likely serve as a ground or reference voltage connection.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Lever Up Controller: A project utilizing Grove Button in a practical application
Adafruit Circuit Playground-Based Interactive Control System with Pushbutton and Slide Potentiometers
This circuit features an Adafruit Circuit Playground Dev Edition microcontroller interfaced with a pushbutton and two slide potentiometers. The pushbutton is connected to digital pin D6, while the potentiometers provide analog input to pins D9 and D10, allowing for variable control inputs.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of RetroBle Atari Controller: A project utilizing Grove Button in a practical application
Battery-Powered Multi-Button Controller with Seeed Studio nRF52840
This circuit consists of five pushbuttons connected to a Seeed Studio nRF52840 microcontroller, which is powered by a Polymer Lithium Ion Battery. Each pushbutton is connected to a different GPIO pin on the microcontroller, allowing for individual button press detection and processing.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of one green led & pull down: A project utilizing Grove Button in a practical application
Arduino UNO Controlled LED with Pushbutton
This circuit features an Arduino UNO configured to control a green LED using a pushbutton. The LED is connected to digital pin D13 through a 330 Ohm resistor, and the pushbutton is connected to digital pin D2 with a pull-down resistor to ground. When the button is pressed, the Arduino turns on the LED; when released, the LED turns off.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • User input for microcontroller-based systems
  • Control panels and interactive devices
  • Prototyping and educational projects
  • Triggering events in IoT applications

Technical Specifications

The Grove Button is designed for simplicity and reliability. Below are its key technical details:

Parameter Value
Operating Voltage 3.3V / 5V
Operating Current ≤10 mA
Interface Type Grove 4-pin connector
Dimensions 20mm x 20mm
Button Type Momentary (push-to-make)
Debouncing Circuit Included

Pin Configuration

The Grove Button uses a 4-pin Grove connector. The pinout is as follows:

Pin Name Description
1 GND Ground connection
2 VCC Power supply (3.3V or 5V)
3 SIG Signal output (HIGH when pressed, LOW otherwise)
4 NC Not connected

Usage Instructions

The Grove Button is straightforward to use in any circuit. Follow the steps below to integrate it into your project:

Connecting the Grove Button

  1. Connect the Grove Button to a Grove Base Shield or directly to a microcontroller using a Grove cable.
  2. Ensure the VCC pin is connected to a 3.3V or 5V power source, depending on your system.
  3. Connect the SIG pin to a digital input pin on your microcontroller.
  4. Connect the GND pin to the ground of your circuit.

Important Considerations

  • The Grove Button includes a built-in debouncing circuit, which eliminates the need for additional software or hardware debouncing.
  • Ensure the power supply voltage matches the requirements of your microcontroller to avoid damage.
  • Avoid pressing the button with excessive force to maintain its longevity.

Example: Using the Grove Button with Arduino UNO

Below is an example of how to use the Grove Button with an Arduino UNO to detect button presses and light up an LED:

// Grove Button connected to digital pin 2
const int buttonPin = 2; // Pin where the button's SIG pin is connected
const int ledPin = 13;   // Built-in LED on Arduino UNO

void setup() {
  pinMode(buttonPin, INPUT); // Set button pin as input
  pinMode(ledPin, OUTPUT);  // Set LED pin as output
  Serial.begin(9600);       // Initialize serial communication
}

void loop() {
  int buttonState = digitalRead(buttonPin); // Read the button state

  if (buttonState == HIGH) {
    // Button is pressed
    digitalWrite(ledPin, HIGH); // Turn on the LED
    Serial.println("Button Pressed!"); // Print message to serial monitor
  } else {
    // Button is not pressed
    digitalWrite(ledPin, LOW); // Turn off the LED
  }

  delay(50); // Small delay to stabilize readings
}

Notes:

  • The built-in LED on the Arduino UNO is used in this example for simplicity. You can connect an external LED if desired.
  • The delay(50) is optional but helps stabilize the button readings.

Troubleshooting and FAQs

Common Issues

  1. Button not responding when pressed

    • Ensure the Grove Button is properly connected to the microcontroller.
    • Verify that the power supply voltage matches the component's requirements (3.3V or 5V).
    • Check the Grove cable for any damage or loose connections.
  2. Button signal is unstable

    • The Grove Button includes a debouncing circuit, but if instability persists, ensure the microcontroller's input pin is configured correctly.
    • Add a small delay (e.g., 50ms) in your code to filter out any residual noise.
  3. Microcontroller not detecting button presses

    • Confirm that the SIG pin is connected to the correct digital input pin on the microcontroller.
    • Use a multimeter to check if the SIG pin outputs a HIGH signal when the button is pressed.

FAQs

Q: Can I use the Grove Button with a Raspberry Pi?
A: Yes, the Grove Button can be used with a Raspberry Pi. Connect the SIG pin to a GPIO pin on the Raspberry Pi and use a pull-down resistor if necessary. Libraries like RPi.GPIO can be used to read the button state.

Q: Is the Grove Button waterproof?
A: No, the Grove Button is not waterproof. Avoid exposing it to moisture or liquids.

Q: Can I use multiple Grove Buttons in a single project?
A: Yes, you can use multiple Grove Buttons by connecting each to a separate digital input pin on your microcontroller.

Q: Does the Grove Button support analog input?
A: No, the Grove Button outputs a digital signal (HIGH or LOW) and is designed for digital input pins.

By following this documentation, you can easily integrate the Grove Button into your projects and troubleshoot any issues that arise.