Getting Started with Seeed Studio IoT Button

Introduction
The IoT Button is a versatile smart switch offering dual Home Assistant integrations through ESPHome and Zigbee. Powered by ESP32-C6, it features customizable RGB LED indicators, programmable event triggers, USB-C charging, and flexible mounting options - everything you need for intuitive smart home control.
Features
- Home Assistant Ready
- One Switch, Customizable Actions
- Reliable Power Supply
- Easy Mounting Solution
- Open for Customization
Hardware Overview
Before everything starts, it is quite essential to have some basic parameters of the product. The following table provides information about the characteristics of IoT Button.
Parameter | Description |
---|---|
MCU | Espressif ESP32-C6 |
Flash | 4MB |
LED | User RGB LED: WS2812B (GPIO19 To use it, you need to enable GPIO18 at the same time.) Charge LED: Green User LED: Blue (GPIO2) |
Wireless | 2.4GHz Wi-Fi Zigbee |
Battery | 3.6V Li-ion 18650 Rechargeable battery |
Charging Interface | USB Type-C |
Battery Protection | Reverse polarity protection |
Firmware Update | Support OTA |
Dimensions | 92x32x25 mm |


Getting Started
Step 1: Initial Setup
When you first receive your IoT Button, it's essential to perform an initial activation step before use. Please follow these instructions:
- Use a standard 5V USB Type-C data cable to connect the IoT Button to a power source
- This initial power connection is crucial as it activates the built-in battery
- Without this activation step, the device will not function properly
The IoT Button comes pre-loaded with ESPHome-compatible firmware, so once activated, you can proceed directly to integrating it with Home Assistant following the steps below.
Make sure to use a compliant 5V USB Type-C cable for the activation process. Using non-standard cables may result in improper activation.
Step 2: Setting Up Home Assistant
Installation: For optimal performance, it's recommended to install Home Assistant OS on a Raspberry Pi. Follow the official installation guide on the Home Assistant website.
install Home AssistantWe have also written how to install Home Assistant for some of Seeed Studio products, please refer to them.
Alternatively, you can click the button below to shop Home Assistant Green or Home Assistant Yellow to use Home Assistant directly.
Enabling ESPHome Add-on:
- Access the Home Assistant dashboard.
- Navigate to the "Add-ons" section and search for the ESPHome add-on.
- Click "Install" and then "Start" to enable it.

By gathering the necessary components and setting up Home Assistant with the ESPHome add-on, you'll be ready to proceed with the integration of the IoT Button.
Step 2: Preparing the Kit
By default, your device comes pre-flashed with firmware for IoT Button. However, there are two scenarios where you may need to update the firmware:
- Re-flashing the Firmware: If the existing firmware is corrupted or you need to start fresh.
- Upgrading the Firmware: If there is a newer version of the firmware with improved functionality.
There are two simple methods for flashing the firmware:
You can use this Web Tool for an easy and direct method to flash your firmware. Simply follow the on-screen instructions.
- Click the
CONNECT
button to initiate the connection. The tool will automatically update the firmware.
If something goes wrong, follow the on-screen troubleshooting steps or switch to the ESPHome Web
method to complete the process.
For this method, you'll need to download the bin
firmware file from here(you'll need to unzip the downloaded file).
- Connect the IoT Button to your PC.
- Visit the ESPHome Web page.
- Select the firmware file with the
*.factory.bin
suffix.
Watch the following video for a detailed walkthrough of flashing the firmware via ESPHome Web:
With either method, you'll have your firmware updated and ready for integration with Home Assistant.
Connect to the kit's hotspot
With the firmware, you could power on the IoT Button, and a Wi-Fi access point will appear: seeedstudio-iot-button
.
Navigate to 192.168.4.1
to configure your Home Assistant server's local network settings.


Step 3: Discovering and Adding the Device in Home Assistant
In this section, we'll go through the process using the Home Assistant app, where the logic is the same as on the web.
Open the App: Once you launch the app, select your Home Assistant server. The app will automatically find your server.
Create an Account: If you haven't created an account, you'll need to do so. After that, log in with your credentials.
Navigate to the Integration Page: Once logged in, go to the "Integrations" page in Home Assistant. If you have installed the ESPHome add-on and both the IoT Button and your Home Assistant server are on the same network, you should see the device
Seeed Studio IoT Button
appear under discovered devices.Add the Device: Click to add the device to your Home Assistant setup.
Click the
CONFIGURE
button, confirm by pressing theSUBMIT
button, and assign the device to your preferred area (e.g., Living Room). After this, the device will be managed through your ESPHome integration, enabling full control and monitoring in Home Assistant.noteIf the prompt does not require you to assign an area during the setup process, you can manually assign it later by navigating to the "Integrations" section in Home Assistant, selecting your device, and configuring the area from there.
Creating Automations with the IoT Button
Now that your IoT Button is set up, you can create automations to control devices in your smart home. Let's create a simple automation that turns on a light when you press the button.
- In Home Assistant, go to Settings > Automations & scenes.

- Click CREATE AUTOMATION.

- Set up your automation:
- Name: Give your automation a descriptive name, like "IoT Button Single Press - Turn On Light"
- Trigger: Select "State" as the trigger type
- Entity: Select "Switch 1" (for single press)
- From: "off"
- To: "on"
- Action: Choose the device you want to control
- For example, select a light and set it to turn on

- Click SAVE to create the automation.

Advanced Usage: Controlling Different Devices with Different Press Patterns
One of the powerful features of the IoT Button configuration is the ability to detect different press patterns. Here are some ideas for using each pattern:
Single Press (Switch 1):
- Turn on/off lights in the current room
- Toggle a frequently used device
Double Press (Switch 2):
- Activate a scene (e.g., "Movie Night" that dims lights and turns on the TV)
- Control a group of devices simultaneously
Long Press (Switch 3):
- Activate security features (arm/disarm alarm)
- Trigger emergency routines
- Power off multiple devices at once
To set up these advanced automations, create additional automations following the steps above, but select the appropriate switch (Switch 1, 2, or 3) as the trigger and configure the desired actions.
Tech Support & Product Discussion
Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs.