mirror of https://github.com/sfeakes/AqualinkD.git
update
parent
a033fc3fbf
commit
df0c529261
|
@ -84,6 +84,10 @@ Designed to mimic AqualinkRS devices, used to fully configure the master control
|
|||
* Update AqualinkD Management console to manage configuration
|
||||
* Create iAqualink Touch Simulator
|
||||
|
||||
# Update in Release 2.3.5
|
||||
* Added iAqualinkTouch support for PDA only panels that can use that protocol.
|
||||
* This makes the PDA only panels quicker and less error prone.
|
||||
|
||||
# Update in Release 2.3.4
|
||||
* Changes for Docker
|
||||
* Updated simulator code base and added new simulators for AllButton, OneTouch & PDA.
|
||||
|
|
|
@ -747,9 +747,16 @@ void _aq_programmer(program_type r_type, char *args, struct aqualinkdata *aq_dat
|
|||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#ifdef AQ_PDA
|
||||
// Check we are doing something valid request
|
||||
if (isPDA_PANEL) {
|
||||
if (isPDA_PANEL
|
||||
#ifdef AQ_IAQTOUCH
|
||||
&& _aqconfig_.extended_device_id_programming == false && _aqconfig_.extended_device_id == 0x00
|
||||
#endif
|
||||
) {
|
||||
pda_reset_sleep();
|
||||
if (type != AQ_PDA_INIT &&
|
||||
type != AQ_PDA_WAKE_INIT &&
|
||||
|
|
|
@ -140,6 +140,9 @@ const char* get_packet_type(unsigned char* packet , int length)
|
|||
case CMD_IAQ_STARTUP:
|
||||
return "iAq init";
|
||||
break;
|
||||
case CMD_IAQ_TITLE_MESSAGE:
|
||||
return "iAq ProductName";
|
||||
break;
|
||||
case RSSA_DEV_STATUS:
|
||||
// This is a fail reply 0x10|0x02|0x48|0x13|0x02|0x00|0x10|0x00|0x7f|0x10|0x03|
|
||||
// Rather than check all, just check 0x02 and checksum sin't I'm not sure 0x10 means faiure without 0x00 around it.
|
||||
|
|
|
@ -337,7 +337,7 @@ SPILLOVER IS DISABLED WHILE SPA IS ON
|
|||
#define CMD_IAQ_POLL 0x30 // Poll message or ready to receive command
|
||||
#define CMD_IAQ_CTRL_READY 0x31 // Get this when we can send big control command
|
||||
#define CMD_IAQ_PAGE_CONTINUE 0x40 // Seems we get this on AUX device page when there is another page, keeps circuling through pages.
|
||||
|
||||
#define CMD_IAQ_TITLE_MESSAGE 0x2d // This is what the product name is set to (Jandy RS) usually
|
||||
//#define CMD_IAQ_VSP_ERROR 0x2c // Error when setting speed too high
|
||||
#define CMD_IAQ_MSG_LONG 0x2c // This this is display popup message. Next 2 bytes 0x00|0x01 = wait and then 0x00|0x00 clear
|
||||
/*
|
||||
|
|
|
@ -1578,7 +1578,7 @@ void main_loop()
|
|||
#ifdef AQ_PDA
|
||||
if (isPDA_PANEL) {
|
||||
init_pda(&_aqualink_data);
|
||||
if (_aqconfig_.extended_device_id != 0x00)
|
||||
if (_aqconfig_.extended_device_id != 0x00 && _aqconfig_.extended_device_id != 0x33)
|
||||
{
|
||||
LOG(AQUA_LOG,LOG_ERR, "Aqualink daemon can't use extended_device_id in PDA mode, ignoring value '0x%02hhx' from cfg\n",_aqconfig_.extended_device_id);
|
||||
_aqconfig_.extended_device_id = 0x00;
|
||||
|
|
|
@ -537,6 +537,12 @@ bool process_iaqtouch_packet(unsigned char *packet, int length, struct aqualinkd
|
|||
if (gotStatus == false)
|
||||
gotStatus = true;
|
||||
//[IAQ_STATUS_PAGE_LINES][AQ_MSGLEN+1];
|
||||
|
||||
if (isPDA_PANEL && !in_iaqt_programming_mode(aq_data) ) {
|
||||
printf("********* NEXT PAGE **********\n");
|
||||
iaqt_queue_cmd(KEY_IAQTCH_NEXT_PAGE);
|
||||
}
|
||||
|
||||
} else if (packet[PKT_CMD] == CMD_IAQ_PAGE_END) {
|
||||
set_iaq_cansend(true);
|
||||
LOG(IAQT_LOG,LOG_DEBUG, "Turning IAQ SEND on\n");
|
||||
|
|
|
@ -98,6 +98,12 @@ void waitfor_iaqt_queue2empty()
|
|||
delay(PROGRAMMING_POLL_DELAY_TIME);
|
||||
}
|
||||
|
||||
// Initial startup can take some time, _cansend should be false during this time.
|
||||
// If we start programming before we receive the first status page, nothing works, this forces that wait
|
||||
while(_cansend == false) {
|
||||
delay(PROGRAMMING_POLL_DELAY_TIME * 2);
|
||||
}
|
||||
|
||||
if (_iaqt_pgm_command != NUL) {
|
||||
// Wait for longer interval
|
||||
while ( (_iaqt_pgm_command != NUL) && ( i++ < PROGRAMMING_POLL_COUNTER * 2 ) ) {
|
||||
|
|
Binary file not shown.
|
@ -77,7 +77,7 @@ device_id=0x0a
|
|||
# If you have extended_device_id set, then you can also use that ID for programming some features.
|
||||
# This means that you can turn things on/off while AqualinkD is programming certian features.
|
||||
# If you are using Aqualink Touch protocol for extended_device_id then this is highly recomended
|
||||
# as it will speed up programming substantially. if One Touch it's 50/50.
|
||||
# as it will speed up programming substantially. if One Touch it's 50/50.
|
||||
#extended_device_id_programming = yes
|
||||
|
||||
# Read information from these devices directly from the RS485 bus as well as control panel.
|
||||
|
|
|
@ -18,8 +18,8 @@ web_directory=/nas/data/Development/Raspberry/AqualinkD/web
|
|||
|
||||
#log_level=DEBUG_SERIAL
|
||||
#log_level=DEBUG
|
||||
log_level=INFO
|
||||
#log_level=NOTICE
|
||||
#log_level=INFO
|
||||
log_level=NOTICE
|
||||
|
||||
# AQUA_LOG 1
|
||||
# NET_LOG 2
|
||||
|
@ -39,8 +39,8 @@ log_level=INFO
|
|||
#debug_log_mask = 1
|
||||
#debug_log_mask = 2
|
||||
#debug_log_mask = 4
|
||||
#debug_log_mask = 8
|
||||
#debug_log_mask = 16
|
||||
debug_log_mask = 8
|
||||
debug_log_mask = 16
|
||||
#debug_log_mask = 32
|
||||
#debug_log_mask = 64
|
||||
#debug_log_mask = 256
|
||||
|
@ -89,12 +89,12 @@ device_id=0x60
|
|||
# Valid ID's are 0x40, 0x41, 0x42 & 0x43.
|
||||
# If you have a one touch remote do not use Ox40
|
||||
#extended_device_id=0x43
|
||||
#extended_device_id=0x31
|
||||
extended_device_id=0x33
|
||||
|
||||
# If you have extended_device_id set, then you can also use that ID for programming some features.
|
||||
# This means that you can turn things on/off while AqualinkD is programming certian features.
|
||||
# At the moment only heater setpoints & swg boost is on the extended device programming
|
||||
#extended_device_id_programming = yes
|
||||
extended_device_id_programming = yes
|
||||
#extended_device_id_programming = no
|
||||
|
||||
# Not documented
|
||||
|
|
Binary file not shown.
|
@ -421,13 +421,14 @@ console.log("SIM LOAD");
|
|||
status.classList.remove("error");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function update_status(data) {
|
||||
// Some form of error if PDA only panel.
|
||||
if (data.panel_type.startsWith("PDA")) {
|
||||
//document.getElementById("status").innerHTML = ' !!! PDA only panels are not Supported !!! '
|
||||
//document.getElementById("status").classList.add("error");
|
||||
update_status_message("PDA only panels are not Supported", true);
|
||||
update_status_message("Some PDA panels do not support OneTouch", true);
|
||||
}
|
||||
|
||||
const versionlabel = document.getElementById("version");
|
||||
|
|
Loading…
Reference in New Issue