✓ Verified 💻 Development ✓ Enhanced Data

Control4 Home

Control a Control4 smart home via pyControl4 (lights, relays, room media) using local Python wrapper

Rating
4 (307 reviews)
Downloads
29,925 downloads
Version
1.0.0

Overview

Control a Control4 smart home via pyControl4 (lights, relays, room media) using local Python wrappers.

Complete Documentation

View Source →

Control4 Home

Use the scripts in scripts/ to control Control4 locally.

Files

  • scripts/control4_cli.py — low-level Control4 commands (discover/list/light/relay/room/media + generic method calls)
  • scripts/nl_control4.py — natural language command wrapper (lights, relays, room media, mute/unmute, volume)
  • scripts/device_map.example.json — alias template for mapping names to Control4 IDs

Setup

  • Create a Python venv (example):
  • python3 -m venv .venv-control4
  • Install dependency:
  • .venv-control4/bin/pip install pyControl4
  • Create scripts/.env (or export env vars) with:
  • CONTROL4_USERNAME
  • CONTROL4_PASSWORD
  • CONTROL4_CONTROLLER_IP
  • CONTROL4_CONTROLLER_NAME (optional if only one)
  • Copy and customize alias map:
  • cp scripts/device_map.example.json scripts/device_map.json

Common commands

  • Discover controller/account:
  • .venv-control4/bin/python scripts/control4_cli.py discover
  • List items:
  • .venv-control4/bin/python scripts/control4_cli.py list-items --compact
  • Set light:
  • .venv-control4/bin/python scripts/control4_cli.py light-set --id 229 --level 40
  • Toggle relay:
  • .venv-control4/bin/python scripts/control4_cli.py relay-toggle --id 571
  • Natural language:
  • .venv-control4/bin/python scripts/nl_control4.py "turn kitchen lights off"
  • .venv-control4/bin/python scripts/nl_control4.py "watch apple tv in master bedroom"
  • .venv-control4/bin/python scripts/nl_control4.py "mute master bedroom"
  • List all exposed methods for an entity:
  • .venv-control4/bin/python scripts/control4_cli.py methods --entity room --id 45
  • Call any exposed pyControl4 method:
  • .venv-control4/bin/python scripts/control4_cli.py call --entity climate --id 752 --method getCurrentTemperatureC
  • .venv-control4/bin/python scripts/control4_cli.py call --entity light --id 229 --method rampToLevel --args-json "[25,1000]"
  • Sensitive methods require explicit override:
  • .venv-control4/bin/python scripts/control4_cli.py call --entity security-panel --id --method setArm --allow-sensitive

Safety

  • Treat gate/door/alarm relays as sensitive actions.
  • Confirm before running high-risk commands if user intent is ambiguous.
  • Do not commit secrets (passwords/tokens) into git.

Installation

Terminal bash

openclaw install control4-home
    
Copied!

Tags

#productivity_and-tasks

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author niallel
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install control4-home