MQTT bridge for EWPE Smart powered devices which can be controled via WiFi using EWPE Smart app
This project became possible thanks to great work of reverse engineering the original app protocol in gree-remote project
Setup and run MQTT server (mosquitto is the easiest one)
git clone https://github.com/stas-demydiuk/ewpe-smart-mqtt
npm install
Variable | Description | Default value |
---|---|---|
MQTT_SERVER | MQTT server URI | mqtt://127.0.0.1 |
MQTT_PORT | MQTT Server Port | 1883 |
MQTT_USERNAME | MQTT Server Username | |
MQTT_PASSWORD | MQTT Server Password | |
MQTT_BASE_TOPIC | Base MQTT topic for bridge messages | ewpe-smart |
NETWORK | Network adress (or addresses separated by semicolon) to scan devices | 192.168.1.255 |
DEVICE_POLL_INTERVAL | Interval (ms) to poll device status | 5000 |
LOG_LEVEL | App Log level | info |
npm start
docker run -it \
--network="host" \
-e "MQTT_SERVER=mqtt://127.0.0.1" \
-e "MQTT_BASE_TOPIC=ewpe-smart" \
-e "NETWORK=192.168.1.255" \
-e "DEVICE_POLL_INTERVAL=5000" \
--name ewpe-smart-mqtt \
demydiuk/ewpe-smart-mqtt:latest
Clone or download the repository
cd /opt/
git clone https://github.com/stas-demydiuk/ewpe-smart-mqtt
Create service file
sudo nano /etc/systemd/system/ewpe-smart-mqtt.service
[Unit]
Description=ewpe-smart-mqtt
After=mosquitto.target
[Service]
ExecStart=/usr/bin/node /opt/ewpe-smart-mqtt/index.js --NETWORK="192.168.1.255" --MQTT_SERVER="mqtt://127.0.0.1" --MQTT_PORT="1883" --MQTT_USERNAME="" --MQTT_PASSWORD="" --MQTT_BASE_TOPIC="ewpe-smart" --DEVICE_POLL_INTERVAL="5000"
# Required on some systems
WorkingDirectory=/opt/ewpe-smart-mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
RestartSec=10
User=pi
Group=pi
[Install]
WantedBy=multi-user.target
sudo systemctl enable ewpe-smart-mqtt.service
sudo systemctl start|stop ewpe-smart-mqtt.service
ewpe-smart/devices/list
to receive list of registered devicesewpe-smart/{deviceId}/get
to receive status of {deviceId}ewpe-smart/{deviceId}/set
to set status of {deviceId}, payload should be json object with key/values pairs to set, i.e:
ewpe-smart/{deviceId}/set {"Pow": 1, "SetTem": 24}
Supported features depend on your AC unit, full list can be found here
All devices which can be controlled via EWPE Smart app should be supported, including: