Autelis For OpenHAB2

I think I inadvertently marked my earlier topic ‘Autelis Configuration for OpenHAB2’ as resolved, so I am re-posting the my current problem.

The following is the contents of the openhab.log:

11:48:42.000 [INFO ] [smarthome.event.ThingAddedEvent ] - Thing ‘autelis:poolcontrol:myPool’ has been added.
11:48:42.011 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ‘autelis:poolcontrol:myPool’ changed from INITIALIZING to ONLINE
.
.
.
11:48:42.011 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ‘autelis:poolcontrol:myPool’ changed from ONLINE to OFFLINE (CONFIGURATION_ERROR)
11:48:42.012 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ‘autelis:poolcontrol:myPool’ changed from UNINITIALIZED to INITIALIZING
.
.
.
11:48:42.375 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ‘autelis:poolcontrol:myPool’ changed from OFFLINE (CONFIGURATION_ERROR) to OFFLINE (COMMUNICATION_ERROR)

The configuration statement that I put in the .things file is:

autelis:poolcontrol:myPool [ host=“10.194.255.16”, user=“admin”, password=“admin”]

In comparing the openhab.log with the network sniffer I noticed that at about the same time the openhab.log showed the transition from Initializing to online the sniffer showed that the binding sent a get status command to the autelis and the autelis responded with what I believe is the correct xml response and a 200 (No Error) response code. At about the time the openhab.log showed the transition from online to offline (Configuration Error) and then (Communication Error) the sniffer showed the binding sending the following command:

'GET /chem.xml?timestamp=1490044953225

The autelis then responded with a response code of 404 Not Found

The autelis controller I have is the model that only supports the Intelliflow pump. I was wondering if this could will be the problem.

Did you ever find a resolution? I’m seeing the same behavior and also have the model that only supports Intelliflow.

Nope no resolution. I have put a logic analyzer on the physical interface
and run a network sniffer and I am convinced the binding doesn’t handle
that model correctly, but no feedback from the developer.

Thanks Larry. Based on your clue, I looked through the code and sure enough, the developer has assumed there are 3 XML files available at the controller - Status, Chem and Pumps. There’s no allowance if any of these don’t exist, so, like you, I have no Chem.xml (nor pumps.xml) so the binding reports a “communication error”.

Based on this I created a custom version of the autelis binding that removes the Chem and Pumps xml check - though longer term I could probably re-write so those won’t cause an error if they don’t exist. Happy to pass it along if you’d like. I haven’t tested it completely, but it is working correctly and I’m successfully reading Pool Temp in OH2. I’m going to try equipment control soon.

Yes please pass along. I will need to update for pumps and temp. I will
help test. I just haven’t had time to get the source and analyze it.

I know the developer of the Autellis binding has added some additional code so it is now aware of the differences between the Jandy and Pentair versions of the Autellis controller.

I don’t know if he has initiated a PR as there were a couple of issues I had brought up to him.

As far as I am aware all of the Autellis controllers have the addional XML files.

Maybe @digitaldan can chime in here.

kjunker would you mind sending me your modifications to the source ?

Sorry for the delay. Here’s the Autelis binding with only status.xml processed: Autelis Binding jar

You’ll also need the Smarthome uPNP jar in your addons folder with the Autelis binding: Smarthome uPNP

I’ve only tested temperature and an equipment switch for the pump. Temperature works, but equipment did not. I see differences in the code vs. the webapi called, so I intended to address issues to work with my controller.

@KidSquid - I definitely do not have chem or pump xml. I have not upgraded the controller though, so they might be in all controllers in a later version.

Sorry I was on vacation this last week. I have a new version which breaks out jandy and pentair into their own thing types. I’m going to pick this back up this weekend, you can find my working branch at https://github.com/digitaldan/openhab2-addons/tree/autelis-jandy/addons/binding/org.openhab.binding.autelis , and I have published a jar here https://github.com/digitaldan/openhab2-addons/releases/tag/autelis-jandy

Hi, I’m trying to use the binding with a Pentair SunTouch system via ScreenLogic 2 protocol adapter. I installed the binding and created a autelis.things in the things directory

Thing autelis:myPool[ host="192.168.1.163", port="80", user="Pentair: xx-xx-xx", password="xxxx"]

When openHAB loads the thing config I can an error

2018-04-29 00:29:00.845 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'pool.things' has errors, therefore ignoring it: [1,22]: mismatched input '[' expecting ':'

If I add “:1” this error goes away, but even then the binding rehisteres thins . multiple controls

Any idea?

Try specifying the thing type of ‘pentair’ in your definition, like

Thing autelis:pentair:myPool[ host="192.168.1.163", port="80", user="Pentair: xx-xx-xx", password="xxxx"]

I don’t use thing files, so I have not tested this.

I have an updated version of the binding at https://github.com/digitaldan/openhab2-addons/releases/tag/autelis-jandy-pre3 , note this requires openHAB 2.3, which is the nightly release branch.

thx, I think you need to correct the README, I’m pretty sure that I copied the Thing definition from there.

is 2.3 atrixrly required? I have 2.2 and my own binding build on 2.3 and it works without any problems

No it is not resolved as far as I know. I have been busy with other things and have not pursued it. I hope to get back to it soon.

The updated readme is in the release branch as I have not yet merged this into master, https://github.com/digitaldan/openhab2-addons/tree/autelis-jandy/addons/binding/org.openhab.binding.autelis , I think its correct for the thing definition (but its been awhile), I will need to clean it up when I’m about finished with my changes to support jandy. The latest version is now https://github.com/digitaldan/openhab2-addons/releases/tag/autelis-jandy-pre4

Working great so far with my Jandy system!

Spoke too soon, does the latest jandy-pre4 binding still check chem.xml? I am not seeing chlrp and saltp set in openHAB. When I turn on trace, I don’t see anything from chem.xml or pumps.xml.

My items:

Number    Pool_Random                         "Random Pool Lights [%s]"                                               (Pool)
Switch    Pool_Pump                           "Pool Pump"                                             <pool_pump>     (Pool)                                  {channel="autelis:jandy:Pool:equipment-pump"}
Number    Pool_Pump_Speed                     "Pool Pump Speed [MAP(poolPump.map):%s]"                <pool_pump>     (Pool)                                  {channel="autelis:jandy:Pool:pumps-vsp1"}
Switch    Pool_Heat                           "Pool Heat []"                                          <pool_heater>   (Pool)                                  {channel="autelis:jandy:Pool:equipment-poolht"}
Number    Pool_SetPoint                       "Pool SetPoint [%.0f °F]"                               <temperature>   (Pool)                                  {channel="autelis:jandy:Pool:temp-poolsp"}
Number    Pool_Temperature                    "Pool Temperature [%.0f °F]"                            <temperature>   (Pool)                                  {channel="autelis:jandy:Pool:temp-pooltemp"}
Number    Pool_Chlorination                   "Chlorination Setpoint [%d %%]"                         <chlorine>      (Pool)                                  {channel="autelis:jandy:Pool:chem-chlrp"}
Number    Pool_Salt_Sensor                                                                                            (Pool)                                  {channel="autelis:jandy:Pool:chem-saltp"}
Number    Pool_Salt                           "Pool Salt Level [%d ppm]"                              <salt>          (Pool)
String    Pool_ORP_Sensor                                                                                                                                     {serial="/dev/ttyPort4@9600"}
Number    Pool_ORP                            "Pool ORP [%.1f mV]"                                    <orp>           (Pool)
String    Pool_pH_Sensor                                                                                                                                      {serial="/dev/ttyPort5@9600"}
Number    Pool_pH                             "Pool pH [%.2f pH]"                                     <ph>            (Pool)
Switch    Pool_Freeze

Sorry for the late reply. Haven’t had a chance to work on it.

Yep, my bad, I misread the API docs from autelis. New version should have this fixed, try the following link:

I will check it out this week.

works!