You need: a supported ESP32 board (ESP32-C6 / ESP32-C3 / ESP32-S3 / classic ESP32 — tool auto-detects) + a data USB cable + Chrome / Edge / Opera ≥ 89. Takes 2-3 minutes.

1

Browser check

Checking Web Serial API…
2

Connect device

Plug the ESP32-C6 into your computer, then click below and select the matching port.

3

Pick a firmware version

Loading firmware list…
4

Flash firmware

Flashing takes 1-2 minutes. Don't unplug while it's running.

Please confirm you're not a robot before flashing:


After flashing

  1. Unplug from USB, power up the gateway (USB-C 5V or external supply)
  2. Open the Pipe Home app → sign in / create an account
  3. Go to Profile → Add gateway, follow the standard pairing flow:
    • The app finds the gateway over its setup AP or Bluetooth
    • Pick your home Wi-Fi, name the gateway, assign it to your home
  4. Start pairing Zigbee, BLE Mesh, RF, IR, Modbus devices

About the Early Bird program

The commercial Pipe HC Gateway is not yet available for general sale. To let you try the system right now, we run the Early Bird program — you build your own gateway from a common ESP32-C6 board, and we provide a pre-built firmware that you flash directly from this website.

Once flashed, the board pairs into the Pipe Home app through the standard flow — exactly the same as a commercial gateway.

What you get

  • Full core functionality — Wi-Fi 6 + Zigbee 3.0 or BLE Mesh (pick one at flash time)
  • Free firmware updates over the air
  • Same pairing flow as the commercial product

The ESP32-C6 can run only one of 802.15.4 (Zigbee) or Bluetooth (BLE Mesh) at a time. Pick the build that matches your devices:

  • Zigbee build (available) — for Zigbee 3.0 devices (Aqara, IKEA, Tuya, Sonoff…). Supports ~5,000 models.
  • BLE Mesh build (coming) — for SIG Mesh lights and switches.

The commercial Pipe HC v2 will run both Zigbee + BLE Mesh concurrently and you won’t need to choose.

Limits vs commercial product

Early Bird gateway is not the full version — a few limits encourage upgrading when you need to scale:

Early Bird (DIY)Commercial product
Child devicesCapped (e.g. 10-15 devices)Unlimited
AutomationsCapped (e.g. 5 rules)Unlimited
Hardware warrantyNone (you buy the board)12 months
SupportBest-effort over emailCommitted SLA
Core featuresFullFull + pro features

Good for small apartments + people testing the system. When you need to scale, upgrade to the commercial product.


FAQ

Browser says “navigator.serial is undefined”

Web Serial is only on desktop Chrome/Edge/Opera ≥ 89, or Chrome on Android. Firefox and Safari don’t support it.

No USB ports show up when I click Connect

  • Linux: sudo usermod -aG dialout $USER, then log out and back in
  • Windows: ESP32-C6 SuperMini with native USB doesn’t need drivers; boards with CP2102 / CH340 need the matching driver
  • USB cable must be a data cable — many cheap charging cables have only power lines

Flash stops mid-way / times out

  • Hold the BOOT button on the board while plugging in (force download mode)
  • Try a different USB port / cable
  • Reload the page and start over

No Wi-Fi after flashing

ESP32-C6 has no Wi-Fi credentials by default. After flash the gateway opens a PipeHC-XXXX AP for first-time setup. If you don’t see it: reset the board (RST or unplug / re-plug USB).

I have ESP32-S3 / -C3 / -WROOM, can I use those?

The current firmware is built only for ESP32-C6. Other chips are on the roadmap.

Is browser flashing safe?

Browsers sandbox file-system access. esptool-js only talks to the USB port you explicitly grant access to. Firmware is downloaded over HTTPS; you can verify the checksum if needed.

Why pre-register the MAC?

Pre-register is purely technical — it creates an empty “device record” so the gateway can connect when it boots. It does not link the MAC to any account. Account ownership is decided at the app pairing step, identical to a commercial product.


Need help?

Email: support@mpipe.org — attach Chrome console (F12) logs if there are errors. Firmware bug reports: include firmware version, chip target, and serial output.