Skip to main content

Control Dimmer Light

Control Dimmer light by adjusting their brightness levels from 0-100%.

Description

The Dimmer control provides fundamental brightness management for LED nodes in the mesh network. It enables:

  • Dimming level (0-100%)

Example

Request Topic

LYT/41e0d6b2-37de-43d8-a348-4ba94853b6cd/NODE/CONTROL

Request Payload

{
"version": "v1.0",
"type": "dimmer",
"address": 50646,
"dimming": 40
}

Field Descriptions

FieldTypeRangeDescription
versionstringv1.0API version identifier
typestring"dimmer"Message type for DIMMER control
addressnumbernode addressUnicast address of the target node
dimmingnumber0-100Brightness level in percentage

Response topic

LYT/41e0d6b2-37de-43d8-a348-4ba94853b6cd/NODE/E/STATUS

Response Payload

Success Response

{
"version": "v1.0",
"message": "success",
"type": "dimmer",
"address": 50646,
"dimmer": {
"dimming": 40,
}
}

Error Handling

The API may return various error responses based on different scenarios. Here are the possible errors and their resolutions:

1. Constraint Errors (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": "dimmer",
"address": 50646
}

b. Version Constraint:

{
"message": "error",
"message_type": {
"code": 3005,
"message": "version must be equal to v1.0",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "dimmer",
"address": 50646
}

c. 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": "dimmer",
"address": 50646
}

d. Address Constraint:

{
"message": "error",
"message_type": {
"code": 3005,
"message": "address must be a number conforming to the specified constraints",
"errorCode": "CONSTRAINT_ERROR"
},
"type": "dimmer",
"address": 50646
}

Constraint errors occur in the following cases:

  1. Dimming Constraints:

    • Dimming value exceeds 100%
    • Dimming field is missing
    • Dimming value is less than 0%
  2. Version Constraints:

    • Version is not exactly "v1.0"
    • Version field is missing
    • Version field has incorrect format
  3. Type Constraints:

    • Type must be one of: "cct", "dimmer", "switch", "fan", "curtain", "rgb"
    • Type field is missing
    • Type field has incorrect value
  4. Address Constraints:

    • Address must be a number
    • Address field is missing
    • Address field has incorrect type (must be number)

Resolution:

  • Ensure dimming 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": "dimmer",
"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": "dimmer",
"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": "dimmer",
"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

CodeError CodeDescriptionSolution
3005CONSTRAINT_ERRORParameter validation failedCheck input values
2028NODE_NOT_FOUNDNode not availableVerify node status
2002PROJECT_NOT_FOUNDProject doesn't existCheck project_uuid
3002REQUEST_TIMEOUTRequest took too longCheck connectivity