Skip to main content
Glama
homeassistant.yaml11 kB
name: "Home Assistant" description: "Open-source home automation platform for smart home control and monitoring" category: "automation" priority: "high" version: "2024.6" homepage: "https://home-assistant.io" # System requirements (Pi 3+ supported, Pi 4+ recommended) requirements: ports: [8123] memory_gb: 2 # Minimum for Pi disk_gb: 32 # For database and automations cpu_cores: 2 # Pi 3+ minimum dependencies: - docker # Default configuration default_port: 8123 default_config: data_path: "/opt/homeassistant" timezone: "America/New_York" enable_recorder: true database_type: "sqlite" # Pi-optimized # Installation method installation: method: "docker-compose" docker_compose: version: "3.8" services: homeassistant: container_name: "homeassistant" image: "ghcr.io/home-assistant/home-assistant:stable" restart: "unless-stopped" privileged: true # For hardware access network_mode: "host" # For device discovery environment: - "TZ=America/New_York" volumes: - "/opt/homeassistant/config:/config" - "/opt/homeassistant/media:/media" - "/etc/localtime:/etc/localtime:ro" # Pi-specific hardware access - "/dev:/dev" - "/sys:/sys:ro" - "/run/dbus:/run/dbus:ro" # Pi resource optimization deploy: resources: limits: memory: 1.5G reservations: memory: 512M healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8123"] interval: 30s timeout: 10s retries: 3 start_period: 60s # Optional: Mosquitto MQTT broker for IoT devices mosquitto: container_name: "mosquitto" image: "eclipse-mosquitto:2" restart: "unless-stopped" ports: - "1883:1883" - "9001:9001" volumes: - "/opt/homeassistant/mosquitto/config:/mosquitto/config" - "/opt/homeassistant/mosquitto/data:/mosquitto/data" - "/opt/homeassistant/mosquitto/log:/mosquitto/log" networks: - homeassistant-network # Optional: Node-RED for visual automation nodered: container_name: "nodered" image: "nodered/node-red:latest" restart: "unless-stopped" ports: - "1880:1880" environment: - "TZ=America/New_York" volumes: - "/opt/homeassistant/nodered:/data" networks: - homeassistant-network networks: homeassistant-network: driver: bridge # Pi-specific hardware integrations pi_integrations: gpio_access: description: "Direct GPIO control from Home Assistant" config: | # Add to configuration.yaml rpi_gpio: - port: 18 name: "Relay 1" direction: out - port: 19 name: "Motion Sensor" direction: in pull_mode: up camera_module: description: "Pi Camera module integration" config: | # Enable Pi camera camera: - platform: rpi_camera name: "Pi Camera" image_width: 1280 image_height: 720 image_rotation: 180 bluetooth_tracking: description: "Device presence detection via Bluetooth" config: | device_tracker: - platform: bluetooth_tracker request_rssi: true interval_seconds: 10 # Smart home device support device_integrations: zigbee_devices: via_usb_stick: - "Sonoff Zigbee 3.0 USB Dongle" - "ConBee II" - "SkyConnect" setup: "Plug USB stick → Settings → Integrations → ZHA" wifi_devices: auto_discovery: - "Philips Hue lights" - "TP-Link Kasa switches" - "Shelly relays" - "Tasmota devices" setup: "Settings → Integrations → Add Integration" bluetooth_devices: supported: - "Bluetooth temperature sensors" - "Mi Flora plant sensors" - "Bluetooth beacons" setup: "Settings → Integrations → Bluetooth" # Basic automation examples automation_examples: motion_light: description: "Turn on lights when motion detected" yaml: | automation: - alias: "Motion Light" trigger: platform: state entity_id: binary_sensor.motion_sensor to: 'on' action: service: light.turn_on entity_id: light.living_room sunset_routine: description: "Close blinds and dim lights at sunset" yaml: | automation: - alias: "Sunset Routine" trigger: platform: sun event: sunset action: - service: cover.close_cover entity_id: cover.living_room_blinds - service: light.turn_on entity_id: light.all_lights data: brightness_pct: 30 # Post-installation configuration post_install: initial_setup: - "Access Home Assistant at http://{hostname}:8123" - "Complete onboarding wizard" - "Set up location and timezone" - "Configure first user account" - "Install HACS (Home Assistant Community Store) for additional integrations" essential_integrations: - "Settings → Integrations → Add Integration:" - " • Sun (for sunrise/sunset automation)" - " • Weather (choose local weather service)" - " • Mobile App (for notifications)" - " • File Editor (for config editing)" - " • Terminal & SSH (for system access)" backup_setup: - "Settings → System → Backups" - "Enable automatic backups to external storage" - "Consider Google Drive Backup add-on" # Performance optimization for Pi performance_tuning: database_optimization: recorder_config: | # Add to configuration.yaml recorder: purge_keep_days: 7 # Reduce history retention db_url: "sqlite:////config/home-assistant_v2.db" exclude: domains: - automation - script include: domains: - sensor - binary_sensor - light - switch logging_optimization: logger_config: | # Reduce log verbosity logger: default: warning logs: homeassistant.core: info homeassistant.components.recorder: warning storage_optimization: - "Use fast SD card (Class 10 U3) or USB 3.0 SSD" - "Enable log2ram to reduce SD card wear" - "Move database to external storage if needed" # Add-ons for enhanced functionality recommended_addons: core_addons: - name: "File Editor" purpose: "Edit configuration files in browser" - name: "Terminal & SSH" purpose: "Command line access" - name: "Samba Share" purpose: "Network file access" monitoring_addons: - name: "Glances" purpose: "System monitoring dashboard" - name: "Log Viewer" purpose: "Centralized log viewing" automation_addons: - name: "Node-RED" purpose: "Visual automation builder" - name: "AppDaemon" purpose: "Python-based automation" # Energy monitoring setup energy_monitoring: smart_plugs: recommended: ["TP-Link Kasa HS110", "Shelly Plug S"] setup: "Auto-discovered → Configure energy monitoring" whole_home_monitoring: devices: ["Emporia Vue", "Sense Energy Monitor"] integration: "Custom component or ESPHome" solar_integration: inverters: ["SolarEdge", "Enphase", "Fronius"] setup: "Add integration → Configure API access" # Mobile integration mobile_apps: official_app: android: "Home Assistant (Google Play)" ios: "Home Assistant (App Store)" features: - "Remote control" - "Location tracking" - "Push notifications" - "Quick actions" companion_features: sensors: "Battery, network, location" actions: "Trigger automations remotely" notifications: "Send alerts to phone" # Security and remote access security: local_access: - "Default: http://{hostname}:8123" - "Enable HTTPS with SSL certificate" - "Use strong passwords and 2FA" remote_access_options: nabu_casa: description: "Official cloud service ($6/month)" benefits: "Easy setup, supports Alexa/Google" vpn_access: description: "VPN to home network" options: ["Tailscale", "WireGuard", "OpenVPN"] reverse_proxy: description: "Self-hosted with domain" tools: ["nginx", "Caddy", "Traefik"] # Monitoring and maintenance monitoring: system_health: builtin: "Settings → System → Repairs" addon: "Glances for detailed Pi metrics" performance_metrics: - "CPU usage and temperature" - "Memory consumption" - "SD card/storage health" - "Network connectivity" backup_verification: schedule: "Weekly automatic backups" testing: "Restore test quarterly" # Troubleshooting troubleshooting: common_issues: - issue: "Home Assistant won't start" solutions: - "Check container logs: docker logs homeassistant" - "Verify configuration.yaml syntax" - "Check available disk space" - "Restart container: docker restart homeassistant" - issue: "Devices not discovered" solutions: - "Ensure network_mode: host is set" - "Check firewall settings" - "Verify devices are on same network" - "Enable multicast/mDNS" - issue: "Poor performance on Pi" solutions: - "Reduce recorder retention days" - "Exclude unnecessary entities from recorder" - "Use faster storage (SSD)" - "Monitor CPU temperature" - issue: "GPIO integration not working" solutions: - "Ensure privileged: true is set" - "Check /dev volume mount" - "Verify GPIO permissions" - "Install RPi.GPIO in container" # Integration with other homelab services homelab_integrations: with_pi_hole: description: "Network-wide ad blocking" setup: "Add Pi-hole as DNS server in router settings" with_jellyfin: description: "Media server control" integration: "Jellyfin integration for media control" with_truenas: description: "Network storage access" setup: "Mount NFS/SMB shares for media storage" with_cameras: description: "Security camera integration" options: ["Frigate NVR", "MotionEye", "Blue Iris"] # Advanced Pi-specific features advanced_pi_features: gpio_sensors: temperature: "DS18B20 one-wire sensors" motion: "PIR motion sensors" door_window: "Reed switches" light: "Photoresistors" hat_support: sense_hat: "LED matrix and environmental sensors" enviro_plus: "Air quality monitoring" automation_hat: "Relays and analog inputs" usb_devices: zigbee_coordinator: "ConBee II, SkyConnect" zwave_controller: "Aeotec Z-Stick 7" sdr_radio: "RTL-SDR for 433MHz devices"

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/washyu/mcp_python_server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server