Vibeleaderboard
Index / tool
Visit github.com
Category
Productivity
Rank
No. 1018Tools index
Pricing
Open Source
Type
TOOL
Builder
wez
GitHub
224 stars
Date

About

Control your Govee smart lights from Home Assistant over the local LAN API — no cloud round trip, fast and offline-friendly.

What it does

This custom Home Assistant integration represents Govee devices as light entities. It discovers devices, exposes power, brightness, RGB color, and color-temperature controls, and can use an optional Govee HTTP key to retrieve account device names.

Why it's ranked here

The integration offers useful native light controls and frequent LAN discovery, but it is now a cautious pick. Its author has shifted development toward Govee2MQTT, which the repository describes as more flexible and better equipped for newer APIs and devices.

What's good

Configuration happens through Home Assistant’s integration flow and HACS supplies the installation path. An HTTP key is optional when every target device supports the LAN API. Device diagnostics expose whether HTTP, Bluetooth, and LAN capabilities were detected, while debug logging helps trace failures.

Tradeoffs

Setup depends on multicast UDP, fixed ports, and network proximity. Docker deployments need host networking or macvlan. Another LAN API implementation cannot share the same IP address. Reported state may remain temporarily wrong after commands or changes made through other software, until polling catches up.

How to use it well

Choose it for an existing Home Assistant installation with supported Govee lights and a multicast-friendly network. Enable LAN control separately on every device, then add an HTTP key if friendly account names matter. Do not choose it for broader device coverage, newer APIs, or simultaneous use with Govee2MQTT on one address.

Technical notes+

custom_components/govee_lan/__init__.py registers only the Home Assistant light platform, while custom_components/govee_lan/config_flow.py provides config and options flows for an optional API key. custom_components/govee_lan/light.py builds entities around govee_led_wez.GoveeController, serializes updates with PARALLEL_UPDATES = 1, discovers enabled IPv4 interfaces, starts LAN and optional HTTP pollers, and registers active Bluetooth callbacks for two manufacturer IDs. It maps power, brightness, RGB, and color temperature into Home Assistant state. tests/test_init.py contains one setup test, with pytest and coverage configured in setup.cfg.

Observed

License
MIT License
Primary language
Python
Install surface
Home Assistant custom integration distributed through HACS
Interface
Home Assistant light platform with configuration and options flows
External library
Uses the govee-led-wez Python library
Platform requirement
Home Assistant 2022.12.0 or newer is declared in HACS metadata
Test structure
The supplied tests directory contains one component setup test

Read from README.md, setup.cfg, custom_components/govee_lan/const.py, custom_components/govee_lan/light.py, custom_components/govee_lan/__init__.py, custom_components/govee_lan/config_flow.py, tests/test_init.py, LICENSE, hacs.json, requirements.test.txt, .pre-commit-config.yaml, tests/bandit.yaml, .github/FUNDING.yml.

What it can do

  • Control Govee smart lights locally

    Commands from Home AssistantLight state changes on Govee devices

  • Turn lights on/off

    Power commands via Home Assistant interfaceGovee lights powered on or off

  • Adjust light brightness

    Brightness level settingsModified light intensity on Govee devices

  • Change light colors

    Color values or presetsUpdated color display on Govee lights

  • Communicate with Govee devices over LAN

    Local network API callsDirect device responses without cloud dependency

  • Integrate Govee lights with Home Assistant automations

    Home Assistant automation triggers and conditionsAutomated light control responses

Tags

home-assistantgoveesmart-homeiot

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.