-
Notifications
You must be signed in to change notification settings - Fork 132
Dry Contact Obstruction sensor improvements #401
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
base: main
Are you sure you want to change the base?
Dry Contact Obstruction sensor improvements #401
Conversation
esphome-ratgdo/components/ratgdo/ratgdo.cpp Lines 560 to 566 in 0336213
This incorrectly sets At the same time though, Particularly when the Closed limit sensor is present, it might be best to only declare the door securely closed if the sensor is on. For now i've added the Open condition as a check. |
Yes this only applies to the dry contact protocol. Security Plus 1/2 gets its status from a serial data connection to the opener. The dry contact firmware should depend on both the open and closed limit switches being present for dry contact doors, we do not support or recommend using ratgdo with one or no switches. The |
Timing out to a
Actually, |
This has worked as intended over the last month, in conjunction with the dry contact limit switch PR. There are a few places to look at though:
|
No. The code for interpreting obstructions is already set and should not be duplicated elsewhere. Add a subscription to watch for changes to |
I'm definitely misunderstanding the nature of the low-pulse state. Maybe unnecessary for this PR, noted on the subscription pointer though 🙂 |
this->query_status(); // query in case we're wrong and it's stopped | ||
// In case the door fully rebounded from an obstruction | ||
if (*this->door_state != DoorState::OPEN) { | ||
this->received(DoorState::CLOSED); // probably missed a status mesage, assume it's closed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, this DoorState::CLOSED
does cause problems for the dry contact firmware, since it could be set without the Closed limit switch being active.
For security, it's probably best to only set CLOSED
state if the limit sensor agrees
97e23be
to
bc89eed
Compare
bc89eed
to
b3ed80b
Compare
Ensures the door state is accurately handled if the obstruction sensor is tripped while closing.
Also partially addresses #344.
Prerequisite: #398