Homematic Commanline Tools (HoCoTo)
Project description
Homematic Commandline Tools (HoCoTo)
Control Homematic Thermostats from the commandline.
Features:
- Visualisation: Output device status as a graph or table
- Save device status into an easily reasable table
- Read from tables and write to devices
- Specify multiple profiles in a table
- Assign profiles per day (templating)
- Duplicaton detection
- Copy profiles between devices
- Offline capability
Installation
pip install hocoto
Examples:
Plotting
$ ./hocoto -in dev:test -p --day mon
testing
=========
MONDAY
22.0 +----+---+----+---+----+---+----+---+
21.5 | · ·|· ·|· · | · | · ·|· ·|· · | · |
21.0 | · ·|· ·***· | · | · ·|· ·|· · | · |
20.5 | · ·|· ·|· · | · | · ·|********* · |
20.0 +----+---+----+---+----+---+----+---+
19.5 | · ·|· ·|· · | · | · ·|· ·|· · | · |
19.0 | · ·|· ·|· · | · | · ·|· ·|· · | · |
18.5 | · ·|· ·|· · | · | · ·|· ·|· · | · |
18.0 +----+---+----+---+----+---+----+---+
17.5 | · ·|· ·|· · | · | · ·|· ·|· · | · |
17.0 |*********·************** ·|· · ****|
16.5 | · ·|· ·|· · | · | · ·|· ·|· · | · |
16.0 +----+---+----+---+----+---+----+---+
3 6 9 12 15 18 21 24
Tables
$ ./hocoto -in dev:test --table --day mon
testing
=========
MONDAY | TUESDAY | WEDNESDAY | THURSDAY | FRIDAY | SATURDAY | SUNDAY |
5:30 - 17°C | Same as MONDAY | Same as MONDAY | Same as MONDAY | Same as MONDAY | Same as MONDAY | Same as MONDAY |
7:00 - 21°C | | | | | | |
16:00 - 17°C | | | | | | |
21:00 - 20.5°C | | | | | | |
23:00 - 17°C | | | | | | |
24:00 - 17°C | | | | | | |
File ouptput:
$ ./hocoto -in dev:test --out file:delme
testing
=========
$ cat delme
MONDAY
5:30 - 17°C
7:00 - 21°C
16:00 - 17°C
21:00 - 20.5°C
23:00 - 17°C
24:00 - 17°C
TUESDAY
Same as MONDAY
WEDNESDAY
Same as MONDAY
THURSDAY
Same as MONDAY
FRIDAY
Same as MONDAY
SATURDAY
Same as MONDAY
SUNDAY
Same as MONDAY
Apply profile for whole week:
$ ./hocoto -in file:delme -o dev:test
Input from file "delme"
=========================
Copying from Input from file "delme" to Testing-Target
All days
Use profiles:
$ cat profiles
Workday
5:30 - 17°C
7:00 - 21°C
16:00 - 17°C
21:00 - 20.5°C
23:00 - 17°C
Weekend
5:30 - 17°C
23:00 - 20.5°C
24:00 - 17°C
Homeoffice
5:30 - 17°C
23:00 - 20.5°C
24:00 - 17°C
MONDAY
= workday
TUESDAY
Same as MONDAY
WEDNESDAY
= homeoffice
THURSDAY
Same as MONDAY
FRIDAY
Same as homeoffice
SATURDAY
= weekend
SUNDAY
Same as saturday
./hocoto -in file:delme -o dev:test
Use profiles for specific dasy:
./hocoto -in file:delme -out dev:test -p --fromday weekend --today MON
Background:
HoCoTo is written in python3 using the homegear Python interface.
The intention was to be as useful as possible. The use case I needed to cover was "Bring the house into homeoffice state next tuesday" or "I am sick today, so bring the house into weekend state".
Future work:
I want to add a tool that monitors a calendar (e.g. ics) file, so that I can set profiles for longer periods of time, and based on whether anybody is at home at a given day or not.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
hocoto-0.6.3.tar.gz
(24.2 kB
view details)
File details
Details for the file hocoto-0.6.3.tar.gz
.
File metadata
- Download URL: hocoto-0.6.3.tar.gz
- Upload date:
- Size: 24.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3eeb861d90437542ad9d5d79fac69b27e0fd7b0938e252b867dc89c8de71a2dd |
|
MD5 | b2006a117ea1127abbe6f9c4064e0ec9 |
|
BLAKE2b-256 | 4177e6a2d2081783f9ad2fddc77067a178bab1c0c31835fd6eca33d5bd937403 |