sfeakes / AqualinkD

Daemon to control Jandy Aqualink RS pool equipment from any home automation hub (Alexa, Homekit & Siri, Home Assistant, smartthings, domoticz etc) or web browser.
Other
166 stars 46 forks source link

Getting wrong Temperature via MQTT but ok in web interface #269

Closed Bigfellas closed 3 months ago

Bigfellas commented 3 months ago

AS the subject says. I am getting the correct display in the we interface 27C but via MQTT I am getting -2.78 I can't see any seetiing that may be effecting this.

# aqualinkd.conf
#

# The directory where the web files are stored

web_directory=/var/www/aqualinkd/

# Log to file, comment out if you do not want to log to file
#log_file=/var/log/aqualinkd.log

# The log level. [DEBUG_DERIAL, DEBUG, INFO, NOTICE, WARNING, ERROR]
# Pick the highest level, and all levels below will be sent to syslog.
# your syslog settings may be set to only display messages above a certian level
# in which case make sure you use the log_file settings to capture everything
# you want when debugging
# so, NOTICE also prints WARNING & ERROR
#     DEBUG_SERIAL would print everything possible

log_level=DEBUG
#log_level=INFO
#log_level=NOTICE
#log_level=WARNING

# Display any ERROR & Warning messages in web interface. 
display_warnings_in_web=true

# The socket port that the daemon listens to
# If you change this from 80, remember to update aqualink.service.avahi
socket_port=80

# The serial port the daemon access to read the Aqualink RS8
serial_port=/dev/ttyUSB0

# Your RS panel size. ie 4, 6, 8, 12 or 16 relates to RS4, RS6, RS8, RS12 or RS16.
# VERY important that you select 12 or 16, if you have either of those size panels.
# Also don't think setting a 12 when you have a 8 will give you 4 more accessories to control, it won't the
# panel information is needed as different panels use different bits within the RS protocol for status and key
# presses.
# serial_logger will get the panel type string if you don't know it, below are examples.
# Must be in format `XX-N ????`  (XX=RS or PD, N=Circuits, ????=Combo or Only or Dual)
#panel_type = RS-8 Combo
#panel_type = PD-8 Combo
#panel_type = RS-16 Combo
#panel_type = RS-2/14 Dual
#panel_type = RS-4 Combo
#panel_type = RS-8 Only
panel_type = PD-P8 Only
#
# If serial_logger doesn't give you a type string in the format above, you can use the next options to set the specifics.
# 
# panel_type_size = (6, 8, 10, 12, 14 or 16)  (Number of supported accessories / buttons)
# panel_type_combo = (yes or no)              (combo panels support BOTH pool & spa)
# panel_type_dual = (yes or no)               (dual circuit panel)
# panel_type_pda = (yes or no)                (PDA panel. only set this if you have to. Panel ONLY supports the PDA protocol)
# panel_type_rs = (yes or no)                 (RS panel. Panel Supports all protocols)

# The ID of the Aqualink terminal device. Devices probed by RS8 master are:
# 08-0b, 10-13, 18-1b, 20-23, 28-2b, 30-33, 38-3b, 40-43
# Working RS ID's are 0x0a 0x0b 0x09 0x08    <- 0x08 is usually taken
# If your panel is a PDA only model, then PDA device ID's are 0x60, 0x61, 0x62, 0x63.
# (These are NOT recomended to use unless you absolutly have no other option)
device_id=0x63

# The ID of Jandy SerialInterface device. These is only one usable ID, if serial_logger
# picks up your panel supports this, uncomment, as it will speed up heater setpoints & RS16 panels.
#rssa_device_id=0x48

# The ID for extended settings to allow for faster programming
# VARIABLE SPEED PUMP are only supported with this option.
# Do not enable this if you don't use either, you'll just waste memory and cpu cycles
# Valid ID's are 0x40, 0x41, 0x42 & 0x43. for ONE Touch
# Valid ID's are 0x30, 0x31, 0x32 & 0x33. for Aqualink Touch
#extended_device_id=0x31

# 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.  
#extended_device_id_programming = yes

# Read information from these devices directly from the RS485 bus as well as control panel.
# swg = Salt Water Generator
# ePump = Jandy ePump or ePump AC
# vsfPump = Pentair VS,VF,VSF pump
#read_RS485_swg = yes
#read_RS485_ePump = yes 
#read_RS485_vsfPump = yes

# Keep the panel time synced with systemtime.  Make sure to set systemtime / NTP correctly. 
keep_paneltime_synced = yes

# If equiptment is in freeze protect mode some commands like pump_off / spa_on are
# ignored.  You can force these to work by setting the below.
override_freeze_protect = no

# Convert Deg F to Deg C when posting to Domoticz or MQTT.
# If using homebridge-aqualinkd convert_mqtt_temp_to_c must be set to yes.
convert_mqtt_temp_to_c = yes 
#convert_dz_temp_to_c = yes

# default is to use pool water temp as spa water temp when spa is off (and there for not able to report water temp)
# enable below to report 0 as the spa temp when spa is off.
# This is for MQTT cnnections only, WEB socket and WEB API always report TEMP_UNKNOWN (-999) allowing the consumer to
# decide how to report.
#report_zero_spa_temp = yes

# default is to not report changes to pool temp when the filter pump is off or in spa mode
# enable below to report 0 as the pool temp when the filter pump is off or when in spa mode.
# This is for MQTT cnnections only, WEB socket and WEB API always report TEMP_UNKNOWN (-999) allowing the consumer to
# decide how to report.
report_zero_pool_temp = no

# mqtt stuff
mqtt_address = 192.168.1.93:1883
mqtt_user = mqtt_user
mqtt_passwd = Rli95Jo2b@pgqlhb    
#mqtt_dz_pub_topic = domoticz/in
#mqtt_dz_sub_topic = domoticz/out
mqtt_aq_topic = aqualinkd

# MQTT will only post updated information, this option AqualinkD will re-post all MQTT information every ~5 minutes.
#mqtt_timed_update = no

# Please see forum for this, only set to yes when logging information to support new devices. (or debugging protocol)
# Information will be written to /tmp/RS485.log & /tmp/RS485_raw.log respectively
#debug_RSProtocol_packets = no
#debug_RSProtocol_bytes = no

# Log any packets from this device.
#serial_debug_filter = 0x00

# Not documented. These are experimental.  Will change how RS485 / Serial works, Only use if asked to for problem solving purposes.
#serial_readahead_b4_write = yes
#prioritize_ack = yes

# Get rid of the startup warning message about no low latency. BETTER option is to buy a better adapter.
#ftdi_low_latency = no

# Stop the SWG bounce from displaying when using VSP.
#swg_zero_ignore_count = 20

# Enable AqualinkD scheduler.
# A version of cron that supports cron.d must be installed for the scheduler to work.
# If you used the install script and didn;t receive any cron warnings, you should be good to go.
enable_scheduler = yes

# Put AqualinkD to sleep when in PDA mode after inactivity. 
# Ignore if you are not using PDA mode.
# If you have Jandy PDA then this MUST be set to yes as the controller can only support one PDA.
# If you don't have a Jandy PDA leave this at no as AqualinkD will be a lot quicker.
pda_sleep_mode = yes

# If you have a SWG connected to the control panel, set this to yes. 
# AqualinkD can only detect a SWG if it's on, so after a restart you will not see/access a SWG until the the next time the pump is on. 
force_SWG = no

# AqualinkD can take sime time to find heater setpoints (if they exist), This will force the pool & spa
# heaters to be listed as thermostats vs switches on startup, helps with homekit.
force_PS_setpoints = no

# AqualinkD can take sime time to find freeze protect (if panel supports it), This will force the freeze protect
# to be listed as thermostat on startup.
force_Frzprotect_setpoints = no

# Lights can be programmed by control panel or AqualinkD (if controlpanel doesn;t support specific light or light mode you want)
# IF YOU WANT AQUALINKD TO PROGRAM THE LIGHT, IT MUST NOT BE CONFIGURED AS A COLOR LIGHT IN THE JANDY CONTROL PANEL.
# Light probramming mode. 0=safe mode, but slow. 
# any number greater is seconds to wait between button presses.  
# 0.4 seems to be the minimum. (workd for light modes below 10 presses)
# 0.6 seems to work about 95% of the time, but above 20 presses can be hit or miss.
# 0 will simply wait for the controler to send the response back before sending the next, so is equivelent to about 1.2
light_programming_mode=0

# Light programming assumes light needs to be on before sending pulse (above setting)
# If the light is off when request is made to change "light show", then the below value are used
light_programming_initial_on=15

# Turn the light off for below time before start programmig puleses.
light_programming_initial_off=12

# Everything below here, if it ends with dzidx, then that's the ID for domoticz,
# so not needed if you are not suing dooticz.
# Domoticz ID's for temps.
# All below are Virtual Sensors
#air_temp_dzidx=0
#pool_water_temp_dzidx=0
#spa_water_temp_dzidx=0
#SWG_percent_dzidx=0
#SWG_PPM_dzidx=0
# Must be Virtual Alert Sensor
#SWG_Status_dzidx=0

# Use/find labels from Control Panel, these will overwrite the button_xx_label below, 
# it noes NOT work in PDA mode, and it also considerable slows down AqualinkD startup process.
use_panel_aux_labels=no

# These are all the button labels / options / pump and light configurations you want to use.
# Simply change these to your setup, valid options for wach button are :-
# None of these are mandatory unless you have PDA or RS16 panel, then _label is mandatory
# button_??_label=Filter Pump  <Label you want to see>
# button_??_dzidx=37           <Domoticz IDX>
# button_??_pumpID=0x60        <RS485 ID of VSP>
# button_??_pumpIndex=1        <Pump index Jandy panel is configured to use>
# button_??_lightMode=4        <Color light mode>
#
# In most cases the label is just what you want to see in web UI/MQTT/API. ie you don't need to use Jandy's labeling. There are 2 exaeptions to the labeling listed below
# 1) If using PDA mode, The Labels below are of the utmost importance, the labels MUST exactly match the labels in the "EQUIPTMENT ON/OFF" menu of the PDA device.
# 2) RS 16 Panels have no protocol bit representation for AUXB5 to AUXB8, only text, so as with PDA Those labels MUST match the control panel.
# Use NONE for label if you don't have anything connected to that circuit and don't want to see the button in the UI.
#
# Below is an example of how different Panels map into the buttons.
#
#             |  RS-6 Combo  |  RS-6 Only   | RS-8 Combo   | RS-2/6 Dual  | RS-2/10 Dual |  RS-16 Combo |
#             --------------------------------------------------------------------------------------------
# Button_01   | Filter Pump  | Filter Pump  | Filter Pump  | Filter Pump  | Filter Pump  | Filter Pump  |
# Button_02   | Spa          | Aux_1        | Spa          | Spa          | Spa          | Spa          |
# Button_03   | Aux 1        | Aux 2        | Aux 1        | Aux 1        | Aux 1        | Aux 1        |
# Button_04   | Aux 2        | Aux 3        | Aux 2        | Aux 2        | Aux 2        | Aux 2        |
# Button_05   | Aux 3        | Aux 4        | Aux 3        | Aux 3        | Aux 3        | Aux 3        |
# Button_06   | Aux 4        | Aux 5        | Aux 4        | Aux 4        | Aux 4        | Aux 4        |
# Button_07   | Aux 5        | Temp 1       | Aux 5        | Aux 5        | Aux 5        | Aux 5        |
# Button_08   | Pool Heater  | Temp 2       | Aux 6        | Aux 6        | Aux 6        | Aux 6        |
# Button_09   | Spa Heater   | Solar Heater | Aux 7        | Pool Heater  | Aux B1       | Aux 7        |
# Button_10   | Solar Heater |              | Pool Heater  | Spa Heater   | Aux B2       | Aux B1       |
# Button_11   |              |              | Spa Heater   | Solar Heater | Aux B3       | Aux B2       |
# Button_12   |              |              | Solar Heater |              | Aux B4       | Aux B3       |
# Button_13   |              |              |              |              | Pool Heater  | Aux B4       |
# Button_14   |              |              |              |              | Spa Heater   | Aux B5       |
# Button_15   |              |              |              |              | Solar Heater | Aux B6       |
# Button_16   |              |              |              |              |              | Aux B7       |
# Button_17   |              |              |              |              |              | Aux B8       |
# Button_18   |              |              |              |              |              | Pool Heater  |
# Button_19   |              |              |              |              |              | Spa Heater   |
# Button_20   |              |              |              |              |              | Solar Heater |

#
# Optional, ( button_01_pumpID & button_01_pumpIndex )
# If you have a Variable Speed Pump, then assign the RS485 ID to the button below so RPM/GPH/WATTS are displayed
# Format is button_01_pumpID=0x60.   Leave blank if you don't have a VSP.
#  Pentair pump ID's
#  0x60 to 0x6F (0x60, 0x61 0x62, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F)
#  Jandy pump ID's
#  0x78, 0x79, 0x7A, 0x7B
#
# button_01_pumpIndex=1
# If you have assigned this pump an index number in your Aqualink control panel, (Between 1 & 4), put it here for VSP, RPM, Primp information to be captured.
#
# button_xx_lightMode = (0=Aqualink program, 1=Jandy, 2=Jandy LED, 3=SAm/SAL, 4=Color Logic, 5=Intellibrite, 6=Dimmer)
#
# Below are settings for standard buttons on RS-8 Combo panel used as example.
button_01_label=Filter Pump
button_01_PDA_label=FILTER PUMP
button_01_pumpID=0x78
button_01_pumpIndex=1

button_02_label=Temp 1
button_02_PDA_label=TEMP1

button_03_label=Temp 2
button_03_PDA_label=TEMP2

button_04_label=Solar Heater
button_04_PDA_label=SOLAR HEAT

button_05_label=Cleaner
button_05_PDA_label=CLEANER

#button_06_label=Aux  2
#button_05_lightMode=0

#button_07_label=Aux 3
#button_05_lightMode=0

#button_08_label=NONE

#button_09_label=NONE

#button_10_label=Pool Heater

#button_11_label=Spa Heater

#button_12_label=Solar Heater
sfeakes commented 3 months ago

convert_mqtt_temp_to_c = yes

The above converts deg f to dec c

Bigfellas commented 3 months ago

I'm a fool. I think last time I just commented this out. But I changed the value to no and that worked. Thanks.