No project description provided
Project description
discoverable-garage-door
A python 3 module that takes advantage of Home Assistant's MQTT discovery protocol via ha-mqtt-discoverable to create a Raspberry PI GPIO garage door implementation.
Table of Contents
Requirements
Raspberry PI
discoverable_garage_door is designed to run on a PI Zero, Pi 3B+ or PI 4B it may run on other models.
Debian
discoverable_garage_door is designed to run on Debian Bullseye it may run on other versions.
Python
dicscverable_garage_door runs on Python 3.10 or later.
Installing
installation
pip install discoverable_garage_door
- not yet implemented
Usage
python3 -m discoverable_garage_door
Configuration
a logger configuration file (logger.conf) may be placed in the current directory
a yaml-format configuration file may (.config.yaml) may be placed in the current directory or be specified by the 'config' environment variable
Format
Example:
mqtt_broker:
host: local-broker.local
username: homeassistant
password: password
discovery_prefix: homeassistant
state_prefix: hmd
gpio:
button_push_duration_ms: 500
contact_bounce_time_ms: 200
contact_pullup: true
doors:
- button_pin: 18
closed_contact_pin: 27
name: main garage door
opened_contact_pin: 17
mqtt_broker.host - the name or address of the MQTT broker
mqtt_broker.username - the username to use to connect with the MQTT broker
mqtt_broker.password - the password to use to connect with the MQTT broker
mqtt_broker.discovery_prefix - the prefix to use to publish messages to the MQTT broker, hormally homeassistant
mqtt_broer.state_prefix - the prefix to use to subscribe messages to the MQTT broker
gpio.button_push_duration_ms - the length of time in milliseconds that garage door button is virtually pressed, default 500 (ms)
gpio.contact_bounce_time_ms - the length of time to use to debounce the GPIO inputs, normally 200 (ms)
gpio.contact_pullup - whether to use a pullup for the GPIO inputs(true) or whether a pullup will be externally used (false)
gpio.doors - a list of door descriptions
door.name - the name of the garage door
door.button_pin - the number of the pin used for the button (GPIO numbering)
door.closed_contact_pin - the number of the pin used for the closed contact (GPIO numbering)
door.opened_contact_pin - the number of the pin used for the opened contact (GPIO numbering)
Version History
Version 0.1.1 - Complete build config
Version 0.1.2 - Add Lovelace UI exampe
Version 0.1.3 - Rename logger.conf
Uses ha-mqtt-discoverable
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for discoverable_garage_door-0.1.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a5bd69104d3f72c44beb32f61a1db142d15bd5505d7509f0e4b57a530d03490 |
|
MD5 | 30f4869738fa1df355d23f8b59a7b27b |
|
BLAKE2b-256 | 659a96e5ebc03eeaf634fdd63fe47829b2e98fa4f17d3656016afa074d6e6f2f |
Hashes for discoverable_garage_door-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7e0967339a7fe0935a0a85ec5ae28c52a3ba550bda2e374eb753bd2123a85b9 |
|
MD5 | f9f5240f8930dfcd3088da5f160218d6 |
|
BLAKE2b-256 | 6b8ad5ac9dedf6c64acfcb4fcd79822394ab878a11a3d8200fa71f894020cad3 |