Skip to content

Configuration

Ben edited this page Jul 8, 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",
   "apiKey": "your-govee-api-key",
   "platform": "Govee"
}
  • ⚠️ The "platform": "Govee" line must not be changed

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 devices will refresh with Govee. Must be 15 or more.
controlInterval integer 500 A minimum delay (in milliseconds) between 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.
switchDevices array []

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

  • deviceId - Govee Device ID
  • label - This setting has no effect except to help identify this device
  • 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"
   }
]
lightDevices array []

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

  • deviceId - Govee Device ID
  • label - This setting has no effect except to help identify this device
  • 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",
      "brightnessStep": 10,
      "adaptiveLightingShift": 15,
      "overrideLogging": "default"
   }
]
ignoredDevices array []

A list of devices to ignore by Govee Device ID. For example:

[
   "12:AB:A1:C5:A8:99:D2:17"
]