A Dimmable Plug-In Unit is a device that provides power to another device that is plugged into it, and is capable of being switched on or off and have its level adjusted. The Dimmable Plug-in Unit is typically used to control a conventional non-communicating light through its mains connection using phase cutting.

MatterSpecification.v13.Device § 5.2

interface DimmablePlugInUnitDevice {
    behaviors: {
        identify: Type<WithAlterations<Identify.Cluster, {
            commands: {
                triggerEffect: {
                    optional: false;
                };
            };
        }>, typeof IdentifyServer, IdentifyInterface>;
    } & {
        groups: typeof GroupsServer;
    } & {
        onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
    } & {
        levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
            attributes: {
                currentLevel: {
                    max: 254;
                    min: 1;
                };
                maxLevel: {
                    default: 254;
                    max: 255;
                    min: 254;
                };
                minLevel: {
                    default: 1;
                    max: 2;
                    min: 1;
                };
            };
        }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
    } & {
        identify: Type<WithAlterations<Identify.Cluster, {
            commands: {
                triggerEffect: {
                    optional: false;
                };
            };
        }>, typeof IdentifyServer, IdentifyInterface>;
    } & {
        groups: typeof GroupsServer;
    } & {
        onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
    } & {
        levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
            attributes: {
                currentLevel: {
                    max: 254;
                    min: 1;
                };
                maxLevel: {
                    default: 254;
                    max: 255;
                    min: 254;
                };
                minLevel: {
                    default: 1;
                    max: 2;
                    min: 1;
                };
            };
        }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
    };
    defaults: StateOf<{
        identify: Type<WithAlterations<Identify.Cluster, {
            commands: {
                triggerEffect: {
                    optional: false;
                };
            };
        }>, typeof IdentifyServer, IdentifyInterface>;
    } & {
        groups: typeof GroupsServer;
    } & {
        onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
    } & {
        levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
            attributes: {
                currentLevel: {
                    max: 254;
                    min: 1;
                };
                maxLevel: {
                    default: 254;
                    max: 255;
                    min: 254;
                };
                minLevel: {
                    default: 1;
                    max: 2;
                    min: 1;
                };
            };
        }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
    }>;
    deviceClass: DeviceClassification;
    deviceRevision: number;
    deviceType: DeviceTypeId;
    name: "DimmablePlugInUnit";
    requirements: typeof DimmablePlugInUnitRequirements;
    set(defaults: InputStateOf<{
        identify: Type<WithAlterations<Identify.Cluster, {
            commands: {
                triggerEffect: {
                    optional: false;
                };
            };
        }>, typeof IdentifyServer, IdentifyInterface>;
    } & {
        groups: typeof GroupsServer;
    } & {
        onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
    } & {
        levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
            attributes: {
                currentLevel: {
                    max: 254;
                    min: 1;
                };
                maxLevel: {
                    default: 254;
                    max: 255;
                    min: 254;
                };
                minLevel: {
                    default: 1;
                    max: 2;
                    min: 1;
                };
            };
        }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
    }>): With<For<{
        behaviors: {
            identify: Type<WithAlterations<Identify.Cluster, {
                commands: {
                    triggerEffect: {
                        optional: false;
                    };
                };
            }>, typeof IdentifyServer, IdentifyInterface>;
        } & {
            groups: typeof GroupsServer;
        } & {
            onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
        } & {
            levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [(...), (...)]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
                attributes: {
                    currentLevel: {
                        max: 254;
                        min: 1;
                    };
                    maxLevel: {
                        default: 254;
                        max: 255;
                        min: 254;
                    };
                    minLevel: {
                        default: 1;
                        max: 2;
                        min: 1;
                    };
                };
            }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [(...), (...)]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
        };
        deviceRevision: 4;
        deviceType: 267;
        name: "DimmablePlugInUnit";
        requirements: typeof DimmablePlugInUnitRequirements;
    }>, {
        identify: Type<WithAlterations<Identify.Cluster, {
            commands: {
                triggerEffect: {
                    optional: false;
                };
            };
        }>, typeof IdentifyServer, IdentifyInterface>;
    } & {
        groups: typeof GroupsServer;
    } & {
        onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
    } & {
        levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
            attributes: {
                currentLevel: {
                    max: 254;
                    min: 1;
                };
                maxLevel: {
                    default: 254;
                    max: 255;
                    min: 254;
                };
                minLevel: {
                    default: 1;
                    max: 2;
                    min: 1;
                };
            };
        }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
    }>;
    with<const BL>(...behaviors: BL): With<For<{
        behaviors: {
            identify: Type<WithAlterations<Identify.Cluster, {
                commands: {
                    triggerEffect: {
                        optional: false;
                    };
                };
            }>, typeof IdentifyServer, IdentifyInterface>;
        } & {
            groups: typeof GroupsServer;
        } & {
            onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
        } & {
            levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [(...), (...)]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
                attributes: {
                    currentLevel: {
                        max: 254;
                        min: 1;
                    };
                    maxLevel: {
                        default: 254;
                        max: 255;
                        min: 254;
                    };
                    minLevel: {
                        default: 1;
                        max: 2;
                        min: 1;
                    };
                };
            }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [(...), (...)]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
        };
        deviceRevision: 4;
        deviceType: 267;
        name: "DimmablePlugInUnit";
        requirements: typeof DimmablePlugInUnitRequirements;
    }>, With<{
        identify: Type<WithAlterations<Identify.Cluster, {
            commands: {
                triggerEffect: {
                    optional: false;
                };
            };
        }>, typeof IdentifyServer, IdentifyInterface>;
    } & {
        groups: typeof GroupsServer;
    } & {
        onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
    } & {
        levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
            attributes: {
                currentLevel: {
                    max: 254;
                    min: 1;
                };
                maxLevel: {
                    default: 254;
                    max: 255;
                    min: 254;
                };
                minLevel: {
                    default: 1;
                    max: 2;
                    min: 1;
                };
            };
        }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
    }, BL>>;
}

Hierarchy (view full)

Properties

behaviors: {
    identify: Type<WithAlterations<Identify.Cluster, {
        commands: {
            triggerEffect: {
                optional: false;
            };
        };
    }>, typeof IdentifyServer, IdentifyInterface>;
} & {
    groups: typeof GroupsServer;
} & {
    onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
} & {
    levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
        attributes: {
            currentLevel: {
                max: 254;
                min: 1;
            };
            maxLevel: {
                default: 254;
                max: 255;
                min: 254;
            };
            minLevel: {
                default: 1;
                max: 2;
                min: 1;
            };
        };
    }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
} & {
    identify: Type<WithAlterations<Identify.Cluster, {
        commands: {
            triggerEffect: {
                optional: false;
            };
        };
    }>, typeof IdentifyServer, IdentifyInterface>;
} & {
    groups: typeof GroupsServer;
} & {
    onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
} & {
    levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
        attributes: {
            currentLevel: {
                max: 254;
                min: 1;
            };
            maxLevel: {
                default: 254;
                max: 255;
                min: 254;
            };
            minLevel: {
                default: 1;
                max: 2;
                min: 1;
            };
        };
    }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
}
defaults: StateOf<{
    identify: Type<WithAlterations<Identify.Cluster, {
        commands: {
            triggerEffect: {
                optional: false;
            };
        };
    }>, typeof IdentifyServer, IdentifyInterface>;
} & {
    groups: typeof GroupsServer;
} & {
    onOff: Type<WithFeatures<WithFeatures<OnOff.Cluster, readonly [Lighting]>, readonly ["Lighting"]>, typeof OnOffServer, OnOffInterface>;
} & {
    levelControl: Type<WithAlterations<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, {
        attributes: {
            currentLevel: {
                max: 254;
                min: 1;
            };
            maxLevel: {
                default: 254;
                max: 255;
                min: 254;
            };
            minLevel: {
                default: 1;
                max: 2;
                min: 1;
            };
        };
    }>, Type<WithFeatures<WithFeatures<WithFeatures<LevelControl.Cluster, readonly [OnOff, Lighting]>, readonly [OnOff]>, readonly ["OnOff", "Lighting"]>, typeof LevelControlServer, LevelControlInterface>, LevelControlInterface>;
}>

Access default state values.

deviceRevision: number
deviceType: DeviceTypeId
name
requirements: typeof DimmablePlugInUnitRequirements

Methods