Thermostat group setpoint setup fixed, and setting temperature will not turn off heater now

This commit is contained in:
2018-11-23 17:10:34 +03:00
parent 5bdbaf3513
commit 8fccde7686
6 changed files with 87 additions and 18 deletions

View File

@@ -0,0 +1,30 @@
#! /bin/bash
# usage:
# first make your own copy of template
# cp build_flags_template.sh build_flags_ENVNAME.sh
# then edit, change or comment something
export FLAGS="-DMY_CONFIG_SERVER=lazyhome.ru"
#export FLAGS="$FLAGS -DWATCH_DOG_TICKER_DISABLE"
#export FLAGS="$FLAGS -DUSE_1W_PIN=12"
#export FLAGS="$FLAGS -DSD_CARD_INSERTED"
export FLAGS="$FLAGS -DSERIAL_BAUD=115200"
#export FLAGS="$FLAGS -DWiz5500"
#export FLAGS="$FLAGS -DDISABLE_FREERAM_PRINT"
export FLAGS="$FLAGS -DCUSTOM_FIRMWARE_MAC=de:ad:be:ef:fe:fe"
# export FLAGS="$FLAGS -DDMX_DISABLE"
# export FLAGS="$FLAGS -DARTNET_ENABLE"
# export FLAGS="$FLAGS -DMODBUS_DISABLE"
# export FLAGS="$FLAGS -DOWIRE_DISABLE"
# export FLAGS="$FLAGS -DAVR_DMXOUT_PIN=18"
# export FLAGS="$FLAGS -DLAN_INIT_DELAY=2000"
# export FLAGS="$FLAGS -DCONTROLLINO"
# export FLAGS="$FLAGS -DESP_WIFI_AP=MYAP"
# export FLAGS="$FLAGS -DESP_WIFI_PWD=MYPWD"
# export FLAGS="$FLAGS -DWIFI_MANAGER_DISABLE"
export FLAGS="$FLAGS -DDHT_DISABLE"
# export FLAGS="$FLAGS -DRESET_PIN=5"
# export FLAGS="$FLAGS -DDHCP_RETRY_INTERVAL=60000"
# export FLAGS="$FLAGS -DRESTART_LAN_ON_MQTT_ERRORS"
# export FLAGS="$FLAGS -DW5500_CS_PIN=53"
export FLAGS="$FLAGS -DPIO_SRC_REV="$(git log --pretty=format:%h_%ad -1 --date=short)
echo $FLAGS

View File

@@ -6,8 +6,8 @@
# nano my_build_flags.sh # nano my_build_flags.sh
# and source it # and source it
# source my_build_flags.sh # source my_build_flags.sh
export FLAGS="-DMY_CONFIG_SERVER=lighthub.elistech.ru" #export FLAGS="-DMY_CONFIG_SERVER=lighthub.elistech.ru"
export FLAGS="$FLAGS -DWATCH_DOG_TICKER_DISABLE" #export FLAGS="$FLAGS -DWATCH_DOG_TICKER_DISABLE"
#export FLAGS="$FLAGS -DUSE_1W_PIN=12" #export FLAGS="$FLAGS -DUSE_1W_PIN=12"
#export FLAGS="$FLAGS -DSD_CARD_INSERTED" #export FLAGS="$FLAGS -DSD_CARD_INSERTED"
export FLAGS="$FLAGS -DSERIAL_BAUD=115200" export FLAGS="$FLAGS -DSERIAL_BAUD=115200"
@@ -20,7 +20,7 @@
#export FLAGS="$FLAGS -DAVR_DMXOUT_PIN=18" #export FLAGS="$FLAGS -DAVR_DMXOUT_PIN=18"
#export FLAGS="$FLAGS -DCONTROLLINO" #export FLAGS="$FLAGS -DCONTROLLINO"
# export FLAGS="$FLAGS -DRESET_PIN=8" # export FLAGS="$FLAGS -DRESET_PIN=8"
export FLAGS="$FLAGS -DLAN_INIT_DELAY=2000" # export FLAGS="$FLAGS -DLAN_INIT_DELAY=2000"
# export FLAGS="$FLAGS -DESP_WIFI_AP=vent" # export FLAGS="$FLAGS -DESP_WIFI_AP=vent"
# export FLAGS="$FLAGS -DESP_WIFI_PWD=kk007remont" # export FLAGS="$FLAGS -DESP_WIFI_PWD=kk007remont"
# export FLAGS="$FLAGS -DSYSLOG_ENABLE" # export FLAGS="$FLAGS -DSYSLOG_ENABLE"

View File

@@ -0,0 +1,30 @@
#! /bin/bash
# usage:
# first make your own copy of template
# cp build_flags_template.sh build_flags_ENVNAME.sh
# then edit, change or comment something
export FLAGS="-DMY_CONFIG_SERVER=lazyhome.ru"
#export FLAGS="$FLAGS -DWATCH_DOG_TICKER_DISABLE"
#export FLAGS="$FLAGS -DUSE_1W_PIN=12"
#export FLAGS="$FLAGS -DSD_CARD_INSERTED"
export FLAGS="$FLAGS -DSERIAL_BAUD=115200"
#export FLAGS="$FLAGS -DWiz5500"
#export FLAGS="$FLAGS -DDISABLE_FREERAM_PRINT"
export FLAGS="$FLAGS -DCUSTOM_FIRMWARE_MAC=de:ad:be:ef:fe:fe"
# export FLAGS="$FLAGS -DDMX_DISABLE"
# export FLAGS="$FLAGS -DARTNET_ENABLE"
# export FLAGS="$FLAGS -DMODBUS_DISABLE"
# export FLAGS="$FLAGS -DOWIRE_DISABLE"
# export FLAGS="$FLAGS -DAVR_DMXOUT_PIN=18"
# export FLAGS="$FLAGS -DLAN_INIT_DELAY=2000"
# export FLAGS="$FLAGS -DCONTROLLINO"
# export FLAGS="$FLAGS -DESP_WIFI_AP=MYAP"
# export FLAGS="$FLAGS -DESP_WIFI_PWD=MYPWD"
# export FLAGS="$FLAGS -DWIFI_MANAGER_DISABLE"
export FLAGS="$FLAGS -DDHT_DISABLE"
# export FLAGS="$FLAGS -DRESET_PIN=5"
# export FLAGS="$FLAGS -DDHCP_RETRY_INTERVAL=60000"
# export FLAGS="$FLAGS -DRESTART_LAN_ON_MQTT_ERRORS"
# export FLAGS="$FLAGS -DW5500_CS_PIN=53"
export FLAGS="$FLAGS -DPIO_SRC_REV="$(git log --pretty=format:%h_%ad -1 --date=short)
echo $FLAGS

0
custom-build-flags/build_flags_template.sh Normal file → Executable file
View File

View File

@@ -84,7 +84,7 @@ void Item::Parse() {
itemType = aJson.getArrayItem(itemArr, I_TYPE)->valueint; itemType = aJson.getArrayItem(itemArr, I_TYPE)->valueint;
itemArg = aJson.getArrayItem(itemArr, I_ARG); itemArg = aJson.getArrayItem(itemArr, I_ARG);
itemVal = aJson.getArrayItem(itemArr, I_VAL); itemVal = aJson.getArrayItem(itemArr, I_VAL);
debugSerial << F(" Item:") << itemArr->name << F(" T:") << itemType << F(" =") << getArg() << eol; // debugSerial << F(" Item:") << itemArr->name << F(" T:") << itemType << F(" =") << getArg() << eol;
} }
} }
@@ -200,6 +200,8 @@ boolean Item::getEnableCMD(int delta) {
int Item::Ctrl(char * payload, boolean send){ int Item::Ctrl(char * payload, boolean send){
if (!payload) return 0;
// debugSerial<<F("'")<<payload<<F("'")<<eol;
int cmd = txt2cmd(payload); int cmd = txt2cmd(payload);
switch (cmd) { switch (cmd) {
case 0: { case 0: {
@@ -209,7 +211,7 @@ int Item::Ctrl(char * payload, boolean send){
while (payload && i < 3) while (payload && i < 3)
Par[i++] = getInt((char **) &payload); Par[i++] = getInt((char **) &payload);
Ctrl(0, i, Par, send); return Ctrl(0, i, Par, send);
} }
break; break;
@@ -226,7 +228,7 @@ int Item::Ctrl(char * payload, boolean send){
Par[0] = map(hsv.h, 0, 255, 0, 365); Par[0] = map(hsv.h, 0, 255, 0, 365);
Par[1] = map(hsv.s, 0, 255, 0, 100); Par[1] = map(hsv.s, 0, 255, 0, 100);
Par[2] = map(hsv.v, 0, 255, 0, 100); Par[2] = map(hsv.v, 0, 255, 0, 100);
Ctrl(0, 3, Par, send); return Ctrl(0, 3, Par, send);
} }
break; break;
} }
@@ -234,13 +236,13 @@ int Item::Ctrl(char * payload, boolean send){
case CMD_ON: case CMD_ON:
// if (item.getEnableCMD(500) || lanStatus == 4) // if (item.getEnableCMD(500) || lanStatus == 4)
Ctrl(cmd, 0, NULL, return Ctrl(cmd, 0, NULL,
send); //Accept ON command not earlier then 500 ms after set settings (Homekit hack) send); //Accept ON command not earlier then 500 ms after set settings (Homekit hack)
// else debugSerial<<F("on Skipped")); // else debugSerial<<F("on Skipped"));
break; break;
default: //some known command default: //some known command
Ctrl(cmd, 0, NULL, send); return Ctrl(cmd, 0, NULL, send);
} //ctrl } //ctrl
} }
@@ -249,12 +251,15 @@ int Item::Ctrl(char * payload, boolean send){
int Item::Ctrl(short cmd, short n, int *Parameters, boolean send) { int Item::Ctrl(short cmd, short n, int *Parameters, boolean send) {
debugSerial<<F("Cmd=")<<cmd<<F(" MEM=")<<freeRam()<<eol; debugSerial<<F(" MEM=")<<freeRam()<<F(" Cmd=")<<cmd<<F(" Par: ");
int Par[MAXCTRLPAR] = {0, 0, 0}; int Par[MAXCTRLPAR] = {0, 0, 0};
if (Parameters) if (Parameters)
for (short i=0;i<n && i<MAXCTRLPAR;i++) Par[i] = Parameters[i]; for (short i=0;i<n && i<MAXCTRLPAR;i++){
Par[i] = Parameters[i];
debugSerial<<Par[i]<<F(",");
}
debugSerial<<eol;
int iaddr = getArg(); int iaddr = getArg();
HSVstore st; HSVstore st;
switch (cmd) { switch (cmd) {
@@ -292,13 +297,12 @@ int Item::Ctrl(short cmd, short n, int *Parameters, boolean send) {
switch (cmd) { switch (cmd) {
case 0: //no command case 0: //no command
setCmd(CMD_SET); if (itemType !=CH_THERMO) setCmd(CMD_SET); //prevent ON thermostat by semp set
switch (itemType) { switch (itemType) {
case CH_RGBW: //only if configured VAL array case CH_RGBW: //only if configured VAL array
if (!Par[1]) itemType = CH_WHITE; if (!Par[1]) itemType = CH_WHITE;
case CH_GROUP: //Save for groups as well
case CH_RGB: case CH_RGB:
if (n == 3) { // Full triplet passed if (n == 3) { // Full triplet passed
st.h = Par[0]; st.h = Par[0];
@@ -317,7 +321,12 @@ int Item::Ctrl(short cmd, short n, int *Parameters, boolean send) {
} }
if (send) SendStatus(0,3,Par,true); // Send back triplet ? if (send) SendStatus(0,3,Par,true); // Send back triplet ?
break; break;
case CH_GROUP: //Save for groups as well
st.h = Par[0];
st.s = Par[1];
st.v = Par[2];
setVal(st.aslong);
break;
case CH_PWM: case CH_PWM:
case CH_VC: case CH_VC:
case CH_DIMMER: case CH_DIMMER:

View File

@@ -11,12 +11,12 @@
src_dir = lighthub src_dir = lighthub
env_default = env_default =
; megaatmega2560 ; megaatmega2560
; megaatmega2560-net megaatmega2560-net
; due ; due
; esp8266 ; esp8266
; esp32 ; esp32
; megaatmega2560-5500 ; megaatmega2560-5500
due-5500 ; due-5500
; controllino ; controllino
; stm32 ; stm32