Recommended Free Tools
Verdict: Seeed Studio’s IoT Button is a compact, rechargeable physical trigger for Home Assistant. It can send single-, double- and long-press events through either ESPHome over 2.4-GHz Wi-Fi or Zigbee 3.0. The two protocols are alternative firmware paths, not normally simultaneous connections. For most battery-focused Home Assistant installations, Zigbee is the more natural choice; ESPHome is attractive if you already use ESPHome, lack a Zigbee coordinator, or want extensive firmware customization.
It is standalone hardware, but not a complete smart-home system. You still need Home Assistant, a local network for Wi-Fi operation, or a Zigbee coordinator for Zigbee operation.
As an Amazon Associate I earn from qualifying purchases.
What the Seeed Studio IoT Button is—and is not
This is a one-button smart-home input device. Pressing it sends an event to Home Assistant, which can then toggle lights, activate scenes, run scripts, send notifications or trigger alarms. It does not contain a relay and does not directly switch household electrical power.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchThe button is built around Espressif’s ESP32-C6 and has a rechargeable 18650 Li-ion battery, USB-C charging and a purpose-built enclosure. It needs no separate development board or wired GPIO controller. However, “standalone” describes the hardware—not the whole system: Home Assistant and the relevant wireless infrastructure remain necessary.
#1 Best Overall
- 【ESP32-C3 RISC-V Development Board】 Built with the ESP32-C3 32-bit RISC-V chip (160MHz), featuring Arduino/CircuitPython support and multiple development ports. Ideal for IoT and edge AI projects.
- 【Outstanding RF & Long-Range Connectivity】 Equipped with U.FL antenna for stable Wi-Fi/BLE5.0 communication over 100m. Complete RF performance ensures reliable IoT connectivity.
- 【Ultra-Low Power & Battery-Friendly】 4 working modes, including deep sleep at 44μA. Onboard battery charge IC supports Li-ion/LiPo, perfect for wearables and wireless IoT.
- 【Thumb-Sized & Production-Ready】 Compact 21x17.5mm design with SMD/Breadboard-friendly layout. Single-sided component mounting ensures sleek integration into wearables.
- 【Rich I/O & Edge Computing】 11 digital I/O (PWM) + 4 analog I/O (ADC), plus UART/IIC/SPI/IIS ports. Optimized for TinyML and edge AI applications.
Seeed’s product page currently identifies the product as IoT Button V2, SKU 113110044, with a listed price of $10.90 and stock shown at the time of checking. Price, tax, shipping and availability can change.
Key hardware specifications
| Feature | Specification |
|---|---|
| MCU | Espressif ESP32-C6 |
| Flash | 4 MB |
| Wireless | 2.4-GHz Wi-Fi and Zigbee 3.0 capability |
| Battery | 3.6-V rechargeable 18650 Li-ion cell |
| Charging | USB Type-C |
| Dimensions | 92 × 32 × 25 mm |
| Feedback | WS2812B RGB LED, blue Zigbee status LED and green charging LED |
| V2 features | Battery monitoring and red low-battery indication |
| Updates | OTA support |
Seeed’s documentation specifies the battery type but does not clearly establish that every retail listing includes a cell. Check the package contents for the specific listing you buy. The manufacturer also does not publish a dependable battery-runtime figure in the referenced documentation, so claims such as “months of battery life” should be treated with caution.
Do this before relying on battery power
V1 and V2: verify what you actually have
Seeed’s getting-started documentation distinguishes the generations as follows:
| Version | Factory firmware | Notable points |
|---|---|---|
| V1 | ESPHome | Wi-Fi-oriented factory setup; lacks V2 battery-monitoring features |
| V2 | Zigbee | Zigbee-oriented factory setup; battery monitoring and low-battery indication |
There is an inconsistency in Seeed’s own pages: one section describes V2 as the current product shipping with Zigbee firmware, while a later Zigbee tutorial says all currently available units are V1. Do not identify the device from that sentence alone. Check the packaging, board markings, product listing and the firmware currently installed.
Rank #2
- Enhanced Connectivity: Combines 2.4GHz Wi-Fi 6 (802.11ax), Bluetooth 5(LE), and IEEE 802.15.4 radio connectivity, allowing you to apply the Thread and Zigbee protocols.
- Matter Native: Supports building Matter-compliant smart home projects thanks to its enhanced connectivity, achieving interoperability
- Security Encrypted on Chip: Powered by ESP32-C6, it brings enhanced encrypted-on-chip security to your smart home projects via secure boot, encryption, and Trusted Execution Environment (TEE)
- Outstanding RF performance: Has an on-board antenna with up to 80m BLE/Wi-Fi range, while reserving an interface for external UFL antenna
- Leveraging Power Consumption: Comes with 4 working modes, with the lowest being 15 μA in deep sleep mode, while also supporting lithium battery charge management.
Seeed says both versions can be reflashed between ESPHome and Zigbee, but firmware switching is an advanced operation. It can erase configuration, require Zigbee repair and cause problems if the wrong hardware definition or pin assignment is selected.
ESPHome over Wi-Fi
ESPHome is the easier route if your Home Assistant installation already uses ESPHome or you do not own a Zigbee coordinator. It also offers substantial control over firmware, entities and LED behavior.
What you need
- Home Assistant with the ESPHome add-on or ESPHome tooling
- A USB data cable and computer
- Reliable 2.4-GHz Wi-Fi
- Home Assistant and the button on the same local network
Setup
- Connect the button to the computer over USB.
- Open Seeed’s official IoT Button Web Flasher.
- Select Install, choose the correct USB or serial port and wait for flashing to finish.
- Join the temporary Wi-Fi network named
seeedstudio-iot-button. - If the captive portal does not appear, open
http://192.168.4.1. - Enter your home Wi-Fi credentials.
- In Home Assistant, open Settings > Devices & services and configure the discovered ESPHome device.
- Create button automations under Settings > Automations & scenes.
Seeed’s documented ESPHome configuration exposes single-click, double-click and long-press behavior as virtual switches. The sample long-press interval is approximately 1–2.5 seconds.
The Wi-Fi limitation
A battery-powered Wi-Fi button is not equivalent to an always-awake mains-powered controller. Seeed warns that the device may need to be manually awakened and may take time to reconnect to Wi-Fi before it can be used. That wake-and-reconnect behavior can make it feel less immediate for a frequently used wall control.
If discovery fails, verify the 2.4-GHz credentials, confirm that the device and Home Assistant share the same LAN, reconnect to the temporary network and provision it again. Web flashing also depends on a browser with the required Web Serial or WebUSB support; Seeed does not provide a complete current browser-compatibility matrix.
Rank #3
- Powerful MCU Board: Incorporate the ESP32 S3 32-bit, dual-core, Xtensa processor chip operating up to 240 MHz, mounted multiple development ports, Arduino / MicroPython supported
- Advanced Functionality: Detachable OV2640 camera sensor for 1600*1200 resolution, compatible with OV3660 camera sensor, integrating additional digital microphone
- Great Memory for more Possibilities: Offer 8MB PSRAM and 8MB FLASH, supporting SD card slot for external 32GB FAT memory
- Outstanding RF performance: Support 2.4GHz Wi-Fi and BLE dual wireless communication, support 100m+ remote communication when connected with U.FL antenna
- Thumb-sized Compact Design: 21 x 17.5mm, adopting the classic form factor of XIAO, suitable for space-limited projects like wearable devices
Zigbee
Zigbee is generally a better protocol fit for a battery button because it is designed around low-power end devices. That is a protocol-level expectation, not a measured runtime claim for this product.
What you need
- Home Assistant
- A Zigbee coordinator
- Zigbee Home Automation (ZHA) configured in Home Assistant
- A Zigbee network with suitable coverage
- Compatible Zigbee firmware on the button
The button is a Zigbee end device. It is not a coordinator or router, so it cannot create the Zigbee network by itself.
Pairing with ZHA
- Connect and configure a Zigbee coordinator on the Home Assistant server.
- Open Settings > Devices & services and open ZHA.
- Choose Add device to start pairing.
- Press the button once to wake it and begin joining.
- If necessary, press it again or move it close to the coordinator during initial pairing.
- Confirm the discovered device, commonly shown as
Seeed Studio IoT_Button.
Seeed documents holding the button for more than five seconds as a factory reset and pairing action under the Zigbee firmware. This is important: a very long press intended as an automation gesture can instead erase the pairing.
The official guide targets ZHA. Users of Zigbee2MQTT should verify current device support, converter status and exposed actions rather than assume that the ZHA instructions or action names apply identically.
Button actions and feedback
Actions depend on the firmware. ESPHome documents single click, double click and long press. Seeed’s Zigbee firmware documentation describes single click, double click, triple click, a short long press held for 1–5 seconds, and a press-and-release event. A hold longer than five seconds is reserved for factory reset.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Rank #4
- Beautiful, Ready-to-Use ePaper Display - The reTerminal E1001 arrives fully assembled in a sleek and durable enclosure, turning it into a ready-to-use HMI (Human Machine Interface) right out of the box. It features a crisp 7.5-inch 800×480 monochrome ePaper display that stays readable in any lighting. Powered by Espressif’s ESP32-S3, it delivers smooth performance and instant visuals with no additional setup required.
- Ultra-Low Power with Up to 3-Month Battery Life - Built with power efficiency in mind, the reTerminal E1001 includes a 2000mAh rechargeable battery that can last up to 3 months in deep-sleep mode (6-hour refresh interval). You can place it anywhere—on your desk, by your bedside, or mounted on a wall—without worrying about frequent charging or complicated wiring.
- No-Code UI Design & Deployment with SenseCraft HMI - Create your own beautifully customized dashboards with SenseCraft HMI, an AI-enhanced, no-code design platform. Simply drag and drop UI elements, choose from ready-made templates, or let AI assist your design flow. Connect live data from onboard sensors or web APIs and deploy your dashboard to any reTerminal E1001/E1002 in just a few clicks. Everything—from UI design to data configuration to deployment—happens seamlessly on one platform.
- Works with Popular Smart Home & Developer Platforms - Enjoy smooth integration with multiple ecosystems. Build no-code TRMNL dashboards with 300+ plugins for personal and work data, connect instantly to Home Assistant via ESPHome, or develop fully customized applications using Arduino, PlatformIO, or ESP-IDF. Whether you’re a beginner or a maker, the reTerminal E1001 makes your projects easier and more fun.
- Flexible Hardware & Software Customization - With seeed studio’s experience in open hardware and customization, the reTerminal E1001/E1002 can be tailored to your needs—whether that means adding specific sensors, tweaking I/O options, or creating your own UI layouts. It’s flexible enough for smart home enthusiasts, educators, makers, and even professional prototyping.
The documented Zigbee firmware uses four endpoints:
- Endpoint 10: physical button state
- Endpoint 11: single-click virtual switch
- Endpoint 12: double-click virtual switch
- Endpoint 13: short-long-press virtual switch
Exact action names and entities can differ with hardware generation, firmware revision and Home Assistant’s device handling. Use the actions shown by your own Home Assistant installation as the final authority.
Visual feedback is useful when the controlled device is elsewhere. The RGB LED can show effects such as breathing, blinking and rainbow patterns; the blue LED indicates Zigbee status, while V2 adds low-battery indication. Reflashing can change these behaviors.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Creating a Home Assistant automation
The safest approach is to create the automation in Home Assistant’s UI: select the button as a device trigger, choose the action Home Assistant exposes, then select the light, scene or script to control. This avoids relying on an action name that may differ between firmware and integrations.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
For example, Seeed shows a ZHA double-press trigger that toggles a living-room light:
Best Value
- Powerful MCU Board: Incorporate the ESP32-S3 32-bit, dual-core, Xtensa processor running at up to 240MHz, mounted multiple development ports, Arduino / MicroPython supported
- Outstanding RF performance: supports 2.4GHz WiFi and BLE 5.0 dual wireless communication, support 100m+ remote communication when connected with U.FL antenna
- Elaborate Power Design: lithium battery charge management capability, offer 4 power consumption model which allows for deep sleep mode with power consumption as low as 14μA
- Thumb-sized Compact Design: 21 x 17.5mm, adopting the classic form factor of XIAO, suitable for space limited projects like wearable devices
- Perfect for Production: Breadboard-friendly & SMD design, no components on the back
alias: IoT Button Double Click - Toggle Living Room Light
description: ""
trigger:
- platform: device
domain: zha
device_id: YOUR_DEVICE_ID_HERE
type: "remote_button_double_press"
action:
- service: light.toggle
target:
entity_id: light.living_room
mode: single
Possible uses include a single press for a room light, double press for “all off,” a long press for bedtime or away mode, and an emergency press that sends a Home Assistant notification. The button generates the event; Home Assistant performs the actual action.
Wi-Fi or Zigbee?
| Criterion | ESPHome/Wi-Fi | Zigbee |
|---|---|---|
| Extra hardware | No Zigbee coordinator required | Coordinator required |
| Best fit | ESPHome users and Wi-Fi-only installations | Existing Zigbee users and battery-focused setups |
| Setup | USB flashing and Wi-Fi provisioning | ZHA pairing and mesh setup |
| Customization | Strong YAML and ESPHome flexibility | Good for developers willing to build or modify Zigbee firmware |
| Main dependency | 2.4-GHz Wi-Fi and the local LAN | Zigbee coordinator and mesh coverage |
| Main concern | Sleep and Wi-Fi reconnection delay | Pairing, device-handler and action differences |
Choose ESPHome when you value firmware customization, native ESPHome management or avoiding coordinator hardware. Choose Zigbee when you already have ZHA working and want the more natural low-power protocol for a frequently used battery input.
Who should buy it?
It is a good fit for technically comfortable Home Assistant users who want a rechargeable, portable or wall-mounted trigger, multiple press patterns and open firmware options. Its purpose-built enclosure, RGB feedback, replaceable-battery form factor and dual firmware paths distinguish it from a basic disposable-looking scene button.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Reconsider it if you want zero-configuration consumer hardware, guaranteed instant response from Wi-Fi, a direct electrical switch, or a device that works without Home Assistant infrastructure. A conventional Zigbee button may be the simpler choice for users who prioritize predictable pairing and low-power operation over ESP32-based customization.
For Zigbee buyers who need a coordinator, Home Assistant’s Connect ZBT-2 is one official option. It is not mandatory, and users with an existing coordinator should not buy another one solely for this button. The ZBT-2 itself requires choosing Zigbee or Thread operation rather than using both simultaneously.
Quick Recap
Practical troubleshooting
- Dead after charging: connect a charged USB-C power source briefly to reactivate the battery-protection circuit.
- Wi-Fi appears unresponsive: press the button to wake it and allow time for reconnection.
- Wi-Fi discovery fails: check 2.4-GHz credentials, same-LAN connectivity and the temporary provisioning network.
- Zigbee pairing fails: wake the device, start pairing before pressing, move it close to the coordinator, or hold for more than five seconds to reset and re-enter pairing.
- Actions do not match examples: check the hardware generation and firmware, then use the triggers Home Assistant exposes.
- Long press resets the device: under the documented Zigbee firmware, a hold over five seconds is factory reset—not an ordinary automation gesture.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




