From 7147ec01aafbfeb820aa1e97e8459a171bc69780 Mon Sep 17 00:00:00 2001 From: Oskar Joelsson Date: Thu, 9 Jan 2020 17:32:36 +0100 Subject: [PATCH 1/3] add support for DELTACO SH-P01 --- code/espurna/config/arduino.h | 1 + code/espurna/config/hardware.h | 31 ++++++++++++++++++++++++++++--- code/espurna/migrate.ino | 11 +++++++++++ code/platformio.ini | 10 ++++++++++ 4 files changed, 50 insertions(+), 3 deletions(-) diff --git a/code/espurna/config/arduino.h b/code/espurna/config/arduino.h index 142712d32a..f23d7bc1eb 100644 --- a/code/espurna/config/arduino.h +++ b/code/espurna/config/arduino.h @@ -116,6 +116,7 @@ //#define MAXCIO_WUS002S //#define MUVIT_IO_MIOBULB001 //#define NEO_COOLCAM_NAS_WR01W +//#define DELTACO_SH_P01 //#define NEXETE_A19 //#define NODEMCU_BASIC //#define NODEMCU_LOLIN diff --git a/code/espurna/config/hardware.h b/code/espurna/config/hardware.h index 2f696a7c47..996ad18889 100644 --- a/code/espurna/config/hardware.h +++ b/code/espurna/config/hardware.h @@ -2809,6 +2809,31 @@ #define LED1_PIN_INVERSE 1 +// ----------------------------------------------------------------------------- +// Deltaco SH_P01 Wifi Smart Power Plug +// ----------------------------------------------------------------------------- + +#elif defined(DELTACO_SH_P01) + + // Info + #define MANUFACTURER "DELTACO" + #define DEVICE "SH_P01" + + // Buttons + #define BUTTON1_PIN 13 + #define BUTTON1_MODE BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH + #define BUTTON1_RELAY 1 + + // Relays + #define RELAY1_PIN 12 + #define RELAY1_TYPE RELAY_TYPE_NORMAL + + // LEDs + #define LED1_PIN 5 + #define LED1_PIN_INVERSE 1 + #define LED1_MODE LED_MODE_FINDME + + // ------------------------------------------------------------------------------ // Fornorm Wi-Fi USB Extension Socket (ZLD-34EU) // https://www.aliexpress.com/item/Fornorm-WiFi-Extension-Socket-with-Surge-Protector-Smart-Power-Strip-3-Outlets-and-4-USB-Charging/32849743948.html @@ -3570,15 +3595,15 @@ #define DUMMY_RELAY_COUNT 1 // Light - #define LIGHT_CHANNELS 4 + #define LIGHT_CHANNELS 3 #define LIGHT_CH1_PIN 4 // RED #define LIGHT_CH2_PIN 12 // GREEN #define LIGHT_CH3_PIN 14 // BLUE - #define LIGHT_CH4_PIN 5 // WHITE + // #define LIGHT_CH4_PIN 5 // WHITE #define LIGHT_CH1_INVERSE 0 #define LIGHT_CH2_INVERSE 0 #define LIGHT_CH3_INVERSE 0 - #define LIGHT_CH4_INVERSE 0 + // #define LIGHT_CH4_INVERSE 0 // ----------------------------------------------------------------------------- // Nexete A19 diff --git a/code/espurna/migrate.ino b/code/espurna/migrate.ino index 91cc3ebd82..85fe42a6f2 100644 --- a/code/espurna/migrate.ino +++ b/code/espurna/migrate.ino @@ -1414,6 +1414,17 @@ void migrate() { setSetting("chLogic", 3, 0); setSetting("relays", 1); + #elif defined(DELTACO_SH_P01) + + setSetting("board", 105); + setSetting("ledGPIO", 0, 5); + setSetting("ledLogic", 0, 1); + setSetting("ledMode", 0, LED_MODE_FOLLOW); + setSetting("btnGPIO", 0, 13); + setSetting("btnRelay", 0, 0); + setSetting("relayGPIO", 0, 12); + setSetting("relayType", 0, RELAY_TYPE_NORMAL); + #else // Allow users to define new settings without migration config diff --git a/code/platformio.ini b/code/platformio.ini index dc6f1af3a5..c462d2ad63 100644 --- a/code/platformio.ini +++ b/code/platformio.ini @@ -1212,6 +1212,16 @@ build_flags = ${common.build_flags_1m0m} -DNEO_COOLCAM_NAS_WR01W upload_port = ${common.ota_upload_port} upload_flags = ${common.ota_upload_flags} +[env:deltaco-sh-p01] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_P01 + +[env:deltaco-sh-p01-ota] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_P01 +upload_port = ${common.ota_upload_port} +upload_flags = ${common.ota_upload_flags} + [env:estink-wifi-power-strip] board = ${common.board_1m} build_flags = ${common.build_flags_1m0m} -DFORNORM_ZLD_34EU From 1a79c10c367d30fccb1826f3b449ebe305c7621c Mon Sep 17 00:00:00 2001 From: Oskar Joelsson Date: Thu, 9 Jan 2020 18:34:47 +0100 Subject: [PATCH 2/3] renaming deltaco_sh_le14w to deltaco_sh_lexxw --- code/espurna/config/arduino.h | 1 + code/espurna/config/hardware.h | 27 ++++++++++++++++++++++++--- code/espurna/migrate.ino | 11 +++++++++++ code/platformio.ini | 10 ++++++++++ 4 files changed, 46 insertions(+), 3 deletions(-) diff --git a/code/espurna/config/arduino.h b/code/espurna/config/arduino.h index f23d7bc1eb..b1d8f65541 100644 --- a/code/espurna/config/arduino.h +++ b/code/espurna/config/arduino.h @@ -117,6 +117,7 @@ //#define MUVIT_IO_MIOBULB001 //#define NEO_COOLCAM_NAS_WR01W //#define DELTACO_SH_P01 +//#define DELTACO_SH_LEXXW //#define NEXETE_A19 //#define NODEMCU_BASIC //#define NODEMCU_LOLIN diff --git a/code/espurna/config/hardware.h b/code/espurna/config/hardware.h index 996ad18889..5c25e59068 100644 --- a/code/espurna/config/hardware.h +++ b/code/espurna/config/hardware.h @@ -3595,15 +3595,36 @@ #define DUMMY_RELAY_COUNT 1 // Light - #define LIGHT_CHANNELS 3 + #define LIGHT_CHANNELS 4 #define LIGHT_CH1_PIN 4 // RED #define LIGHT_CH2_PIN 12 // GREEN #define LIGHT_CH3_PIN 14 // BLUE - // #define LIGHT_CH4_PIN 5 // WHITE + #define LIGHT_CH4_PIN 5 // WHITE #define LIGHT_CH1_INVERSE 0 #define LIGHT_CH2_INVERSE 0 #define LIGHT_CH3_INVERSE 0 - // #define LIGHT_CH4_INVERSE 0 + #define LIGHT_CH4_INVERSE 0 + +// ----------------------------------------------------------------------------- +// Generic E14 +// https://www.ebay.com/itm/LED-Bulb-Wifi-E14-4-5W-Candle-RGB-W-4in1-Dimmable-V-tac-Smart-VT-5114/163899840601 +// ----------------------------------------------------------------------------- + +#elif defined(DELTACO_SH_LEXXW) + + // Info + #define MANUFACTURER "DELTACO" + #define DEVICE "SH_LEXXW" + #define RELAY_PROVIDER RELAY_PROVIDER_LIGHT + #define LIGHT_PROVIDER LIGHT_PROVIDER_DIMMER + #define DUMMY_RELAY_COUNT 1 + + // Light + #define LIGHT_CHANNELS 2 + #define LIGHT_CH1_PIN 12 // RED + #define LIGHT_CH2_PIN 14 // WHITE + #define LIGHT_CH1_INVERSE 0 + #define LIGHT_CH4_INVERSE 0 // ----------------------------------------------------------------------------- // Nexete A19 diff --git a/code/espurna/migrate.ino b/code/espurna/migrate.ino index 85fe42a6f2..8fefba665e 100644 --- a/code/espurna/migrate.ino +++ b/code/espurna/migrate.ino @@ -1425,6 +1425,17 @@ void migrate() { setSetting("relayGPIO", 0, 12); setSetting("relayType", 0, RELAY_TYPE_NORMAL); + #elif defined(DELTACO_SH_LEXXW) + + setSetting("board", 106); + setSetting("relayProvider", RELAY_PROVIDER_LIGHT); + setSetting("lightProvider", LIGHT_PROVIDER_DIMMER); + setSetting("chGPIO", 0, 12); + setSetting("chGPIO", 1, 14); + setSetting("chLogic", 0, 0); + setSetting("chLogic", 1, 0); + setSetting("relays", 1); + #else // Allow users to define new settings without migration config diff --git a/code/platformio.ini b/code/platformio.ini index c462d2ad63..0d9e3dcb7c 100644 --- a/code/platformio.ini +++ b/code/platformio.ini @@ -1222,6 +1222,16 @@ build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_P01 upload_port = ${common.ota_upload_port} upload_flags = ${common.ota_upload_flags} +[env:deltaco-sh-lexxw] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_LEXXW + +[env:deltaco-sh-lexxw-ota] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_LEXXW +upload_port = ${common.ota_upload_port} +upload_flags = ${common.ota_upload_flags} + [env:estink-wifi-power-strip] board = ${common.board_1m} build_flags = ${common.build_flags_1m0m} -DFORNORM_ZLD_34EU From 4fad573b937b5f9c4c861cfe96e08a353723d132 Mon Sep 17 00:00:00 2001 From: Oskar Joelsson Date: Fri, 10 Jan 2020 11:36:45 +0100 Subject: [PATCH 3/3] add support Deltaco SH-P03USB and SH-LEXXRGB --- code/espurna/config/arduino.h | 6 ++-- code/espurna/config/hardware.h | 66 +++++++++++++++++++++++++++++++--- code/espurna/migrate.ino | 36 ++++++++++++++++++- code/platformio.ini | 20 +++++++++++ 4 files changed, 121 insertions(+), 7 deletions(-) diff --git a/code/espurna/config/arduino.h b/code/espurna/config/arduino.h index b1d8f65541..c8e9f735e8 100644 --- a/code/espurna/config/arduino.h +++ b/code/espurna/config/arduino.h @@ -26,6 +26,10 @@ //#define BLITZWOLF_BWSHPX //#define BLITZWOLF_BWSHPX_V23 //#define BLITZWOLF_BWSHP5 +//#define DELTACO_SH_LEXXW +//#define DELTACO_SH_LEXXRGB +//#define DELTACO_SH_P01 +//#define DELTACO_SH_P03USB //#define DIGOO_NX_SP202 //#define EHOMEDIY_WT02 //#define EHOMEDIY_WT03 @@ -116,8 +120,6 @@ //#define MAXCIO_WUS002S //#define MUVIT_IO_MIOBULB001 //#define NEO_COOLCAM_NAS_WR01W -//#define DELTACO_SH_P01 -//#define DELTACO_SH_LEXXW //#define NEXETE_A19 //#define NODEMCU_BASIC //#define NODEMCU_LOLIN diff --git a/code/espurna/config/hardware.h b/code/espurna/config/hardware.h index 5c25e59068..feb65e325d 100644 --- a/code/espurna/config/hardware.h +++ b/code/espurna/config/hardware.h @@ -2834,6 +2834,39 @@ #define LED1_MODE LED_MODE_FINDME +// ------------------------------------------------------------------------------ +// DELTACO_SH_P03USB Wifi Smart Power Plug +// ----------------------------------------------------------------------------- + +#elif defined(DELTACO_SH_P03USB) + + // Info + #define MANUFACTURER "DELTACO" + #define DEVICE "SH_P03USB" + + // Buttons + #define BUTTON1_PIN 13 + #define BUTTON1_MODE BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH | BUTTON_SET_PULLUP + #define BUTTON1_RELAY 2 + + // Relays + #define RELAY1_PIN 15 // USB power + #define RELAY2_PIN 12 // power plug 1 + #define RELAY3_PIN 14 // power plug 2 + #define RELAY4_PIN 5 // power plug 3 + + #define RELAY1_TYPE RELAY_TYPE_NORMAL + #define RELAY2_TYPE RELAY_TYPE_NORMAL + #define RELAY3_TYPE RELAY_TYPE_NORMAL + #define RELAY4_TYPE RELAY_TYPE_NORMAL + + // LEDs + #define LED1_PIN 0 // power led + #define LED1_PIN_INVERSE 1 + #define LED1_MODE LED_MODE_FINDME + + + // ------------------------------------------------------------------------------ // Fornorm Wi-Fi USB Extension Socket (ZLD-34EU) // https://www.aliexpress.com/item/Fornorm-WiFi-Extension-Socket-with-Surge-Protector-Smart-Power-Strip-3-Outlets-and-4-USB-Charging/32849743948.html @@ -3606,8 +3639,7 @@ #define LIGHT_CH4_INVERSE 0 // ----------------------------------------------------------------------------- -// Generic E14 -// https://www.ebay.com/itm/LED-Bulb-Wifi-E14-4-5W-Candle-RGB-W-4in1-Dimmable-V-tac-Smart-VT-5114/163899840601 +// Deltaco white e14 (SH-LE14W) and e27 (SH-LE27W) // ----------------------------------------------------------------------------- #elif defined(DELTACO_SH_LEXXW) @@ -3621,10 +3653,36 @@ // Light #define LIGHT_CHANNELS 2 - #define LIGHT_CH1_PIN 12 // RED - #define LIGHT_CH2_PIN 14 // WHITE + #define LIGHT_CH1_PIN 12 // WARM WHITE + #define LIGHT_CH2_PIN 14 // COLD WHITE + #define LIGHT_CH1_INVERSE 0 + #define LIGHT_CH2_INVERSE 0 + +// ----------------------------------------------------------------------------- +// Deltaco rgbw e27 (SH-LE27RGB) +// ----------------------------------------------------------------------------- + +#elif defined(DELTACO_SH_LEXXRGB) + + // Info + #define MANUFACTURER "DELTACO" + #define DEVICE "SH_LEXXRGB" + #define RELAY_PROVIDER RELAY_PROVIDER_LIGHT + #define LIGHT_PROVIDER LIGHT_PROVIDER_DIMMER + #define DUMMY_RELAY_COUNT 1 + + // Light + #define LIGHT_CHANNELS 5 + #define LIGHT_CH1_PIN 5 // RED + #define LIGHT_CH2_PIN 4 // GREEN + #define LIGHT_CH3_PIN 13 // BLUE + #define LIGHT_CH4_PIN 14 // WARM WHITE + #define LIGHT_CH5_PIN 12 // COLD WHITE #define LIGHT_CH1_INVERSE 0 + #define LIGHT_CH2_INVERSE 0 + #define LIGHT_CH3_INVERSE 0 #define LIGHT_CH4_INVERSE 0 + #define LIGHT_CH5_INVERSE 0 // ----------------------------------------------------------------------------- // Nexete A19 diff --git a/code/espurna/migrate.ino b/code/espurna/migrate.ino index 8fefba665e..292a48a0f0 100644 --- a/code/espurna/migrate.ino +++ b/code/espurna/migrate.ino @@ -1425,9 +1425,26 @@ void migrate() { setSetting("relayGPIO", 0, 12); setSetting("relayType", 0, RELAY_TYPE_NORMAL); - #elif defined(DELTACO_SH_LEXXW) + #elif defined(DELTACO_SH_P03USB) setSetting("board", 106); + setSetting("btnGPIO", 0, 13); + setSetting("btnRelay", 0, 2); + setSetting("ledGPIO", 0, 0); + setSetting("ledLogic", 0, 1); + setSetting("ledMode", 0, LED_MODE_FINDME); + setSetting("relayGPIO", 0, 15); + setSetting("relayGPIO", 1, 12); + setSetting("relayGPIO", 2, 14); + setSetting("relayGPIO", 3, 5); + setSetting("relayType", 0, RELAY_TYPE_NORMAL); + setSetting("relayType", 1, RELAY_TYPE_NORMAL); + setSetting("relayType", 2, RELAY_TYPE_NORMAL); + setSetting("relayType", 3, RELAY_TYPE_NORMAL); + + #elif defined(DELTACO_SH_LEXXW) + + setSetting("board", 107); setSetting("relayProvider", RELAY_PROVIDER_LIGHT); setSetting("lightProvider", LIGHT_PROVIDER_DIMMER); setSetting("chGPIO", 0, 12); @@ -1436,6 +1453,23 @@ void migrate() { setSetting("chLogic", 1, 0); setSetting("relays", 1); + #elif defined(DELTACO_SH_LEXXRGB) + + setSetting("board", 108); + setSetting("relayProvider", RELAY_PROVIDER_LIGHT); + setSetting("lightProvider", LIGHT_PROVIDER_DIMMER); + setSetting("chGPIO", 0, 5); + setSetting("chGPIO", 1, 4); + setSetting("chGPIO", 2, 13); + setSetting("chGPIO", 3, 14); + setSetting("chGPIO", 4, 12); + setSetting("chLogic", 0, 0); + setSetting("chLogic", 1, 0); + setSetting("chLogic", 2, 0); + setSetting("chLogic", 3, 0); + setSetting("chLogic", 4, 0); + setSetting("relays", 1); + #else // Allow users to define new settings without migration config diff --git a/code/platformio.ini b/code/platformio.ini index 0d9e3dcb7c..ac2ebe5b41 100644 --- a/code/platformio.ini +++ b/code/platformio.ini @@ -1222,6 +1222,16 @@ build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_P01 upload_port = ${common.ota_upload_port} upload_flags = ${common.ota_upload_flags} +[env:deltaco-sh-p03usb] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_P03USB + +[env:deltaco-sh-p03usb-ota] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_P03USB +upload_port = ${common.ota_upload_port} +upload_flags = ${common.ota_upload_flags} + [env:deltaco-sh-lexxw] board = ${common.board_1m} build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_LEXXW @@ -1232,6 +1242,16 @@ build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_LEXXW upload_port = ${common.ota_upload_port} upload_flags = ${common.ota_upload_flags} +[env:deltaco-sh-lexxrgb] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_LEXXRGB + +[env:deltaco-sh-lexxrgb-ota] +board = ${common.board_1m} +build_flags = ${common.build_flags_1m0m} -DDELTACO_SH_LEXXRGB +upload_port = ${common.ota_upload_port} +upload_flags = ${common.ota_upload_flags} + [env:estink-wifi-power-strip] board = ${common.board_1m} build_flags = ${common.build_flags_1m0m} -DFORNORM_ZLD_34EU