Skip to content

Configuration

Ben edited this page Jul 16, 2021 · 65 revisions

Required Settings

Add the following to your configuration file in the appropriate place. The following are the basic required fields.

{
   "name": "Govee",
   "username": "your-govee-username",
   "password": "your-govee-password",
   "apiKey": "your-govee-api-key",
   "platform": "Govee"
}
  • ⚠️ The "platform": "Govee" line must not be changed
  • both username and password are required if you wish to enable support for certain wifi/bluetooth models
  • apiKey is required if you wish to enable support for certain wifi models
  • See Supported Devices to see what is required for your device model

Obtaining Your API Key

You will need to retrieve an API key which you can obtain through the Govee mobile app.

  • Go to your account tab → "About us" → "Apply for API key"
  • Fill out your name and your reason - I'm sure "Control through Homebridge" would be sufficient
  • You'll receive your API key to your Govee registered email address normally within minutes

Optional Settings

Entry Type Default Explanation
refreshTime integer 15 An interval (in seconds) in which your cloud devices will refresh with Govee. Must be 15 or more.
controlInterval integer 500 A minimum delay (in milliseconds) between cloud device updates being sent. Increasing this may help if you find device updates are not working or if you use HomeKit scenes/groupings. Must be 500 or more.
disableDeviceLogging bool false Global logging setting for accessory status changes. If true then accessory status changes will not be logged. This can also be set per accessory later in the config.
debug bool false Global logging setting for the plugin. If true then debug information will be added to the log. This can also be set per accessory later in the config.
debugFakegato bool false If true, the included Fakegato library will debug to the log.
disablePlugin bool false If true, the plugin will remove all accessories and not load the plugin on restart.
lightDevices array []

An array of objects to define custom options for your Govee light devices.

  • label - This setting has no effect except to help identify this device
  • deviceId - Govee Device ID
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • enableBT - If true, the plugin will try and control this device via bluetooth
  • brightnessStep - A minimum step for the brightness slider in the Home app. Must be 1 or more
  • adaptiveLightingShift - The mired for each Adaptive Lighting update will be increased by this value, making the light appear warmer. Set to -1 to remove Adaptive Lighting feature. Must be -1 or more
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

[
   {
      "deviceId": "12:AB:A1:C5:A8:99:D2:17",
      "label": "TV LED Strip",
      "enableBT": true,
      "brightnessStep": 10,
      "adaptiveLightingShift": 15,
      "overrideLogging": "default"
   }
]
switchDevices array []

An array of objects to define custom options for your Govee switch devices.

  • label - This setting has no effect except to help identify this device
  • deviceId - Govee Device ID
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • showAs - Expose this device as an 'Outlet' (default), 'Switch' (switch) or 'Air Purifier' (purifier)
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

[
   {
      "deviceId": "12:AB:A1:C5:A8:99:D2:17",
      "label": "Kitchen Lights",
      "showAsType": "outlet",
      "overrideLogging": "debug"
   }
]