admins: - username: admin password_hash: "$2b$10$ZW4Jy7ctIt7k9V1AogFky.v4wedLF92t4/ZlT9kWPlIiCmdQNzJ.C" # password: adminpass discord_id: "1234567890" lockdown: false - username: lockdown password_hash: "$2b$10$n0L0oe1ZQy7IgM.FvVAzb.aXz43uaZWFiT0wr.05uNoVIDLawmrCG" # password: lockdownpass discord_id: "0987654321" lockdown: true timezone: "America/New_York" llmCommentary: enabled: false model: "qwen2.5:7b-instruct" ollamaServer: "http://127.0.0.1:11434" frequency: 120000 media: # Base address for mediaMTX (scheme + host + optional port/path). The UI will always request # http:////whep # Example: http://192.168.0.86:8889/video whepBaseUrl: "http://192.168.0.86:8889/video" audioForward: enabled: true ffmpegBin: "ffmpeg" streamSuffix: "-fwd" maxUploadBytes: 8388608 audioLevels: # Gains are multipliers (0.0 - 4.0) applied globally to all rovers. hornGain: 1.0 ttsGain: 1.0 forwardGain: 1.0 homeAssistant: url: "http://homeassistant.local:8123" token: "REPLACE_WITH_LONG_LIVED_TOKEN" neato: # ESPHome device name, used to derive gen3 entities: # button._house_clean, button._send_to_base, button._locate_robot, etc. device: "neato_vacuum" # Direct ESPHome API connection used for lidar log streaming. brainslugHost: "neato-vacuum.local" brainslugPort: 6053 brainslugKey: "REPLACE_WITH_ESPHOME_NOISE_PSK" lift: # Two Home Assistant switches controlling lift direction. # Raise sequence: down off -> wait interlockMs -> up on # Lower sequence: up off -> wait interlockMs -> down on upSwitch: "switch.lift_up" downSwitch: "switch.lift_down" interlockMs: 2000 commandCooldownMs: 3000 entities: - id: "light.lab_main" name: "Lab Lights" - id: "switch.dock_power" name: "Dock Power" # type is optional; if omitted it is inferred from the entity id (light/switch) # For room-light policy, all configured entities are treated as room lights (including switches). buttons: # Legacy action entities only (for example sensor.