# SHinterface - Smart Home Control Interface A Qt6-based smart home control application that interfaces with microcontrollers and sensors to manage home automation devices. ## Quick Start ### Building ```bash mkdir build cd build cmake .. make ``` ### Running **Primary (Master) Mode:** ```bash ./SHinterface -m ``` **Secondary (Client) Mode:** ```bash ./SHinterface -H 192.168.1.100 -p 38940 ``` **Headless Server Mode:** ```bash ./SHinterface -m -e ``` ## Features - ✅ Control relays and PWM outputs - ✅ Monitor various sensors (temperature, humidity, doors, etc.) - ✅ MQTT sensor integration - ✅ Actor-based automation system - ✅ RGB lighting control - ✅ WebSocket API for remote access - ✅ Primary/secondary architecture for distributed control ## Configuration Settings are stored in JSON format. Default location: ``` ~/.config/shinterface.json ``` You can specify a custom config file with: ```bash ./SHinterface -c /path/to/config.json ``` ## Usage ### Primary Mode (Master) The primary instance connects to your microcontroller and manages all devices. It can run with or without a GUI. ### Secondary Mode (Client) Secondary instances connect to the primary via TCP and provide additional control points without needing their own microcontroller connection. ## Command Line Options ``` -m, --master Use in master mode -H, --host
Set server host IP address (default: 0.0.0.0) -p, --port