EcoEdge ECO1624 — MQTT Controller for Smart Home Automation

A 16-channel 24V controller with native MQTT support. Publishes state, subscribes to commands, and works with any MQTT broker on your local network — no proprietary protocol, no cloud.

MQTT-Native Hardware for Local Automation

MQTT (Message Queuing Telemetry Transport) is the backbone of most serious smart home automation setups. It is lightweight, fast, and runs entirely on your local network. The EcoEdge ECO1624 speaks MQTT natively — it connects to your broker over WiFi and immediately starts publishing port states and subscribing to control commands.

The ECO1624 implements the Home Assistant MQTT discovery protocol, which means it automatically registers all 16 switch entities with your Home Assistant instance. It also responds to raw MQTT commands from any client — Node-RED, Python scripts, MQTT Explorer, shell scripts, or any other MQTT-capable tool.

MQTT Topic Structure

ECO1624 uses a predictable, documented topic structure. Each port has three topics:

# State (published by device)
ecoedge/{device_id}/port/{n}/state     → "ON" or "OFF"

# Command (subscribe to control)
ecoedge/{device_id}/port/{n}/set       → send "ON" or "OFF"

# Availability
ecoedge/{device_id}/availability       → "online" or "offline"

The device ID is configurable via the web UI. The discovery payload sent to homeassistant/switch/eco1624_{id}/port{n}/config contains the full entity definition including name, command topic, state topic, and availability topic — Home Assistant reads this and creates the entity without any user input.

Setting Up the MQTT Broker

For Home Assistant users, the simplest broker is the official Mosquitto add-on:

  1. In Home Assistant, go to Settings → Add-ons → Add-on Store
  2. Search for Mosquitto broker and install it
  3. Start the add-on and enable Start on boot
  4. In Settings → People, create a dedicated user for ECO1624 (e.g. ecoedge)
  5. In the ECO1624 web UI, enter the Home Assistant host IP, port 1883, and the credentials you created

The ECO1624 will connect to the broker and immediately send its discovery payload. Home Assistant's MQTT integration processes it and the 16 switch entities appear on your dashboard.

Controlling ECO1624 from Any MQTT Client

Because ECO1624 uses standard MQTT topics, any MQTT client can control it directly. From the command line using mosquitto_pub:

# Turn port 1 ON
mosquitto_pub -h 192.168.1.10 -u ecoedge -P yourpassword \
  -t "ecoedge/eco1624_01/port/1/set" -m "ON"

# Turn port 1 OFF
mosquitto_pub -h 192.168.1.10 -u ecoedge -P yourpassword \
  -t "ecoedge/eco1624_01/port/1/set" -m "OFF"

# Watch all port states
mosquitto_sub -h 192.168.1.10 -u ecoedge -P yourpassword \
  -t "ecoedge/eco1624_01/port/#"

This makes ECO1624 compatible with Node-RED, Home Assistant automations, Python scripts using paho-mqtt, or any system that can publish MQTT messages.

Why MQTT for Smart Home Hardware?

  • Local — no cloud round-trip — commands execute in milliseconds on your WiFi, not seconds via a remote server
  • Reliable — QoS levels — MQTT supports at-most-once, at-least-once, and exactly-once delivery guarantees
  • Lightweight — tiny payloads — ideal for WiFi devices with limited resources
  • Pub/sub architecture — multiple clients can subscribe to the same topic; your dashboard, automations, and logging system all receive state updates simultaneously
  • Offline resilience — retained messages let clients know the last known state even after reconnection
  • Open standard — no vendor lock-in; switch brokers, clients, or controllers without re-engineering

Frequently Asked Questions

What MQTT version does ECO1624 use?

ECO1624 implements MQTT 3.1.1, which is supported by all major brokers including Mosquitto, EMQX, and HiveMQ.

Can I use a custom MQTT topic prefix?

Yes. The device ID and topic prefix are configurable via the web UI, allowing you to fit ECO1624 into an existing MQTT topic hierarchy.

Does it support MQTT authentication?

Yes. Username and password authentication is supported. TLS-encrypted connections are on the firmware roadmap.

Can I use ECO1624 without Home Assistant?

Yes. ECO1624 works with any MQTT broker and any MQTT client. Home Assistant auto-discovery is an optional feature — you can control it entirely via raw MQTT topics from Node-RED, Python, or any other system.

Does ECO1624 retain its state after a power cycle?

The broker retains the last-known state via MQTT retained messages. On reconnection, ECO1624 publishes its current output states and the broker/clients resynchronise immediately.

The MQTT controller your automation stack needs

16 ports, native MQTT, fully local. No cloud required.