diff options
| author | Luke Hoersten <[email protected]> | 2020-06-02 19:11:08 -0500 |
|---|---|---|
| committer | Luke Hoersten <[email protected]> | 2020-06-02 19:11:08 -0500 |
| commit | 4a7f13ec6c0fd59bed009f31b62674f279a58213 (patch) | |
| tree | 274f1d4728acab943e235733e57cf4ea4bd56c5b /src/doord.py | |
| parent | 247670f0d69b3269f88630071b246d38238f26ca (diff) | |
Updated homekit door for Raspbian Buster.
Diffstat (limited to 'src/doord.py')
| -rwxr-xr-x | src/doord.py | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/src/doord.py b/src/doord.py deleted file mode 100755 index 26ab398..0000000 --- a/src/doord.py +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/env python3 - -import time -import automationhat -import sys - -import queue -import threading - - -def main(): - command_queue = queue.LifoQueue() - read_thread = threading.Thread(target=read_loop, args=[command_queue]) - read_thread.start() - run_loop(command_queue) - - -def read_loop(command_queue): - while True: - command_queue.put_nowait(sys.stdin.readline().rstrip('\n')) - - -def run_loop(command_queue): - thread_local = threading.local() - thread_local.doorbell_on_state = False - - while True: - run_command(command_queue) - read_doorbell(thread_local) - - -def run_command(command_queue): - try: - command = command_queue.get(timeout=0.5) - except queue.Empty: - pass - else: - automationhat.relay.on() if command == "unlock" else automationhat.relay.off() - - -def read_doorbell(thread_local): - analog_value = automationhat.analog.one.read() - doorbell_on_state = 6.0 < analog_value and analog_value <= 6.22 - - if analog_value < 7.55: - print("doorbell analog value: {}; ringing: {}; ring range: (6.0, 6.22]".format(analog_value, doorbell_on_state)) - - if doorbell_on_state != thread_local.doorbell_on_state: - thread_local.doorbell_on_state = doorbell_on_state - print("doorbell on") if doorbell_on_state else print("doorbell off") - - -if __name__ == "__main__": - main() |
