

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.








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 |
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 |
The Grove Button is straightforward to use in any circuit. Follow the steps below to integrate it into your project:
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
}
delay(50) is optional but helps stabilize the button readings.Button not responding when pressed
Button signal is unstable
Microcontroller not detecting button presses
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.