Comments (19)
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.
from lennoxs30api.
Initial pull request for the API, doing the same for the HA component in a bit
from lennoxs30api.
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.
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.
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.
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.
from lennoxs30api.
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.
from lennoxs30api.
I got the basics for read working, connects finds the zones, report the setpoints, outdoor tempearture. A few anomalies. Next step commands!
from lennoxs30api.
Very exciting
from lennoxs30api.
Yay!
from lennoxs30api.
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.
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.
Been lurking, super excited about this! Will likewise test it out for a couple days and come back with any issues.
from lennoxs30api.
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.
Suggestion: Time to update the name and README to include local!
from lennoxs30api.
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.
Probably a good set of questions for a discussion here https://github.com/PeteRager/lennoxs30api/discussions
from lennoxs30api.
Related Issues (20)
- API support for controlling outside air damper
- API support for Allergen Defender
- Numeric password cause string conversion issue
- Support for Away Mode
- Change info log messages to debug HOT 2
- Support for using Celsius HOT 1
- Local Lan - Detect changes
- Add read support for auxiliary (aka emergency heat)
- Add write support for emergency heat
- Are commands not supported anymore ? Code is commented out and functions aren't available. HOT 1
- PYTZ Prereq
- Help with Poller HOT 52
- Help in Understand Diagnostic Mode HOT 5
- Allow long poll delay to be set in API constructor
- messagePump failed due to client response Error HOT 16
- Understanding Demand HOT 4
- A Small Nit Question for Elapsed Time
- Observation on Test Mode
- Target Temp When S30 Off
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lennoxs30api.