Control CCT Light
Control CCT by adjusting their lightness and color temperature.
Description
The CCT control allows you to manage tunable white LED lights by setting:
- Dimming level (0-100%)
- Color temperature (0-100%, mapped to 2700K-6500K)
Example
Request Topic
LYT/41e0d6b2-37de-43d8-a348-4ba94853b6cd/NODE/CONTROL
Adjust both lightness and temperature:
{
"version": "v1.0",
"type": "cct",
"address": 50646,
"dimming": 10,
"color_temperature": 100
}
Adjust only lightness:
{
"version": "v1.0",
"type": "cct",
"address": 50646,
"dimming": 10
}
Adjust only temperature:
{
"version": "v1.0",
"type": "cct": 50646,
"color_temperature": 100
}
Field Descriptions
| Field | Type | Range | Description |
|---|---|---|---|
| version | string | v1.0 | API version identifier |
| type | string | "cct" | Message type for CCT control |
| address | number | node address | Unicast address of the target node |
| dimming | number | 0-100 | Brightness level in percentage |
| color_temperature | number | 0-100 | Color temperature in percentage where: - 0% = 2700K (warm white) - 100% = 6500K (cool white) |
Response topic
LYT/41e0d6b2-37de-43d8-a348-4ba94853b6cd/NODE/E/STATUS
Response Payload
Success Response
{
"version": "v1.0",
"message": "success",
"type": "cct",
"address": 50646,
"cct": {
"dimming": 40,
"color_temperature": 100
}
}
Error Handling
The API may return various error responses based on different scenarios. Here are the possible errors and their resolutions:
1. Constraint Error (Code: 3005)
a. Temperature Constraint:
{
"message": "error",
"message_type": {
"code": 3005,
"message": "color_temperature must not be greater than 100",
"errorCode": "CONSTRAINT_ERROR"
},
"address": 50646
}
OR
{
"message": "error",
"message_type": {
"code": 3005,
"message": "color_temperature must not be less than 0",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "cct",
"address": 50646
}
b. Lightness Constraint:
{
"message": "error",
"message_type": {
"code": 3005,
"message": "dimming must not be greater than 100",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "cct",
"address": 50646
}
OR
{
"message": "error",
"message_type": {
"code": 3005,
"message": "dimming must not be less than 0",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "cct",
"address": 50646
}
c. Version Constraint:
{
"message": "error",
"message_type": {
"code": 3005,
"message": "version must be one of the following values: v1.0",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "cct",
"address": 50646
}
d. Type Constraint:
{
"message": "error",
"message_type": {
"code": 3005,
"message": "type must be one of the following values: cct, dimmer, switch, fan, curtain, rgb",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "cct",
"address": 50646
}
e. Address Constraint:
{
"message": "error",
"message_type": {
"code": 3005,
"message": "address must be a number conforming to the specified constraints",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "cct",
"address": 50646
}
Constraint errors occur in the following cases:
-
Color Temperature Constraints:
- Color Temperature value exceeds 100%
- Color Temperature field is missing
- Color Temperature value is less than 0%
-
Dimming Constraints:
- Dimming value exceeds 100%
- Dimming field is missing
- Dimming value is less than 0%
-
Version Constraints:
- Version is not exactly "v1.0"
- Version field is missing
- Version field has incorrect format
-
Type Constraints:
- Type must be one of: "cct", "dimmer", "switch", "fan", "curtain", "rgb"
- Type field is missing
- Type field has incorrect value
-
Address Constraints:
- Address must be a number
- Address field is missing
- Address field has incorrect type (must be number)
Resolution:
- Ensure temperature is between 0-100
- Ensure lightness is between 0-100
- Always use "v1.0" as the version value
- Use correct type value from allowed list: "cct", "dimmer", "switch", "fan", "curtain", "rgb"
- Ensure address is a number
- Validate all parameters before sending
2. Node Not Found (Code: 2028)
{
"message": "error",
"message_type": {
"code": 2028,
"message": "Node not found",
"errorCode": "NODE_NOT_FOUND"
},
"type": "cct",
"address": 50646
}
Occurs when:
- The specified node address doesn't exist
- Node is offline or unreachable
- Node has been removed from the network
Resolution:
- Verify node address is correct
- Check if node is powered and connected
- Confirm node is properly provisioned
3. Project Not Found (Code: 2002)
{
"message": "error",
"message_type": {
"code": 2002,
"message": "Project not found",
"errorCode": "PROJECT_NOT_FOUND"
},
"type": "cct",
"address": 50646
}
Occurs when:
- project_uuid in MQTT topic is invalid
- Project has been deleted
- User doesn't have access to the project
Resolution:
- Verify project_uuid
- Ensure project exists
- Check access permissions
4. Request Timeout (Code: 3002)
{
"message": "error",
"message_type": {
"code": 3002,
"message": "Request Timeout",
"errorCode": "REQUEST_TIMEOUT"
},
"type": "cct",
"address": 50646
}
Occurs when:
- Node doesn't respond within timeout period
- Network connectivity issues
- Node is busy processing other commands
Resolution:
- Check network connectivity
- Verify node is responsive
- Retry the request
- Check for network congestion
Error Code Summary
| Code | Error Code | Description | Solution |
|---|---|---|---|
| 3005 | CONSTRAINT_ERROR | Parameter validation failed | Check input values |
| 2028 | NODE_NOT_FOUND | Node not available | Verify node status |
| 2002 | PROJECT_NOT_FOUND | Project doesn't exist | Check project_uuid |
| 3002 | REQUEST_TIMEOUT | Request took too long | Check connectivity |