Coder Social home page Coder Social logo

Comments (19)

PeteRager avatar PeteRager commented on August 22, 2024 2

As far as I can tell all the commands work - and HA is happy. I'm going to let it run over-night to see if it survives. Hoping for a Beta on the API and HA component soon after.

image

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024 1

Initial pull request for the API, doing the same for the HA component in a bit

from lennoxs30api.

dresslerc avatar dresslerc commented on August 22, 2024

How do you know the iOS app supports this local communication? The Lennox S30 app has been horrible. The HomeKit implementation works local but doesn’t support zones

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

How do you know the iOS app supports this local communication? The Lennox S30 app has been horrible. The HomeKit implementation works local but doesn’t support zones

I observed the RTSP/OpenDDS traffic between the IOS device and thermostat in wireshark. To do this I setup an old WiFi router I has laying around as separate WiFi network (not as a router), plugged it into this device (Dualcomm DCSW-1005PT 10/100 Ethernet Network TAP w/PoE Pass-Through) and then into my main WiFi router that the thermostat uses. Output of that network TAP went into a PC running wireshark. This way I could see all the WAN and LAN traffic from the IOS device. I can upload those logs somewhere if that helps.

I discovered this because I was trying to monitor the API traffic to the cloud through BURP - which is how I created the cloud API - and nothing was being captured. Eventually I reached the conclusion that the updated version of the app was able to go local and then setup that TAP to verify. I was expecting it to be using the same REST API except locally - it is not - a completely different protocol. Google Lenox and OpenDDS you’ll find some hits.

from lennoxs30api.

HyperActiveJ avatar HyperActiveJ commented on August 22, 2024

I was able to read my s30 over https on LAN. Perhaps there's more that can be done over it?
I put a proof of concept here:
https://github.com/HyperActiveJ/home-assistant-lennox-local-https

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

This is awesome. The structure looks very similar to the JSON we get back from the cloud.

We should be able to redirect this API to go locally.

Does it require authentication?

from lennoxs30api.

HyperActiveJ avatar HyperActiveJ commented on August 22, 2024

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

Looking at the code more, the command structure is identical to the cloud commands. As do the JSON responses. So it looks like most of it should work by redirecting to the local endpoint. I’ll try your code out this week. If you want a sample command to set zone temperature - let me know - I can post the JSON.

The lack of security is highly concerning, let’s take this offline / private and figure out how to get this reported responsibly.

from lennoxs30api.

HyperActiveJ avatar HyperActiveJ commented on August 22, 2024

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

I got the basics for read working, connects finds the zones, report the setpoints, outdoor tempearture. A few anomalies. Next step commands!

from lennoxs30api.

dresslerc avatar dresslerc commented on August 22, 2024

Very exciting

from lennoxs30api.

HyperActiveJ avatar HyperActiveJ commented on August 22, 2024

Yay!

from lennoxs30api.

dresslerc avatar dresslerc commented on August 22, 2024

Awesome! If you need testers I am here.

I assume since its all local now, when you change the target temp the thermostat should react instantly too it?

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

I will need tester - thank you!

Yes, it is much faster. With the cloud API it can take a while (~15 seconds), with Local API I see about 2 second response.

from lennoxs30api.

AlexSzlavik avatar AlexSzlavik commented on August 22, 2024

Been lurking, super excited about this! Will likewise test it out for a couple days and come back with any issues.

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

This is ready to go.

There is an update HA component here:

https://github.com/PeteRager/lennoxs30/releases/tag/v0.1.1

It should automatically pull the updated API which is version 0.1.0

Config should be like this - ip_address is the S30 ip (indentation is wrong here...)

lennoxs30:
email: myemail
password: mypass
scan_interval: 1
fast_scan_interval: 0.5
ip_address: 10.0.0.2

Will be useful to have debug on

logger:
default: info
logs:
custom_components.lennoxs30.s30api_async: debug
custom_components.lennoxs30: debug
custom_components.lennoxs30.climate: debug
lennoxs30api: debug

Open issues on the HA component or here.

from lennoxs30api.

HyperActiveJ avatar HyperActiveJ commented on August 22, 2024

Suggestion: Time to update the name and README to include local!

from lennoxs30api.

AirborneEagle avatar AirborneEagle commented on August 22, 2024

This is probably the wrong place to ask this question, and I am happy to move to a forum you recommend . @PeteRager
Forgive my lack of basic system knowledge.
My goal here is to actually eliminate the lennox on-wall thermostats (s40) entirely. I am happy to implement any control protocol needed to do so. Dry contacts, analog signals, Modbus, Network calls, etc. Anything. Any Idea if this is possible?

If not, the next acceptable option would be to use your amazing integration, but it would be with a different software (Loxone Config).
Would you be willing to offer any assistance in applying the API to a different use case?
Or perhaps we could work to extract the API structure, parameters, documentation etc. into a template so that it can be more easily used by things other than HA?

from lennoxs30api.

PeteRager avatar PeteRager commented on August 22, 2024

Probably a good set of questions for a discussion here https://github.com/PeteRager/lennoxs30api/discussions

from lennoxs30api.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.