Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Weekly Schedule on/off control to module? #21

Open
tboyko opened this issue May 1, 2023 · 13 comments
Open

Add Weekly Schedule on/off control to module? #21

tboyko opened this issue May 1, 2023 · 13 comments

Comments

@tboyko
Copy link

tboyko commented May 1, 2023

If a weekly control (weekly schedule enable/disable) was added to this component, we could use Home Assistant to automatically turn on and off the recirculator pump based on geolocation. This would be great for those who are not on a typical home/away schedule or are often traveling.

I took a stab at this, and while I suspect it's relatively easy to add, I wasn't sure what device_info and channel_status attributes to target when extending switch.py, nor the best way to access an interactive prompt of sorts to explore the controls exposed by AWIoT.

@tboyko
Copy link
Author

tboyko commented Jul 7, 2023

I tried putting around with NavilinkConnect() within navien_api.py but couldn't get past the following error when running .start() and ._get_channel_status_all() (thinking that the response may provide the necessary attribute):

Connection error during start up: 'AWSIoTMQTTClient' object has no attribute 'configureUsernamePassword'

I suspect this may be due to running the code outside of the home assistant code context.

I also stood up a home assistant dev instance via vscode and docker but experienced issues when adding the navien device through the UI. I unfortunately do not have the error message available now but it pertained to thread safety and would appear in the console after setting the desired refresh interval.

Any pointers from @nikshriv or others are appreciated.

@KenReneris
Copy link
Contributor

I'm trying to do the same thing. I can get the module to run, but I can't figure out the magic request packet it needs. I tried a couple of command values based on guesses, but so far no luck.

@screwball571
Copy link

I would also love this feature!

@lurock
Copy link

lurock commented Dec 2, 2023

I would love this feature too because when you disable the schedule your navien does a recirculation. This would get around the issue of navien not allowing you to have a manual hot button to recirculate and being able to have a schedule. I could then use home assistant to trigger a manual recirculation by disabling the schedule for 5 minutes and the enabling it again.

@tboyko
Copy link
Author

tboyko commented Jan 25, 2024

You could also presumably create a schedule where the recirc is always off. Then, you could use Home Assistant to turn off the schedule when you actually wanted recirc on, and vice versa. The benefit of this over using the manual hot button approach is that the recirc pump would automatically kick in when the Navien detected the water temp had lowered, thus saving energy.

@tboyko
Copy link
Author

tboyko commented May 5, 2024

@bakerkj appreciating that you didn't sign up to be the new maintainer, I do see that you've been active with your particular branch. Do you have any advice on how we might putt around and figure out the correct requests to the navilink service for this functionality?

@KenReneris
Copy link
Contributor

KenReneris commented May 5, 2024 via email

@bakerkj
Copy link
Contributor

bakerkj commented May 5, 2024

@bakerkj appreciating that you didn't sign up to be the new maintainer, I do see that you've been active with your particular branch. Do you have any advice on how we might putt around and figure out the correct requests to the navilink service for this functionality?

@tboyko I didn't do any of the reverse engineering on this project, that was done before my time. I'd probably push forward with the effort that you and @KenReneris are already exploring - either exploring the app itself, tinkering with AWSIoTMQTTClient, or tinkering with this implementation running in home assistant with debugging under vscode.

@bakerkj
Copy link
Contributor

bakerkj commented May 5, 2024

For what it is worth, I don't use any of the scheduling features. Instead, I built the following setup before I started using this integration.

I have an Esphome device with a relay connected to the Navien wired hot button as well as a 1-wire temperature sensor at the far end of my hot water recirc loop. In home assistant I have an automation that runs when someone is home, someone is present in a room where they might want hot water (kitchen, bathrooms), if the temperature of the temperature sensor drops below some set temperature, it briefly trips the hot-button relay causing the system to warm the hot water loop.

@bakerkj
Copy link
Contributor

bakerkj commented May 5, 2024

If someone does figures this out, I'd be happy to help test it!

@philgrocks
Copy link

philgrocks commented May 6, 2024 via email

@bakerkj
Copy link
Contributor

bakerkj commented May 6, 2024

Would love to hear about your hot button implementation!

This is the navien kit I am using:
https://www.navieninc.com/downloads/spec-sheet-hotbutton-kit-en

The switch closure connection is connected to a relay on one of these (it only needs one relay, but I had this board sitting around):
https://devices.esphome.io/devices/ESP32-Relay-X2

I am pretty sure this is the temperature probe I am using:
https://www.amazon.com/gp/product/B07X4668VC

@philgrocks
Copy link

philgrocks commented May 12, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants