SpiderBridge — spider web and ESP32 chip

Your grow controller, in Home Assistant

SpiderBridge is an ESP32 firmware that talks to a Spider Farmer GGS controller over Bluetooth and mirrors every value and every setting into Home Assistant — 183 entities, auto-discovered over MQTT. No app, no cloud, no Raspberry Pi.

Install now Live demo GitHub

One device per controller, in Home Assistant

The bridge announces itself over MQTT Discovery. The controller appears as its own device with the complete app feature set — lights, fans, climate, outlets, day/night targets, alarms, calibration and grow plan.

The controller's complete device page in Home Assistant
The controller's full device page — all 153 entities, one image
The SpiderBridge device page in Home Assistant
The bridge's own device page — time, NTP, firmware, uplink

Both device pages are captured whole, one image each, top to bottom.

Using the Spider Farmer app? Keep it — you only have to switch the controller's Wi-Fi to the bridge's hotspot once. The app keeps working through the bridge (the controller's own cloud link can even be turned off in the web interface), and Home Assistant gets the full picture at the same time.

Everything the app can do — 1:1

153 entities per controller plus 30 on the bridge itself. Native HA entities, so automations, dashboards, voice assistants and the Energy dashboard all work.

Both lights

On/off, brightness, Manual / Schedule / PPFD mode, window, target brightness, fade time, PPFD target with min/max brightness, dim and off-threshold.

Both fans

Circulation fan and exhaust fan: speed, Manual / Schedule / Cycle / Environment modes, schedule and cycle windows, standby speed, oscillation, natural wind, CO₂-close.

Climate & outlets

Heater, humidifier and dehumidifier, plus all ten outlets of the power strips — every one of them a switch you can automate.

Day/night cycle & alarms

Targets and deadbands for temperature, humidity and CO₂ by day and night, and all 13 alarm types with their min/max ranges.

Live readings

Air temperature, humidity, CO₂, VPD, PPFD, substrate temperature/humidity and EC — plus controller clock, uptime, restarts and free memory.

Grow plan & time

Multi-stage plans from templates with labels, dates, colours and reminders; timezone, automatic daylight saving and one-click time sync.

Quick start

Three steps. No Spider Farmer account, no vendor server, no phone in the loop.

1

Flash the ESP32

Open the web installer in Chrome or Edge, connect the board over USB and click Connect. Your Wi-Fi credentials are sent along through Improv Serial while you install. To flash by hand instead, the factory image is also available for download.

2

Connect the bridge to HA

Point the bridge at your MQTT broker (Settings → MQTT). The diagnostics entities show up immediately; the controller follows once it is paired.

3

Pair the controller

In the web interface open Control → Bluetooth: scan, pick your controller and confirm. The bridge hands over the hotspot credentials and the controller appears in Home Assistant with all of its entities.

How it works

The controller and the bridge talk the encrypted GGS protocol over Bluetooth; the bridge talks MQTT to Home Assistant. Optionally, controllers that join the bridge's hotspot are relayed to the real Spider Farmer cloud — or completely cut off from it.

Controller to bridge over Bluetooth, bridge to Home Assistant over MQTT, optional relay to the Spider Farmer cloud

Hardware

Illustration of an ESP32-WROOM-32 board

A ~€10 ESP32 board with 4 MB flash is enough — developed and tested with the ESP32-WROOM-32 board below. Any other ESP32 with 4 MB flash works as well.

Supported ESP32 board (Amazon)

Ordering through the affiliate link supports the project at no extra cost to you. A Spider Farmer GGS controller with Bluetooth and any Home Assistant installation with MQTT complete the picture.

The bridge's own web interface

Six pages, running entirely on the ESP32: settings, control, status, network, MQTT log and firmware update. The live demo is the real interface rendered offline with random data.