Ground truth for Govee Flow Plus Light Bars (H6056): phantom segments, bar-to-segment mapping, API auth and rate limits. Language-agnostic facts; Kotlin/Ktor reference example.
93
92%
Does it follow best practices?
Impact
100%
3.84xAverage score across 3 eval scenarios
Passed
No known issues
When working with Govee Flow Plus light bars (H6056), remember:
0..11 only. Never send commands targeting 12+.0..56..11segment[0] is at the TOP — natural index order is top-down. Bottom-up fill = high-to-low index range.GET /router/api/v1/user/devices with header Govee-API-Key. Not mDNS, not Bluetooth, not BLE.devices.capabilities.segment_color_setting / segmentedColorRgb. rgb is a packed int: (r << 16) or (g << 8) or b.iot-actuator-patterns-kotlin (or its rate-limited-iot-debounce predecessor) if you're emitting more than one update per second. min-interval 1.2 s is the sweet spot.rgb=(0,0,0) is unreliable as "off". Some firmware paths treat packed RGB 0x000000 as a no-op and silently retain the prior segment state. To reliably clear a segment, use rgb=(1,1,1) (near-black but non-zero). On session shutdown, always issue an explicit all-segments command to every physical segment (0..11) so nothing is left lit when the script exits.See the full skill at skills/govee-h6056-control/SKILL.md for the Kotlin/Ktor reference client.