The Color Control cluster (0x0300) is a Matter cluster that Controls the color output of a light, supporting hue/saturation, XY color space, and color temperature modes.. It defines 19 commands and 52 attributes and is mandatory for 5 device types.
Color Control 0x0300
Controls the color output of a light, supporting hue/saturation, XY color space, and color temperature modes.
Spec History
This cluster's ClusterRevision across the Matter releases it has shipped in. Click a version to inspect the cluster as it existed in that release.
Attributes 52
Commands 19
Features 5
| Code | Name | Type | Flags |
|---|---|---|---|
| 0x0000 |
CurrentHue
max 0xFE
|
int8u | Optional |
| 0x0001 |
CurrentSaturation
max 0xFE
|
int8u | Optional |
| 0x0002 |
RemainingTime
max 0xFFFE · default 0x0000
|
int16u | Optional |
| 0x0003 |
CurrentX
max 0xFEFF
|
int16u | Optional |
| 0x0004 |
CurrentY
max 0xFEFF
|
int16u | Optional |
| 0x0005 |
DriftCompensation
max 0x04
|
DriftCompensationEnum | Optional |
| 0x0006 | CompensationText | char_string | Optional |
| 0x0007 |
ColorTemperatureMireds
max 0xFEFF
|
int16u | Optional |
| 0x0008 |
ColorMode
max 0x02
|
ColorModeEnum | |
| 0x000F |
Options
max 0x01
|
OptionsBitmap | Writable |
| 0x0010 |
NumberOfPrimaries
max 0x06 · nullable
|
int8u | |
| 0x0011 |
Primary1X
max 0xFEFF
|
int16u | Optional |
| 0x0012 |
Primary1Y
max 0xFEFF
|
int16u | Optional |
| 0x0013 |
Primary1Intensity
nullable
|
int8u | Optional |
| 0x0015 |
Primary2X
max 0xFEFF
|
int16u | Optional |
| 0x0016 |
Primary2Y
max 0xFEFF
|
int16u | Optional |
| 0x0017 |
Primary2Intensity
nullable
|
int8u | Optional |
| 0x0019 |
Primary3X
max 0xFEFF
|
int16u | Optional |
| 0x001A |
Primary3Y
max 0xFEFF
|
int16u | Optional |
| 0x001B |
Primary3Intensity
nullable
|
int8u | Optional |
| 0x0020 |
Primary4X
max 0xFEFF
|
int16u | Optional |
| 0x0021 |
Primary4Y
max 0xFEFF
|
int16u | Optional |
| 0x0022 |
Primary4Intensity
nullable
|
int8u | Optional |
| 0x0024 |
Primary5X
max 0xFEFF
|
int16u | Optional |
| 0x0025 |
Primary5Y
max 0xFEFF
|
int16u | Optional |
| 0x0026 |
Primary5Intensity
nullable
|
int8u | Optional |
| 0x0028 |
Primary6X
max 0xFEFF
|
int16u | Optional |
| 0x0029 |
Primary6Y
max 0xFEFF
|
int16u | Optional |
| 0x002A |
Primary6Intensity
nullable
|
int8u | Optional |
| 0x0030 |
WhitePointX
max 0xFEFF
|
int16u | Optional |
| 0x0031 |
WhitePointY
max 0xFEFF
|
int16u | Optional |
| 0x0032 |
ColorPointRX
max 0xFEFF
|
int16u | Optional |
| 0x0033 |
ColorPointRY
max 0xFEFF
|
int16u | Optional |
| 0x0034 |
ColorPointRIntensity
nullable
|
int8u | Optional |
| 0x0036 |
ColorPointGX
max 0xFEFF
|
int16u | Optional |
| 0x0037 |
ColorPointGY
max 0xFEFF
|
int16u | Optional |
| 0x0038 |
ColorPointGIntensity
nullable
|
int8u | Optional |
| 0x003A |
ColorPointBX
max 0xFEFF
|
int16u | Optional |
| 0x003B |
ColorPointBY
max 0xFEFF
|
int16u | Optional |
| 0x003C |
ColorPointBIntensity
nullable
|
int8u | Optional |
| 0x4000 | EnhancedCurrentHue | int16u | Optional |
| 0x4001 |
EnhancedColorMode
max 0x03
|
EnhancedColorModeEnum | |
| 0x4002 |
ColorLoopActive
max 1
|
int8u | Optional |
| 0x4003 | ColorLoopDirection | int8u | Optional |
| 0x4004 | ColorLoopTime | int16u | Optional |
| 0x4005 | ColorLoopStartEnhancedHue | int16u | Optional |
| 0x4006 | ColorLoopStoredEnhancedHue | int16u | Optional |
| 0x400A |
ColorCapabilities
max 0x001F
|
ColorCapabilitiesBitmap | |
| 0x400B |
ColorTempPhysicalMinMireds
1..65279
|
int16u | Optional |
| 0x400C |
ColorTempPhysicalMaxMireds
max 65279
|
int16u | Optional |
| 0x400D |
CoupleColorTempToLevelMinMireds
1..65279
|
int16u | Optional |
| 0x4010 |
StartUpColorTemperatureMireds
1..0xFEFF · nullable
|
int16u | Writable Optional |
| Code | Name | Direction | Parameters |
|---|---|---|---|
| 0x00 |
MoveToHue
Optional This command will move the device to the requested hue using a transition.
|
client→server |
Hue: int8u, Direction: DirectionEnum, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x01 |
MoveHue
Optional This command will change the hue of the device with a requested rate.
|
client→server |
MoveMode: MoveModeEnum, Rate: int8u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x02 |
StepHue
Optional This command will change the hue of the device using a step and transition.
|
client→server |
StepMode: StepModeEnum, StepSize: int8u, TransitionTime: int8u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x03 |
MoveToSaturation
Optional This command will move the device to the requested saturation using a transition.
|
client→server |
Saturation: int8u, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x04 |
MoveSaturation
Optional This command will change the saturation of the device with a requested rate.
|
client→server |
MoveMode: MoveModeEnum, Rate: int8u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x05 |
StepSaturation
Optional This command will change the saturation of the device using a step and transition.
|
client→server |
StepMode: StepModeEnum, StepSize: int8u, TransitionTime: int8u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x06 |
MoveToHueAndSaturation
Optional This command will move the device to the requested hue and saturation using a transition.
|
client→server |
Hue: int8u, Saturation: int8u, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x07 |
MoveToColor
Optional This command will move the device to the requested color using a transition.
|
client→server |
ColorX: int16u, ColorY: int16u, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x08 |
MoveColor
Optional This command will change the color of the device with a requested rate.
|
client→server |
RateX: int16s, RateY: int16s, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x09 |
StepColor
Optional This command will change the color of the device using a step and transition.
|
client→server |
StepX: int16s, StepY: int16s, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x0A |
MoveToColorTemperature
Optional This command will move the device to the requested color temperate using a transition.
|
client→server |
ColorTemperatureMireds: int16u, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x40 |
EnhancedMoveToHue
Optional This command allows the light to be moved in a smooth continuous transition from their current hue to a target hue.
|
client→server |
EnhancedHue: int16u, Direction: DirectionEnum, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x41 |
EnhancedMoveHue
Optional This command allows the light to start a continuous transition starting from their current hue.
|
client→server |
MoveMode: MoveModeEnum, Rate: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x42 |
EnhancedStepHue
Optional This command allows the device to be moved in a stepped transition from their current hue.
|
client→server |
StepMode: StepModeEnum, StepSize: int16u, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x43 |
EnhancedMoveToHueAndSaturation
Optional This command allows the light to be moved in a smooth continuous transition from their current hue to a target hue and from their current saturation to a target saturation.
|
client→server |
EnhancedHue: int16u, Saturation: int8u, TransitionTime: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x44 |
ColorLoopSet
Optional This command allows a color loop to be activated such that the color light cycles through its range of hues.
|
client→server |
UpdateFlags: UpdateFlagsBitmap, Action: ColorLoopActionEnum, Direction: ColorLoopDirectionEnum, Time: int16u, StartHue: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x47 |
StopMoveStep
Optional This command is provided to allow MoveTo and Step commands to be stopped.
|
client→server |
OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x4B |
MoveColorTemperature
Optional This command allows the color temperature of the light to be moved at a specified rate.
|
client→server |
MoveMode: MoveModeEnum, Rate: int16u, ColorTemperatureMinimumMireds: int16u, ColorTemperatureMaximumMireds: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
| 0x4C |
StepColorTemperature
Optional This command allows the color temperature of the light to be stepped with a specified step size.
|
client→server |
StepMode: StepModeEnum, StepSize: int16u, TransitionTime: int16u, ColorTemperatureMinimumMireds: int16u, ColorTemperatureMaximumMireds: int16u, OptionsMask: OptionsBitmap, OptionsOverride: OptionsBitmap |
Hue And Saturation
(HS)
bit 0
Supports color specification via hue/saturation.
EnhancedHue
(EHUE)
bit 1
Enhanced hue is supported.
ColorLoop
(CL)
bit 2
Color loop is supported.
XY
(XY)
bit 3
Supports color specification via XY.
ColorTemperature
(CT)
bit 4
Supports specification of color temperature.
Device Types Using This Cluster
Device types in the Matter spec that reference this cluster
Devices Implementing This Cluster
213 devices in the survey implement this cluster
Matter Thread Dimmer Switch VTM31-SN
Inovelli
Aqara Smart Light
Aqara
Essentials A19-A60
Nanoleaf
Matter Thread On/Off Switch VTM30-SN
Inovelli
Essentials Downlight
Nanoleaf
KAJPLATS E27 WS globe 1521lm
IKEA of Sweden
Smart Multicolor Bulb
Tapo
KAJPLATS GU10 WS 575lm
IKEA of Sweden
KAJPLATS GU10 CWS 575lm
IKEA of Sweden
YS1606-UC
Homebridge
KAJPLATS E27 CWS globe 1055lm
IKEA of Sweden
Matter Thread Fan Switch VTM35-SN
Inovelli
KAJPLATS E14 CWS globe 806lm
IKEA of Sweden
KAJPLATS E27 WS G95 clear 806lm
IKEA of Sweden
Smart RGBTW Bulb
Leedarson
Aqara Hub
Aqara
H600D
Shenzhen Qianyan Technology
Essentials BR30
Nanoleaf
WiZ Candle
Signify
Aqara Smart Light
Aqara
Smart RGBTW Bulb
Leedarson
KAJPLATS E14 WS B38 CL 470lm
IKEA of Sweden
Philips Hue Light
Signify
Aqara Smart Light
Aqara