mirror of https://github.com/sfeakes/AqualinkD.git
parent
94fc20191b
commit
d7e45594b3
39
README.md
39
README.md
|
@ -126,16 +126,23 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* Try an auto-update
|
||||
* Update Mongoose
|
||||
-->
|
||||
# Updates in 2.6.5
|
||||
# Updates in 2.6.6 (May 23 2025)
|
||||
* Fixed some HTTP response codes.
|
||||
* Added checks for protocols vs panel revision.
|
||||
* Fixed auto_configure for panel REV I & K.
|
||||
* Updates to install scripts.
|
||||
* Update to WebUI dimmers.
|
||||
|
||||
# Updates in 2.6.5 (May 5 2025)
|
||||
* Changes to virtual buttons.
|
||||
|
||||
# Updates in 2.6.4
|
||||
# Updates in 2.6.4 (Apr 28 2025)
|
||||
* Fix docker crash where journal not configured correctly.
|
||||
* Updates to config editor.
|
||||
* Increased number of virtual buttons. (previous limitation only effected RS 16 panels).
|
||||
* Changed to dimmable lights.
|
||||
|
||||
# Updates in 2.6.3
|
||||
# Updates in 2.6.3 (April 13 2025)
|
||||
* AqualinkD can how self-update directly from github. use `Upgrade AqualinkD` button in Aqmanager
|
||||
* New install and remote_install scripts.
|
||||
* Changed MQTT posting frequency when Timers are enabled for better
|
||||
|
@ -145,13 +152,13 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* -or-
|
||||
* `curl -fsSL https://raw.githubusercontent.com/aqualinkd/AqualinkD/master/release/remote_install.sh | sudo bash -s -- latest`
|
||||
|
||||
# Updates in 2.6.1
|
||||
# Updates in 2.6.1 (Mar 26 2025)
|
||||
* Added External Sensors to Web UI & HomeKit.
|
||||
* Added Heat Pump / Chiller Thermostat to Web UI & HomeKit.
|
||||
* Fixed some bugs in Configuration Editor.
|
||||
* Link device/virtual/onetouch button with SWG BOOST. (Allows you to set VSP RPM when in Boost mode)
|
||||
|
||||
# Updates in 2.6.0
|
||||
# Updates in 2.6.0 (Mar 22 2025)
|
||||
* Added configuration editor in aqmanager. [Wiki - AQManager](https://github.com/aqualinkd/AqualinkD/wiki#AQManager)
|
||||
* Can now self-configure on startup. set `device_id=0xFF`
|
||||
* Added scheduling of pump after events (Power On, Freeze Protect, Boost)
|
||||
|
@ -162,8 +169,10 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* Reworked PDA sleep mode.
|
||||
* Added support for Heat Pump / Chiller support.
|
||||
|
||||
# Updates in 2.5.1 (Dec 7 2024)
|
||||
* Patch
|
||||
|
||||
# Updates in 2.5.0
|
||||
# Updates in 2.5.0 (Nov 16 2024)
|
||||
* PDA panel Rev 6.0 or newer that do not have a Jandy iAqualink device attached can use the AqualinkTouch protocol rather than PDA protocol.
|
||||
* This is faster, more reliable and does not intefear with the physical PDA device (like existing implimentation)
|
||||
* Please consider this very much BETA at the moment.
|
||||
|
@ -183,7 +192,7 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* Faster OneTouch device support.
|
||||
|
||||
|
||||
# Updates in Release 2.4.0
|
||||
# Updates in Release 2.4.0 (Sept 7 2024)
|
||||
* <b>WARNING</b> Breaking change if you use dimmer (please change button_??_lightMode from 6 to 10)
|
||||
* Fixed bugs with particular Jandy panel versions and color lights.
|
||||
* Added support for more color lights, and sped up programming
|
||||
|
@ -200,10 +209,10 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* look at `virtual_button??_label` in aqualinkd.conf
|
||||
* have to use AqualinkTouch protocol for `extended_device_id` 0x31->0x33 in aqualinkd.conf
|
||||
|
||||
# Updates in Release 2.3.8
|
||||
# Updates in Release 2.3.8 (Sept 3 2024)
|
||||
* Release removed. Bug with light program 0.
|
||||
|
||||
# Updates in Release 2.3.7
|
||||
# Updates in Release 2.3.7 (Jun 11 2024)
|
||||
* Fix for Pentair VSP losing connection & bouncing SWG to 0 and back.
|
||||
* Added more VSP data (Mode, Status, Pressure Curve, both RPM & GPM) for all Pentair Pumps (VS/VF/VSF).
|
||||
* Few updates to HomeAssistant integration.
|
||||
|
@ -215,14 +224,14 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* Fix freeze protect button in UI not showing enabled.
|
||||
* Few updates to AQmanager UI.
|
||||
|
||||
# Update in Release 2.3.6
|
||||
# Update in Release 2.3.6 (May 31 2024)
|
||||
* No functionality changes
|
||||
* Build & Docker changes
|
||||
* Going forward AqualinkD will release binaries for both armhf & arm64
|
||||
* armhf = any Pi (or equiv board) running 32 bit Debain based OS, stretch or newer
|
||||
* arm64 = Pi3/4/2w running 64 bit Debain based OS, buster or newer
|
||||
|
||||
# Update in Release 2.3.5
|
||||
# Update in Release 2.3.5 (May 23 2024)
|
||||
* Added Home Assistant integration through MQTT discover
|
||||
* Please read the Home Assistant section of the [Wiki - HASSIO](https://github.com/aqualinkd/AqualinkD/wiki#HASSIO)
|
||||
* There are still some enhacments to come on this.
|
||||
|
@ -232,7 +241,7 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* Added Color Light to iAqualinkTouch protocol.
|
||||
* Fixed issue mqtt_timed_update (1~2 min rather than between 2 & 20 min)
|
||||
|
||||
# Update in Release 2.3.4
|
||||
# Update in Release 2.3.4 (May 13 2024)
|
||||
* Changes for Docker
|
||||
* Updated simulator code base and added new simulators for AllButton, OneTouch & PDA.
|
||||
* <aqualinkd.ip>/allbutton_sim.html
|
||||
|
@ -241,7 +250,7 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* On PDA only panel AqualinkD has to share the same ID with the PDA simulator. Therefore for AqualinkD will not respond to commands while simulator is active.
|
||||
* Now you can completely program the control panel with the simulators removing the need to have Jandy device.
|
||||
|
||||
# Update in Release 2.3.3
|
||||
# Update in Release 2.3.3 (May 30 2024)
|
||||
* Introduced Aqualink Manager UI http://aqualink.ip/aqmanager.html
|
||||
* [AqualinkD Manager](https://github.com/aqualinkd/AqualinkD/wiki#AQManager)
|
||||
* Moved logging into systemd/journal (journalctl) from syslog
|
||||
|
@ -254,12 +263,12 @@ NEED TO FIX FOR THIS RELEASE.
|
|||
* Add ```rs485_frame_delay = 4``` to /etc/aqualinkd.conf, 4 is number of milliseconds between frames, 0 will turn off ie no pause.
|
||||
* PDA Changes to support SWG and Boot.
|
||||
|
||||
# Update in Release 2.3.2
|
||||
# Update in Release 2.3.2 (Jul 8 2023)
|
||||
* Added support for VSP on panel versions REV 0.1 & 0.2
|
||||
* Can change heater sliver min/max values in web UI. `./web/config.js`
|
||||
* Added reading ePump RPM/Watts directly from RS485 bus.
|
||||
|
||||
# Update in Release 2.3.1
|
||||
# Update in Release 2.3.1 (Jun 23 2023)
|
||||
* Changed a lot of logic around different protocols.
|
||||
* Added low latency support for FTDI usb driver.
|
||||
* AqualinkD will find out the fastest way to change something depending on the protocols available.
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -259,7 +259,7 @@ function cleanup {
|
|||
#
|
||||
|
||||
|
||||
# See if we are called from curl ot local dir.
|
||||
# See if we are called from curl or local dir.
|
||||
# with curl no tty input and script name wil be blank.
|
||||
if ! tty > /dev/null 2>&1; then
|
||||
script=$(basename "$0")
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -33,6 +33,11 @@ void programDeviceLightMode(struct aqualinkdata *aqdata, int value, int button);
|
|||
void printPanelSupport(struct aqualinkdata *aqdata);
|
||||
uint16_t setPanelSupport(struct aqualinkdata *aqdata);
|
||||
|
||||
|
||||
void removePanelRSserialAdapterInterface();
|
||||
void removePanelOneTouchInterface();
|
||||
void removePanelIAQTouchInterface();
|
||||
|
||||
char *name2label(char *str)
|
||||
{
|
||||
int len = strlen(str);
|
||||
|
@ -117,6 +122,40 @@ const char* find_rev_chars(const char *str, int length, int *out_len) {
|
|||
return NULL; // Pattern not found
|
||||
}
|
||||
|
||||
void checkPanelConfig(struct aqualinkdata *aqdata) {
|
||||
|
||||
// Check panel rev for common errors.
|
||||
|
||||
// Aqualink Touch.
|
||||
if ( _aqconfig_.extended_device_id >= 0x30 && _aqconfig_.extended_device_id <= 0x33) {
|
||||
if ( !isMASKSET(aqdata->panel_support_options, RSP_SUP_AQLT)) {
|
||||
LOG(PANL_LOG, LOG_ERR, "Panel REV %s does not support AqualinkTouch protocol, please change configuration option '%s'\n",aqdata->panel_rev, CFG_N_extended_device_id);
|
||||
LOG(PANL_LOG, LOG_WARNING, "Removing option '%s', please correct configuration\n",CFG_N_extended_device_id);
|
||||
_aqconfig_.extended_device_id = 0x00;
|
||||
removePanelIAQTouchInterface();
|
||||
}
|
||||
}
|
||||
|
||||
// One Touch
|
||||
if ( _aqconfig_.extended_device_id >= 0x40 && _aqconfig_.extended_device_id <= 0x43) {
|
||||
if ( !isMASKSET(aqdata->panel_support_options, RSP_SUP_ONET)) {
|
||||
LOG(PANL_LOG, LOG_ERR, "Panel REV %s does not support OneTouch protocol, please change configuration option '%s'\n",aqdata->panel_rev, CFG_N_extended_device_id);
|
||||
LOG(PANL_LOG, LOG_WARNING, "Removing option '%s', please correct configuration\n",CFG_N_extended_device_id);
|
||||
_aqconfig_.extended_device_id = 0x00;
|
||||
removePanelOneTouchInterface();
|
||||
}
|
||||
}
|
||||
|
||||
// Serial Adapter
|
||||
if ( _aqconfig_.rssa_device_id >= 0x48 && _aqconfig_.rssa_device_id <= 0x49) {
|
||||
if ( !isMASKSET(aqdata->panel_support_options, RSP_SUP_RSSA)) {
|
||||
LOG(PANL_LOG, LOG_ERR, "Panel REV %s does not support RS SerialAdapter protocol, please change configuration option '%s'\n",aqdata->panel_rev, CFG_N_rssa_device_id);
|
||||
LOG(PANL_LOG, LOG_WARNING, "Removing option '%s', please correct configuration\n",CFG_N_rssa_device_id);
|
||||
_aqconfig_.rssa_device_id = 0x00;
|
||||
removePanelRSserialAdapterInterface();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
pull board CPU, revision & panel string from strings like
|
||||
|
@ -164,6 +203,12 @@ uint8_t setPanelInformationFromPanelMsg(struct aqualinkdata *aqdata, const char
|
|||
LOG(PANL_LOG, LOG_NOTICE, "Panel REV %s from %s\n",aqdata->panel_rev,getJandyDeviceName(source));
|
||||
setPanelSupport(aqdata);
|
||||
//printPanelSupport(aqdata);
|
||||
if (source == SIM_NONE) {
|
||||
// We pass SIM_NONE when we are in auto_config mode, so reset the panel name so we get it again when we fully start
|
||||
aqdata->panel_rev[0] = '\0';
|
||||
} else {
|
||||
checkPanelConfig(aqdata);
|
||||
}
|
||||
} else {
|
||||
//printf("Failed to find REV, length\n");
|
||||
}
|
||||
|
@ -397,6 +442,16 @@ void addPanelIAQTouchInterface() {
|
|||
_aqconfig_.paneltype_mask &= ~RSP_ONET;
|
||||
}
|
||||
|
||||
void removePanelRSserialAdapterInterface() {
|
||||
_aqconfig_.paneltype_mask &= ~RSP_RSSA;
|
||||
}
|
||||
void removePanelOneTouchInterface() {
|
||||
_aqconfig_.paneltype_mask &= ~RSP_ONET;
|
||||
}
|
||||
void removePanelIAQTouchInterface() {
|
||||
_aqconfig_.paneltype_mask &= ~RSP_IAQT;
|
||||
}
|
||||
|
||||
int PANEL_SIZE() {
|
||||
if ((_aqconfig_.paneltype_mask & RSP_4) == RSP_4)
|
||||
return 4;
|
||||
|
|
|
@ -121,6 +121,9 @@ const char *getJandyDeviceName(emulation_type etype) {
|
|||
case AQUAPDA:
|
||||
return "PDA";
|
||||
break;
|
||||
case SIM_NONE:
|
||||
return "AutoConfig";
|
||||
break;
|
||||
default:
|
||||
return "Unknown";
|
||||
break;
|
||||
|
|
|
@ -740,7 +740,7 @@ void caculate_ack_packet(int rs_fd, unsigned char *packet_buffer, emulation_type
|
|||
|
||||
#define MAX_AUTO_PACKETS 1200
|
||||
|
||||
bool auto_configure(unsigned char* packet) {
|
||||
bool auto_configure(unsigned char* packet, int rs_fd) {
|
||||
// Loop over PROBE packets and store any we can use,
|
||||
// once we see the 2nd probe of any ID we fave stored, then the loop is complete,
|
||||
// set ID's and exit true, exit falce to get called again.
|
||||
|
@ -755,9 +755,14 @@ bool auto_configure(unsigned char* packet) {
|
|||
static unsigned char firstprobe = 0x00;
|
||||
static unsigned char lastID = 0x00;
|
||||
static bool seen_iAqualink2 = false;
|
||||
static bool ignore_AqualinkTouch = false;
|
||||
static int foundIDs = 0;
|
||||
static int packetsReceived=0;
|
||||
|
||||
static bool gotRev = false;
|
||||
static unsigned char gettingRevID = 0xFF;
|
||||
//static char message[AQ_MSGLONGLEN + 1];
|
||||
|
||||
if (++packetsReceived >= MAX_AUTO_PACKETS ) {
|
||||
LOG(AQUA_LOG,LOG_ERR, "Received %d packets, and didn't get a full probe cycle, stoping Auto Configure!\n",packetsReceived);
|
||||
return true;
|
||||
|
@ -766,6 +771,35 @@ bool auto_configure(unsigned char* packet) {
|
|||
if ( packet[PKT_CMD] == CMD_PROBE ) {
|
||||
LOG(AQUA_LOG,LOG_INFO, "Got Probe on ID 0x%02hhx\n",packet[PKT_DEST]);
|
||||
//printf(" *** Got Probe on ID 0x%02hhx\n",packet[PKT_DEST]);
|
||||
if ( packet[PKT_DEST] >= 0x08 && packet[PKT_DEST] <= 0x0B && gotRev == false && gettingRevID == 0xFF) {
|
||||
// Try replying to get panel rev
|
||||
gettingRevID = packet[PKT_DEST];
|
||||
caculate_ack_packet(rs_fd, packet, ALLBUTTON);
|
||||
return false; // We don't want to store this ID since we use it for getting REV and is won't go back to probe when AqualinkD starts
|
||||
}
|
||||
} else if (packet[PKT_DEST] == gettingRevID) {
|
||||
if ( packet[PKT_CMD] == CMD_MSG ) {
|
||||
if ( rsm_strnstr((char *)&packet[5], " REV", AQ_MSGLEN) != NULL ) {
|
||||
// We need to get the rev to cater for panel rev I & k (maybe others) that send AqualinkTouch probe messages
|
||||
// then they don't support that protocol.
|
||||
LOG(AQUA_LOG,LOG_DEBUG, "Got %15s from ID 0x%02hhx\n",(char *)&packet[5],packet[PKT_DEST]);
|
||||
gotRev = true;
|
||||
gettingRevID = 0xFF;
|
||||
setPanelInformationFromPanelMsg(&_aqualink_data, (char *)&packet[5], PANEL_CPU | PANEL_REV, SIM_NONE);
|
||||
if ( !isMASKSET(_aqualink_data.panel_support_options, RSP_SUP_AQLT)) {
|
||||
LOG(AQUA_LOG,LOG_NOTICE, "Ignoring AqualinkTouch probes due to panel rev\n");
|
||||
ignore_AqualinkTouch = true;
|
||||
if ( _aqconfig_.extended_device_id >= 0x30 && _aqconfig_.extended_device_id <= 0x33 ) {
|
||||
_aqconfig_.extended_device_id = 0x00;
|
||||
_aqconfig_.enable_iaqualink = false;
|
||||
_aqconfig_.read_RS485_devmask &= ~ READ_RS485_IAQUALNK;
|
||||
//firstprobe = 0x00;
|
||||
foundIDs--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
caculate_ack_packet(rs_fd, packet, ALLBUTTON);
|
||||
}
|
||||
|
||||
if (lastID != 0x00 && packet[PKT_DEST] == DEV_MASTER ) { // Can't use got a reply to the late probe.
|
||||
|
@ -803,7 +837,7 @@ bool auto_configure(unsigned char* packet) {
|
|||
_aqconfig_.extended_device_id_programming = true;
|
||||
// Don't increase foundIDs as we prefer not to use this one.
|
||||
LOG(AQUA_LOG,LOG_NOTICE, "Found valid unused extended ID 0x%02hhx\n",lastID);
|
||||
} else if ( (lastID >= 0x30 && lastID <= 0x33) &&
|
||||
} else if ( (lastID >= 0x30 && lastID <= 0x33) && ignore_AqualinkTouch == false &&
|
||||
(_aqconfig_.extended_device_id < 0x30 || _aqconfig_.extended_device_id > 0x33)) { //Overide is it's been set to Touch or not set.
|
||||
_aqconfig_.extended_device_id = lastID;
|
||||
_aqconfig_.extended_device_id_programming = true;
|
||||
|
@ -816,6 +850,8 @@ bool auto_configure(unsigned char* packet) {
|
|||
}
|
||||
// Now reset ID
|
||||
lastID = 0x00;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if ( foundIDs >= 3 || (packet[PKT_DEST] == firstprobe && packet[PKT_CMD] == CMD_PROBE) ) {
|
||||
|
@ -1084,7 +1120,7 @@ void main_loop()
|
|||
|
||||
if (packet_length > 0 && auto_config_complete == false) {
|
||||
blank_read = 0;
|
||||
auto_config_complete = auto_configure(packet_buffer);
|
||||
auto_config_complete = auto_configure(packet_buffer, rs_fd);
|
||||
AddAQDstatusMask(AUTOCONFIGURE_ID);
|
||||
_aqualink_data.updated = true;
|
||||
if (auto_config_complete) {
|
||||
|
|
|
@ -1539,7 +1539,7 @@ void check_print_config (struct aqualinkdata *aqdata)
|
|||
|
||||
|
||||
// Sanity checks
|
||||
|
||||
|
||||
// If no panel has been set, use default one
|
||||
if (_aqconfig_.paneltype_mask == 0) {
|
||||
//printf("Set temp panel info Size=%d, RS=%d, combo=%d, dual=%d\n",_defaultPanel.size,_defaultPanel.rs,_defaultPanel.combo, _defaultPanel.dual);
|
||||
|
|
|
@ -227,7 +227,7 @@ int _numCfgParams;
|
|||
#define CFG_N_serial_port "serial_port"
|
||||
#define CFG_C_serial_port 11
|
||||
#define CFG_N_log_level "log_level"
|
||||
#define CFG_V_log_level "[\"DEBUG\", \"INFO\", \"NOTICE\", \"WARNING\", \"ERROR\"]"
|
||||
#define CFG_V_log_level "[\"DEBUG_SERIAL\", \"DEBUG\", \"INFO\", \"NOTICE\", \"WARNING\", \"ERROR\"]"
|
||||
#define CFG_C_log_level 9
|
||||
#define CFG_N_socket_port "socket_port" // Change to Web_socket
|
||||
#define CFG_C_socket_port 11
|
||||
|
|
|
@ -1344,6 +1344,8 @@ uriAtype action_URI(request_source from, const char *URI, int uri_length, float
|
|||
*rtnmsg = NO_PLIGHT_DEVICE;
|
||||
LOG(NET_LOG,LOG_WARNING, "%s: Didn't find device that matched URI '%.*s'\n",actionName[from], uri_length, URI);
|
||||
rtn = uBad;
|
||||
} else {
|
||||
rtn = uActioned;
|
||||
}
|
||||
} else if ((ri3 != NULL && (strncasecmp(ri2, "brightness", 10) == 0) && (strncasecmp(ri3, "set", 3) == 0))) {
|
||||
found = false;
|
||||
|
@ -1360,6 +1362,8 @@ uriAtype action_URI(request_source from, const char *URI, int uri_length, float
|
|||
*rtnmsg = NO_PLIGHT_DEVICE;
|
||||
LOG(NET_LOG,LOG_WARNING, "%s: Didn't find device that matched URI '%.*s'\n",actionName[from], uri_length, URI);
|
||||
rtn = uBad;
|
||||
} else {
|
||||
rtn = uActioned;
|
||||
}
|
||||
// Action a pump RPM/GPM message
|
||||
} else if ((ri3 != NULL && ((strncasecmp(ri2, "RPM", 3) == 0) || (strncasecmp(ri2, "GPM", 3) == 0) || (strncasecmp(ri2, "Speed", 5) == 0) || (strncasecmp(ri2, "VSP", 3) == 0)) && (strncasecmp(ri3, "set", 3) == 0))) {
|
||||
|
|
|
@ -300,13 +300,13 @@ bool log_panelversion(struct aqualinkdata *aq_data)
|
|||
if (strlen(aq_data->version) > 0) {
|
||||
// If another protocol set the version, we need to check the rev.
|
||||
if (!revTest){
|
||||
LOG(ONET_LOG,LOG_NOTICE, "Control Panel revision %s\n", aq_data->revision);
|
||||
//LOG(ONET_LOG,LOG_NOTICE, "Control Panel revision %s\n", aq_data->revision);
|
||||
if ( strcmp(aq_data->revision, "O.1") == 0 || strcmp(aq_data->revision, "O.2") == 0 ) {
|
||||
LOG(ONET_LOG,LOG_NOTICE, "Setting early version for OneTouch\n");
|
||||
_panel_version_P2 = true;
|
||||
revTest = true;
|
||||
}
|
||||
LOG(ONET_LOG,LOG_NOTICE, "Control Panel revision %s\n", aq_data->revision);
|
||||
//LOG(ONET_LOG,LOG_NOTICE, "Control Panel revision %s\n", aq_data->revision);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
#define AQUALINKD_SHORT_NAME "AqualinkD"
|
||||
|
||||
// Use Magor . Minor . Patch
|
||||
#define AQUALINKD_VERSION "2.6.5"
|
||||
#define AQUALINKD_VERSION "2.6.6"
|
||||
|
|
|
@ -1784,12 +1784,26 @@
|
|||
setTileState(id, state);
|
||||
}
|
||||
} else if (type == 'light_dimmer') {
|
||||
//console.log("DIMMER "+state+" - "+tile.getAttribute('status'));
|
||||
var value = slider.value;
|
||||
if (state == (tile.getAttribute('status') == 'off')) {
|
||||
if (state == false) { //Turn off
|
||||
//console.log("State off");
|
||||
setTileState(id, state);
|
||||
} else if (sp_value != slider.value && dimmer_slider_changed == true) {
|
||||
//console.log("SLIDER CHANGED");
|
||||
setThermostatSetpoint(id, slider.value);
|
||||
} else {
|
||||
//console.log("State on/off");
|
||||
setTileState(id, state);
|
||||
}
|
||||
/*
|
||||
if (state == (tile.getAttribute('status') == 'off')) {
|
||||
console.log("ON/OFF "+state+" = "+(tile.getAttribute('status') == 'off'));
|
||||
setTileState(id, state);
|
||||
} else if (sp_value != slider.value && dimmer_slider_changed == true) {
|
||||
console.log("SLIDER CHANGED");
|
||||
setThermostatSetpoint(id, slider.value);
|
||||
}*/
|
||||
} else if (type == 'setpoint_swg') {
|
||||
//console.log ("Boost attribute = "+tile.getAttribute('boost'));
|
||||
//console.log ("state = "+state);
|
||||
|
|
Loading…
Reference in New Issue