diff --git a/README.md b/README.md index 4b8b0bb6..77b72e6f 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,11 @@ For more information please refer to the [ESPurna Wiki](https://bitbucket.org/xo |![IteadStudio Sonoff Dual](images/devices/sonoff-dual.jpg) **IteadStudio Sonoff Dual**|![IteadStudio Sonoff POW](images/devices/sonoff-pow.jpg) **IteadStudio Sonoff POW**|![IteadStudio Sonoff TH10/TH16](images/devices/sonoff-th10-th16.jpg) **IteadStudio Sonoff TH10/TH16**| |![IteadStudio Sonoff RF](images/devices/sonoff-rf.jpg) **IteadStudio Sonoff RF**|![IteadStudio Sonoff SV](images/devices/sonoff-sv.jpg) **IteadStudio Sonoff SV**|![IteadStudio Sonoff Touch](images/devices/sonoff-touch.jpg) **IteadStudio Sonoff Touch**| |![Wemos D1 Mini Relay Shield](images/devices/d1mini.jpg) **Wemos D1 Mini Relay Shield**|![Electrodragon Relay Board](images/devices/electrodragon-relay-board.jpg) **Electrodragon Relay Board**|![WorkChoice EcoPlug](images/devices/workchoice-ecoplug.jpg) **WorkChoice EcoPlug**| +<<<<<<< HEAD |![JanGoe Wifi Relay (NO/NC)](images/devices/jangoe-wifi-relay.png) **JanGoe Wifi Relay (NO/NC)**||| +======= +|![WiFi MQTT Relay / Thermostat](images/devices/wifi-relay.jpg) **WiFi MQTT Relay / Thermostat**| +>>>>>>> Add support for WiFi MQTT Relay / Thermostat from OpenEnergyMonitor here; https://guide.openenergymonitor.org/integrations/mqtt-relay/ ## License diff --git a/code/espurna/config/hardware.h b/code/espurna/config/hardware.h index 2d0dd5f2..771773bf 100644 --- a/code/espurna/config/hardware.h +++ b/code/espurna/config/hardware.h @@ -1,3 +1,35 @@ +//-------------------------------------------------------------------------------- +// HARDWARE +// This setting is normally provided by PlatformIO +// Uncomment the appropiate line to build from the Arduino IDE +//-------------------------------------------------------------------------------- + +//#define NODEMCUV2 +//#define SONOFF +//#define SONOFF_TH +//#define SLAMPHER +//#define S20 +//#define SONOFF_SV +//#define SONOFF_POW +//#define SONOFF_DUAL +//#define SONOFF_4CH +//#define ESP_RELAY_BOARD +//#define ECOPLUG +//#define ESPURNA +//#define WIFI_RELAY + +//#define ENABLE_DHT 1 +//#define ENABLE_DS18B20 1 +//#define ENABLE_EMON 1 +//#define ENABLE_HLW8018 1 +//#define ENABLE_RF 1 +//#define ENABLE_FAUXMO 0 +//#define ENABLE_NOFUSS 1 + +#ifndef ENABLE_FAUXMO + #define ENABLE_FAUXMO 1 +#endif + // ----------------------------------------------------------------------------- // Development boards // ----------------------------------------------------------------------------- @@ -7,9 +39,7 @@ #define MANUFACTURER "NODEMCU" #define DEVICE "LOLIN" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 2 #define LED1_PIN_INVERSE 1 @@ -18,7 +48,6 @@ #define MANUFACTURER "WEMOS" #define DEVICE "D1_MINI" #define RELAY1_PIN 5 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 2 #define LED1_PIN_INVERSE 1 @@ -31,9 +60,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SONOFF" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 @@ -42,9 +69,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SONOFF_TH" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 @@ -53,9 +78,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SONOFF_SV" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 @@ -64,9 +87,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SLAMPHER" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 @@ -75,9 +96,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "S20" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 @@ -86,9 +105,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SONOFF_TOUCH" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 @@ -97,9 +114,7 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SONOFF_POW" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 15 #define LED1_PIN_INVERSE 0 #define ENABLE_POW 1 @@ -119,42 +134,16 @@ #define MANUFACTURER "ITEAD" #define DEVICE "SONOFF_4CH" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define BUTTON2_PIN 9 - #define BUTTON2_RELAY 2 #define BUTTON3_PIN 10 - #define BUTTON3_RELAY 3 #define BUTTON4_PIN 14 - #define BUTTON4_RELAY 4 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define RELAY2_PIN 5 - #define RELAY2_PIN_INVERSE 0 #define RELAY3_PIN 4 - #define RELAY3_PIN_INVERSE 0 #define RELAY4_PIN 15 - #define RELAY4_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 1 -#elif defined(ITEAD_1CH_INCHING) - - // Note: definitions for this board are based on third party data - // and have not been fully tested yet. If you have the chance to - // test them, please report back. Thank you. - - #define MANUFACTURER "ITEAD" - #define DEVICE "1CH_INCHING" - #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 - #define BUTTON2_PIN 15 - #define BUTTON2_RELAY 0 - #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 - #define LED1_PIN 13 - #define LED1_PIN_INVERSE 0 - #define LED_PULSE 14 - // ----------------------------------------------------------------------------- // Electrodragon boards // ----------------------------------------------------------------------------- @@ -164,13 +153,9 @@ #define MANUFACTURER "ELECTRODRAGON" #define DEVICE "ESP_RELAY_BOARD" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define BUTTON2_PIN 2 - #define BUTTON2_RELAY 2 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define RELAY2_PIN 13 - #define RELAY2_PIN_INVERSE 0 #define LED1_PIN 16 #define LED1_PIN_INVERSE 0 @@ -183,42 +168,10 @@ #define MANUFACTURER "WORKCHOICE" #define DEVICE "ECOPLUG" #define BUTTON1_PIN 13 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 15 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 2 #define LED1_PIN_INVERSE 0 -// ----------------------------------------------------------------------------- -// JanGoe Wifi Relay (https://github.com/JanGoe/esp8266-wifi-relay) -// ----------------------------------------------------------------------------- - -#elif defined(WIFI_RELAY_NC) - - #define MANUFACTURER "JANGOE" - #define DEVICE "WIFI_RELAY_NC" - #define BUTTON1_PIN 12 - #define BUTTON1_RELAY 1 - #define BUTTON2_PIN 13 - #define BUTTON2_RELAY 2 - #define RELAY1_PIN 2 - #define RELAY1_PIN_INVERSE 1 - #define RELAY2_PIN 14 - #define RELAY2_PIN_INVERSE 1 - -#elif defined(WIFI_RELAY_NO) - - #define MANUFACTURER "JANGOE" - #define DEVICE "WIFI_RELAY_NO" - #define BUTTON1_PIN 12 - #define BUTTON1_RELAY 1 - #define BUTTON2_PIN 13 - #define BUTTON2_RELAY 2 - #define RELAY1_PIN 2 - #define RELAY1_PIN_INVERSE 0 - #define RELAY2_PIN 14 - #define RELAY2_PIN_INVERSE 0 - // ----------------------------------------------------------------------------- // ESPurna board (still beta) // ----------------------------------------------------------------------------- @@ -228,12 +181,23 @@ #define MANUFACTURER "TINKERMAN" #define DEVICE "ESPURNA" #define BUTTON1_PIN 0 - #define BUTTON1_RELAY 1 #define RELAY1_PIN 12 - #define RELAY1_PIN_INVERSE 0 #define LED1_PIN 13 #define LED1_PIN_INVERSE 0 +// ----------------------------------------------------------------------------- +// WiFi MQTT Relay / Thermostat +// ----------------------------------------------------------------------------- + +#elif defined(WIFI_RELAY) + + #define MANUFACTURER "OPENENERGYMONITOR" + #define DEVICE "WIFI_RELAY" + #define BUTTON1_PIN 0 + #define RELAY1_PIN 12 + #define LED1_PIN 16 + #define LED1_PIN_INVERSE 0 + // ----------------------------------------------------------------------------- // Unknown hardware // ----------------------------------------------------------------------------- diff --git a/code/platformio.ini b/code/platformio.ini index cb9ca7eb..6a58662c 100644 --- a/code/platformio.ini +++ b/code/platformio.ini @@ -264,6 +264,7 @@ upload_speed = 115200 upload_port = "192.168.4.1" upload_flags = --auth=fibonacci --port 8266 +<<<<<<< HEAD [env:jangoe-debug] platform = espressif8266 framework = arduino @@ -281,6 +282,25 @@ lib_deps = ${common.lib_deps} lib_ignore = ${common.lib_ignore} extra_script = pio_hooks.py build_flags = -g -DDEBUG_PORT=Serial -DWIFI_RELAY_NC +======= +[env:wifi-relay-debug] +platform = espressif8266 +framework = arduino +board = esp_wroom_02 +lib_deps = ${common.lib_deps} +lib_ignore = ${common.lib_ignore} +extra_script = pio_hooks.py +build_flags = -g -DDEBUG_PORT=Serial -DDEBUG_FAUXMO=Serial -DNOWSAUTH -DWIFI_RELAY -DENABLE_DS18B20=1 + +[env:wifi-relay-debug-ota] +platform = espressif8266 +framework = arduino +board = esp_wroom_02 +lib_deps = ${common.lib_deps} +lib_ignore = ${common.lib_ignore} +extra_script = pio_hooks.py +build_flags = -g -DDEBUG_PORT=Serial -DDEBUG_FAUXMO=Serial -DNOWSAUTH -DWIFI_RELAY -DENABLE_DS18B20=1 +>>>>>>> Add support for WiFi MQTT Relay / Thermostat from OpenEnergyMonitor here; https://guide.openenergymonitor.org/integrations/mqtt-relay/ upload_speed = 115200 upload_port = "192.168.4.1" upload_flags = --auth=fibonacci --port 8266 diff --git a/images/devices/wifi-relay.jpg b/images/devices/wifi-relay.jpg new file mode 100644 index 00000000..942bbc4d Binary files /dev/null and b/images/devices/wifi-relay.jpg differ