mirror of https://github.com/sfeakes/AqualinkD.git
Update for older rev panel.
parent
2a51420eae
commit
04cbee3545
BIN
._.DS_Store
BIN
._.DS_Store
Binary file not shown.
4
Makefile
4
Makefile
|
@ -9,6 +9,10 @@ LIBS := -lpthread -lm
|
|||
#$DBG = -g
|
||||
$DBG =
|
||||
|
||||
# USe below to remove unused functions and global variables.
|
||||
#LFLAGS = -Wl,--gc-sections,--print-gc-sections
|
||||
#GCCFLAGS = -Wall -ffunction-sections -fdata-sections
|
||||
|
||||
# define any compile-time flags
|
||||
GCCFLAGS = -Wall
|
||||
|
||||
|
|
|
@ -88,19 +88,21 @@ https://github.com/sfeakes/AqualinkD/wiki
|
|||
|
||||
# Aqualink Versions tested
|
||||
This was designed for Jandy Aqualink RS, so should work with AqualinkRS and iAqualink Combo controll panels. At the moment it will not work with Aqualink PDA / AquaPalm and NON Combo iAqualink.
|
||||
Below are varified versions (But should work witn any AqualinkRS) :-
|
||||
Below are varified versions (But should work with any AqualinkRS) :-
|
||||
|
||||
|
||||
| Version | Notes |
|
||||
| --- | --- |
|
||||
| JANDY AquaLinkRS 8157 REV MMM | Everything working |
|
||||
| Jandy Aqualink 6524 REV GG | Everything working except water temp |
|
||||
| Jandy AquaLinkRS 8157 REV JJ | Everything working |
|
||||
| Jandy AquaLinkRS 8157 REV MMM | Everything working |
|
||||
| Jandy AquaLinkRS B0029221 REV T | Everything working |
|
||||
| Jandy AquaLinkRS B0029223 REV T.2 | Everything working |
|
||||
| Jandy AquaLinkRS B0029235 REV T.1 | Everything working |
|
||||
| Jandy iAqualink E0260801 REV R | Everything working |
|
||||
| AquaLink PDA / AquaPalm | Not usable, work in progress.|
|
||||
|
||||
If you have tested a version not listed here, please let me know by opening an issue
|
||||
#
|
||||
<!--
|
||||
|
||||
|
|
|
@ -102,6 +102,8 @@
|
|||
#define LNG_MSG_CLEANER_DELAY "CLEANER WILL TURN ON AFTER SAFETY DELAY"
|
||||
#define LNG_MSG_BATTERY_LOW "BATTERY LOW"
|
||||
|
||||
|
||||
|
||||
#define MSG_AIR_TEMP "AIR TEMP"
|
||||
#define MSG_POOL_TEMP "POOL TEMP"
|
||||
#define MSG_SPA_TEMP "SPA TEMP"
|
||||
|
@ -109,6 +111,11 @@
|
|||
#define MSG_POOL_TEMP_LEN 9
|
||||
#define MSG_SPA_TEMP_LEN 8
|
||||
|
||||
// Will get water temp rather than pool in some cases. not sure if it's REV specific or device (ie no spa) specific yet
|
||||
#define MSG_WATER_TEMP "WATER TEMP"
|
||||
#define MSG_WATER_TEMP_LEN 10
|
||||
#define LNG_MSG_WATER_TEMP_SET "TEMP1 (HIGH TEMP) IS SET TO"
|
||||
|
||||
#define MSG_SWG_PCT "AQUAPURE" // AquaPure 55%
|
||||
#define MSG_SWG_PPM "SALT" // Salt 3000 PPM
|
||||
#define MSG_SWG_PCT_LEN 8
|
||||
|
|
20
aqualinkd.c
20
aqualinkd.c
|
@ -334,13 +334,13 @@ void processMessage(char *message)
|
|||
setUnits(msg);
|
||||
}
|
||||
else if(strncasecmp(msg, MSG_AIR_TEMP, MSG_AIR_TEMP_LEN) == 0) {
|
||||
_aqualink_data.air_temp = atoi(msg+8);
|
||||
_aqualink_data.air_temp = atoi(msg+MSG_AIR_TEMP_LEN);
|
||||
|
||||
if (_aqualink_data.temp_units == UNKNOWN)
|
||||
setUnits(msg);
|
||||
}
|
||||
else if(strncasecmp(msg, MSG_POOL_TEMP, MSG_POOL_TEMP_LEN) == 0) {
|
||||
_aqualink_data.pool_temp = atoi(msg+9);
|
||||
_aqualink_data.pool_temp = atoi(msg+MSG_POOL_TEMP_LEN);
|
||||
|
||||
if (_aqualink_data.temp_units == UNKNOWN)
|
||||
setUnits(msg);
|
||||
|
@ -351,7 +351,21 @@ void processMessage(char *message)
|
|||
*/
|
||||
}
|
||||
else if(strncasecmp(msg, MSG_SPA_TEMP, MSG_SPA_TEMP_LEN) == 0) {
|
||||
_aqualink_data.spa_temp = atoi(msg+8);
|
||||
_aqualink_data.spa_temp = atoi(msg+MSG_SPA_TEMP_LEN);
|
||||
}
|
||||
// NSF Will get water temp rather than pool in some cases. not sure if it's REV specific or device (ie no spa) specific yet
|
||||
else if(strncasecmp(msg, MSG_WATER_TEMP, MSG_WATER_TEMP_LEN) == 0) {
|
||||
_aqualink_data.pool_temp = atoi(msg+MSG_WATER_TEMP_LEN);
|
||||
_aqualink_data.spa_temp = atoi(msg+MSG_WATER_TEMP_LEN);
|
||||
if (_aqualink_data.temp_units == UNKNOWN)
|
||||
setUnits(msg);
|
||||
}
|
||||
else if(stristr(msg, LNG_MSG_WATER_TEMP_SET) != NULL) {
|
||||
_aqualink_data.spa_htr_set_point = atoi(message+21);
|
||||
_aqualink_data.pool_htr_set_point = atoi(message+21);
|
||||
|
||||
if (_aqualink_data.temp_units == UNKNOWN)
|
||||
setUnits(msg);
|
||||
}
|
||||
else if(msg[2] == '/' && msg[5] == '/' && msg[8] == ' ') {// date in format '08/29/16 MON'
|
||||
strcpy(_aqualink_data.date, msg);
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -181,7 +181,7 @@ int main(int argc, char *argv[]) {
|
|||
}
|
||||
}
|
||||
|
||||
if (packet_buffer[PKT_DEST] == DEV_MASTER && packet_buffer[PKT_CMD] == CMD_ACK) {
|
||||
if (packet_buffer[PKT_DEST] == DEV_MASTER /*&& packet_buffer[PKT_CMD] == CMD_ACK*/) {
|
||||
//logMessage(LOG_DEBUG_SERIAL, "ID is in use 0x%02hhx %x\n", lastID, lastID);
|
||||
for (i = 0; i <= sindex; i++) {
|
||||
if (slog[i].ID == lastID) {
|
||||
|
|
Loading…
Reference in New Issue