CTH01 – Configurable Properties

You can update a device's settings by modifying the configurable properties of its TSL model via API. This topic provides the configurable parameters for CTH01 TSL model, their descriptions, and how to use them.

Usage

  1. Have an overview of the configurable properties and their default values of CTH01 .
  2. Copy the example code and remove the comments and parameters that do not require modification.
  3. Edit the desired properties according to the detailed properties description .
    Note: Make sure that the edited example code complies with the JSON format requirements.
  4. Use the edited example code as the body parameters of Update Device Properties Incrementally.

Configurable Properties

The following code represents all configurable properties in the CTH01 TSL model, along with their default values.

Note:
  • Click a property to view its detailed description and valid values.
  • Configure the example code as needed, then use it as the body parameters of Update Device Properties Incrementally to save time and effort.
{
    "version": "v1.0",
    "type": "TSL",
    "properties": {
        "reporting_interval": { // Report Interval Type: struct
            "minutes_of_time": 10 // Report Interval Type: int Unit: min
        },
        "bluetooth_name": { // Bluetooth Name Type: struct
            "length": 13, // Name Length Type: int
            "content": "7IPO1X9Z239WW" // Name Type: string
        },
        "data_storage_settings": { // Data Storage Settings Type: struct
            "command": "0", // Sub-command Type: enum
            "enable": false, // Data Storage Enable Type: bool
            "retransmission_enable": false, // Data Retransmission Enable Type: bool
            "retransmission_interval": 600, // Retransmission Interval Type: int Unit: s
            "retrieval_interval": 120 // Retrieval Interval Type: int Unit: s
        },
        "voltage_interface": "0", // Voltage Channel Type: enum
        "current_interface1": { // Group a Type: struct
            "type": "0", // Circuit Type A Type: enum
            "config": [ // Current Channel Configuration Type: array Length: 3
                {
                    "direction": "0", // Current Direction Type: enum
                    "range": "0" // Channel Range Type: enum
                }
            ]
        },
        "current_interface2": { // Group b Type: struct
            "type": "0", // Circuit Type B Type: enum
            "config": [ // Current Channel Configuration Type: array Length: 3
                {
                    "direction": "0", // Current Direction Type: enum
                    "range": "0" // Channel Range Type: enum
                }
            ]
        },
        "current_interface3": { // Group c Type: struct
            "type": "0", // Circuit Type C Type: enum
            "config": [ // Current Channel Configuration Type: array Length: 3
                {
                    "direction": "0", // Current Direction Type: enum
                    "range": "0" // Channel Range Type: enum
                }
            ]
        },
        "current_interface4": { // Group d Type: struct
            "type": "0", // Circuit Type D Type: enum
            "config": [ // Current Channel Configuration Type: array Length: 3
                {
                    "direction": "0", // Current Direction Type: enum
                    "range": "0" // Channel Range Type: enum
                }
            ]
        },
        "temperature_calibration_settings": { // Temperature Calibration Settings Type: struct
            "enable": false, // Temperature Calibration Type: bool
            "calibration_value": 0 // Calibration Value Type: float Unit: ℃
        },
        "time_zone": "0", // Time Zone Type: enum Unit: min
        "daylight_saving_time": { // Daylight Saving Time Type: struct
            "enable": false, // Daylight Saving Time Type: bool
            "daylight_saving_time_offset": 60, // DST Bias Type: int Unit: min
            "start_month": "1", // Month Type: enum
            "start_week_num": "1", // Number of Week Type: enum
            "start_week_day": "1", // Week Type: enum
            "start_hour_min": "0", // Time Type: enum Unit: min
            "end_month": "1", // Month Type: enum
            "end_week_num": "1", // Number of Week Type: enum
            "end_week_day": "1", // Week Type: enum
            "end_hour_min": "0" // Time Type: enum Unit: min
        },
        "temperature_alarm_settings": { // Temperature Threshold Alarm Settings Type: struct
            "enable": false, // Threshold Alarm Enable Type: bool
            "threshold_condition": "2", // Threshold Mode Type: enum
            "threshold_min": 0, // Value A Type: float Unit: ℃
            "threshold_max": 0 // Value B Type: float Unit: ℃
        },
        "current_alarm_settings": [ // Current Threshold Alarm Settings Type: array Length: 12
            {
                "channel": 0, // Threshold Alarm Channel Type: int
                "enable": false, // Threshold Alarm Enable Type: bool
                "threshold_condition": "2", // Threshold Mode Type: enum
                "threshold_min": 1, // Value A Type: int Unit: A
                "threshold_max": 1 // Value B Type: int Unit: A
            }
        ],
        "voltage_alarm_settings": [ // Voltage Threshold Alarm Settings Type: array Length: 3
            {
                "channel": 0, // Threshold Alarm Channel Type: int
                "enable": false, // Threshold Alarm Enable Type: bool
                "threshold_condition": "2", // Threshold Mode Type: enum
                "threshold_min": 1, // Value A Type: int Unit: V
                "threshold_max": 1 // Value B Type: int Unit: V
            }
        ],
        "thdi_alarm_settings": [ // THDi Threshold Alarm Settings Type: array Length: 12
            {
                "channel": 0, // Threshold Alarm Channel Type: int
                "enable": false, // Threshold Alarm Enable Type: bool
                "threshold_condition": "2", // Threshold Mode Type: enum
                "threshold_max": 8 // Value B Type: int Unit: %
            }
        ],
        "thdv_alarm_settings": [ // THDv Threshold Alarm Settings Type: array Length: 3
            {
                "channel": 0, // Threshold Alarm Channel Type: int
                "enable": false, // Threshold Alarm Enable Type: bool
                "threshold_condition": "2", // Threshold Mode Type: enum
                "threshold_max": 5 // Value B Type: int Unit: %
            }
        ],
        "voltage_unbalance_alarm_settings": { // Voltage Three-phase Unbalance Threshold Alarm Settings Type: struct
            "enable": false, // Threshold Alarm Enable Type: bool
            "threshold_condition": "2", // Threshold Mode Type: enum
            "threshold_max": 3 // Value B Type: int Unit: %
        },
        "alarm_global_settings": { // Threshold Alarm Global Settings Type: struct
            "interval": 5, // Alarm Interval Type: int Unit: min
            "times": 3, // Alarm Times Type: int
            "release_enable": false // Threshold Released Report Enable Type: bool
        },
        "month_statistics_settings": { // Monthly Statistics Time Type: struct
            "day": 1, // day Type: int
            "hour": 0, // hour Type: int
            "minute": 0 // minute Type: int
        },
        "report_enable": { // Report Parameters Type: struct
            "temperature": true, // Temperature Type: bool
            "current": false, // Current(RMS) Type: bool
            "voltage": false, // Voltage(RMS) Type: bool
            "power_factor": true, // Power Factor Type: bool
            "active_power": true, // Active Power Type: bool
            "reactive_power": false, // ReActive Power Type: bool
            "apparent_power": false, // Apparent Power Type: bool
            "forward_active_energy": true, // Imported Active Energy Type: bool
            "reverse_active_energy": false, // Exported Active Energy Type: bool
            "forward_reactive_energy": false, // Imported Reactive Energy Type: bool
            "reverse_reactive_energy": false, // Exported Reactive Energy Type: bool
            "apparent_energy": false, // Apparent Energy Type: bool
            "thdi": false, // THDi Type: bool
            "thdv": false, // THDv Type: bool
            "voltage_unbalance": false // Voltage Three-phase Unbalance Type: bool
        }
    }
}

Description

The following table provides the description and valid values for the configurable properties of CTH01.

Parameter Type Description
reporting_interval Struct

The interval for data reporting.

minutes_of_time Integer

Specify the interval for data reporting (Unit: Minute).

  • Default value: 10
  • Valid value: 1 - 1440
bluetooth_name Struct

Bluetooth Name settings.

length Integer

Specify the Bluetooth name length.

  • Default value: 13
  • Valid value: 1 - 13
content String

Specify the Bluetooth name.

  • Restrictions: <= 13
data_storage_settings Struct

Data Storage Settings.

enable Boolean

Decide whether to allow the device to store data.

Valid value:
  • false: disable (Default value).
  • true: enable.
retransmission_enable Boolean

Decide whether to enable data retransmission, which allows the device to log time point of network disconnection periodically resend the accumulated data during the disconnection period upon reconnection.

Valid value:
  • false: disable (Default value).
  • true: enable.
retransmission_interval Integer
retrieval_interval Integer
voltage_interface Enum

Specify the wiring configuration.

Valid value:
  • 0: four_wire (Default value).
  • 1: three_wire.
current_interface1 Struct

Current channel settings for Group a.

type Enum

Specify the wiring method for the current transformer.

Valid value:
  • 0: one_phase (Default value).
  • 1: three_phase.
config Array

Current Channel Configuration.

direction Enum

Specify the current direction.

Valid value:
  • 0: forward (Default value).
  • 1: reverse.
range Enum

Specify the channel range to measure.

Valid value:
  • 0: NONE (Default value).
  • 1: 100A.
  • 2: 300A.
  • 3: 500A.
  • 4: 1000A.
  • 5: 4000A.
current_interface2 Struct

Current channel settings for Group b.

type Enum

Specify the wiring method for the current transformer.

Valid value:
  • 0: one_phase (Default value).
  • 1: three_phase.
config Array

Current Channel Configuration.

direction Enum

Specify the current direction.

Valid value:
  • 0: forward (Default value).
  • 1: reverse.
range Enum

Specify the channel range to measure.

Valid value:
  • 0: NONE (Default value).
  • 1: 100A.
  • 2: 300A.
  • 3: 500A.
  • 4: 1000A.
  • 5: 4000A.
current_interface3 Struct

Current channel settings for Group c.

type Enum

Specify the wiring method for the current transformer.

Valid value:
  • 0: one_phase (Default value).
  • 1: three_phase.
config Array

Current Channel Configuration.

direction Enum

Specify the current direction.

Valid value:
  • 0: forward (Default value).
  • 1: reverse.
range Enum

Specify the channel range to measure.

Valid value:
  • 0: NONE (Default value).
  • 1: 100A.
  • 2: 300A.
  • 3: 500A.
  • 4: 1000A.
  • 5: 4000A.
current_interface4 Struct

Current channel settings for Group d.

type Enum

Specify the wiring method for the current transformer.

Valid value:
  • 0: one_phase (Default value).
  • 1: three_phase.
config Array

Current Channel Configuration.

direction Enum

Specify the current direction.

Valid value:
  • 0: forward (Default value).
  • 1: reverse.
range Enum

Specify the channel range to measure.

Valid value:
  • 0: NONE (Default value).
  • 1: 100A.
  • 2: 300A.
  • 3: 500A.
  • 4: 1000A.
  • 5: 4000A.
temperature_calibration_settings Struct

Temperature calibration settings.

enable Boolean

Decide whether to enable temperature calibration.

Valid value:
  • false: disable (Default value).
  • true: enable.
calibration_value Float

Specify the calibration value (Unit: °C).

  • Default value: 0
  • Valid value: -120 - 120
time_zone Enum
Specify the time zone for this device.
  • Default value: 0 (UTC / Western European Time)
  • Valid value: Refer to time_zone Value for valid values and description.
daylight_saving_time Struct

Daylight Saving Time settings.

enable Boolean

Decide whether to enable Daylight Saving Time.

Valid value:
  • false: disable (Default value).
  • true: enable.
daylight_saving_time_offset Integer

Specify the bias of Daylight Saving Time (Unit : minute).

  • Default value: 60
  • Valid value: 1 - 120
start_month Enum

Specify the start month of Daylight Saving Time.

Valid value:
  • 1: January. (Default value).
  • 2: February.
  • 3: March.
  • 4: April.
  • 5: May.
  • 6: June.
  • 7: July.
  • 8: August.
  • 9: September.
  • 10: October.
  • 11: November.
  • 12: December.
start_week_num Enum

Specify the start week of Daylight Saving Time.

Valid value:
  • 1: 1st (Default value).
  • 2: 2nd.
  • 3: 3rd.
  • 4: 4th.
  • 5: last.
start_week_day Enum

Specify the start week day of Daylight Saving Time.

Valid value:
  • 1: Monday. (Default value).
  • 2: Tuesday.
  • 3: Wednesday.
  • 4: Thursday.
  • 5: Friday.
  • 6: Saturday.
  • 7: Sunday.
start_hour_min Enum

Specify the start time of Daylight Saving Time (Unit : minute).

Valid value:
  • 0: 00:00 (Default value).
  • 60: 01:00.
  • 120: 02:00.
  • 180: 03:00.
  • 240: 04:00.
  • 300: 05:00.
  • 360: 06:00.
  • 420: 07:00.
  • 480: 08:00.
  • 540: 09:00.
  • 600: 10:00.
  • 660: 11:00.
  • 720: 12:00.
  • 780: 13:00.
  • 840: 14:00.
  • 900: 15:00.
  • 960: 16:00.
  • 1020: 17:00.
  • 1080: 18:00.
  • 1140: 19:00.
  • 1200: 20:00.
  • 1260: 21:00.
  • 1320: 22:00.
  • 1380: 23:00.
end_month Enum

Specify the end month of Daylight Saving Time.

Valid value:
  • 1: January. (Default value).
  • 2: February.
  • 3: March.
  • 4: April.
  • 5: May.
  • 6: June.
  • 7: July.
  • 8: August.
  • 9: September.
  • 10: October.
  • 11: November.
  • 12: December.
end_week_num Enum

Specify the end week of Daylight Saving Time.

Valid value:
  • 1: 1st (Default value).
  • 2: 2nd.
  • 3: 3rd.
  • 4: 4th.
  • 5: last.
end_week_day Enum

Specify the end week day of Daylight Saving Time.

Valid value:
  • 1: Monday.(Default value).
  • 2: Tuesday.
  • 3: Wednesday.
  • 4: Thursday.
  • 5: Friday.
  • 6: Saturday.
  • 7: Sunday.
end_hour_min Enum

Specify the end time of Daylight Saving Time (Unit : minute).

Valid value:
  • 0: 00:00 (Default value).
  • 60: 01:00.
  • 120: 02:00.
  • 180: 03:00.
  • 240: 04:00.
  • 300: 05:00.
  • 360: 06:00.
  • 420: 07:00.
  • 480: 08:00.
  • 540: 09:00.
  • 600: 10:00.
  • 660: 11:00.
  • 720: 12:00.
  • 780: 13:00.
  • 840: 14:00.
  • 900: 15:00.
  • 960: 16:00.
  • 1020: 17:00.
  • 1080: 18:00.
  • 1140: 19:00.
  • 1200: 20:00.
  • 1260: 21:00.
  • 1320: 22:00.
  • 1380: 23:00.
temperature_alarm_settings Struct Temperature Threshold Alarm settings.
enable Boolean Decide whether to enable temperature threshold alarm.
Valid value:
  • false: disable (Default value).
  • true: enable.
threshold_condition Enum

Specify the conditions for triggering the temperature alarm.

Valid value:
  • 1: The detected temperature < Minimum threshold.
  • 2: The detected temperature > Maximum threshold (Default value).
  • 3: Minimum threshold < The detected temperature < Maximum threshold.
  • 4: The detected temperature < Minimum threshold or the detected temperature > Maximum threshold.
threshold_min Float

Specify the minimum threshold for temperature alarm (Unit: °C).

  • Default value: 0
  • Valid value: -20 - 100
threshold_max Float

Specify the maximum threshold for temperature alarm (Unit: °C).

  • Default value: 0
  • Valid value: -20 - 100
current_alarm_settings Array

Current Threshold Alarm Settings.

channel Integer

Specify the channel to report threshold alarm.

  • Default value: 0
  • Valid value: 0 - 11
enable Boolean

Decide whether to enable current threshold alarm.

Valid value:
  • false: disable (Default value).
  • true: enable.
threshold_condition Enum

Specify the conditions for triggering the current threshold alarm.

Valid value:
  • 1: The detected current < Minimum threshold.
  • 2: The detected current > Maximum threshold (Default value).
  • 3: Minimum threshold < The detected current < Maximum threshold.
  • 4: The detected current < Minimum threshold or the detected current > Maximum threshold.
threshold_min Integer

Specify the minimum threshold for current alarm ( Unit : A).

  • Default value: 1
  • Valid value: 1 - 4000
threshold_max Integer

Specify the maximum threshold for current alarm ( Unit : A).

  • Default value: 1
  • Valid value: 1 - 4000
voltage_alarm_settings Array

Voltage Threshold Alarm Settings.

channel Integer

Specify the channel to report threshold alarm.

  • Default value: 0
  • Valid value: 0 - 2
enable Boolean

Decide whether to enable voltage threshold alarm.

Valid value:
  • false: disable (Default value).
  • true: enable.
threshold_condition Enum

Specify the conditions for triggering the voltage threshold alarm.

Valid value:
  • 1: The detected voltage < Minimum threshold.
  • 2: The detected voltage > Maximum threshold (Default value).
  • 3: Minimum threshold < The detected voltage < Maximum threshold.
  • 4: The detected voltage < Minimum threshold or the detected voltage > Maximum threshold.
threshold_min Integer

Specify the minimum threshold for voltage alarm ( Unit : V).

  • Default value: 1
  • Valid value: 1 - 500
threshold_max Integer

Specify the maximum threshold for voltage alarm ( Unit : V).

  • Default value: 1
  • Valid value: 1 - 500
thdi_alarm_settings Array

THDi Threshold Alarm Settings.

channel Integer

Specify the channel to report threshold alarm.

  • Default value: 0
  • Valid value: 0 - 11
enable Boolean

Decide whether to enable THDi threshold alarm.

Valid value:
  • false: disable (Default value).
  • true: enable.
threshold_condition Enum

Specify the conditions for triggering the THDi threshold alarm.

Valid value:
  • 2: The detected value > Maximum threshold (Default value).
threshold_max Integer

Specify the maximum threshold for THDi alarm ( Unit : %).

  • Default value: 8
  • Valid value: 1 - 100
thdv_alarm_settings Array

THDv Threshold Alarm Settings.

channel Integer

Specify the channel to report threshold alarm.

  • Default value: 0
  • Valid value: 0 - 2
enable Boolean

Decide whether to enable THDv threshold alarm.

Valid value:
  • false: disable (Default value).
  • true: enable.
threshold_condition Enum

Specify the conditions for triggering the THDv threshold alarm.

Valid value:
  • 2: The detected value > Maximum threshold (Default value).
threshold_max Integer

Specify the maximum threshold for THDv alarm ( Unit : %).

  • Default value: 5
  • Valid value: 1 - 100
voltage_unbalance_alarm_settings Struct

Voltage Three-phase Unbalance Threshold Alarm Settings.

enable Boolean

Decide whether to enable Voltage Three-phase Unbalance alarm.

Valid value:
  • false: disable (Default value).
  • true: enable.
threshold_condition Enum

Specify the conditions for triggering Voltage Three-phase Unbalance alarm.

Valid value:
  • 2: condition: x>B (Default value).
threshold_max Integer

Specify the maximum threshold for Voltage Three-phase Unbalance alarm ( Unit : %).

  • Default value: 3
  • Valid value: 1 - 100
alarm_global_settings Struct

Threshold Alarm Global Settings.

interval Integer

Specify the alarm interval ( Unit : minute).

  • Default value: 5
  • Valid value: 1 - 1440
times Integer

Specify the number of alarms.

  • Default value: 3
  • Valid value: 1 - 1000
release_enable Boolean

Decide whether to enable alarm dismiss report.

Valid value:
  • false: disable (Default value).
  • true: enable.
month_statistics_settings Struct

Monthly Record Summary Time settings.

day Integer

Specify the day of the month to report.

  • Default value: 1
  • Valid value: 1 - 28
hour Integer

Specify the hour of the month to report.

  • Default value: 0
  • Valid value: 0 - 23
minute Integer

Specify the minute of the month to report.

  • Default value: 0
  • Valid value: 0 - 59
report_enable Struct

Report Parameters settings.

temperature Boolean

Decide whether to enable the collection and report of temperature.

Valid value:
  • false: disable.
  • true: enable (Default value).
current Boolean

Decide whether to enable the collection and report of Current(RMS).

Valid value:
  • false: disable (Default value).
  • true: enable.
voltage Boolean

Decide whether to enable the collection and report of Voltage(RMS).

Valid value:
  • false: disable (Default value).
  • true: enable.
power_factor Boolean

Decide whether to enable the collection and report of Power Factor.

Valid value:
  • false: disable.
  • true: enable (Default value).
active_power Boolean

Decide whether to enable the collection and report of Active Power.

Valid value:
  • false: disable.
  • true: enable (Default value).
reactive_power Boolean

Decide whether to enable the collection and report of ReActive Power.

Valid value:
  • false: disable (Default value).
  • true: enable.
apparent_power Boolean

Decide whether to enable the collection and report of Apparent Power.

Valid value:
  • false: disable (Default value).
  • true: enable.
forward_active_energy Boolean

Decide whether to enable the collection and report of Imported Active Energy.

Valid value:
  • false: disable.
  • true: enable (Default value).
reverse_active_energy Boolean

Decide whether to enable the collection and report of Exported Active Energy.

Valid value:
  • false: disable (Default value).
  • true: enable.
forward_reactive_energy Boolean

Decide whether to enable the collection and report of Imported Reactive Energy.

Valid value:
  • false: disable (Default value).
  • true: enable.
reverse_reactive_energy Boolean

Decide whether to enable the collection and report of Exported Reactive Energy.

Valid value:
  • false: disable (Default value).
  • true: enable.
apparent_energy Boolean

Decide whether to enable the collection and report of Apparent Energy.

Valid value:
  • false: disable (Default value).
  • true: enable.
thdi Boolean

Decide whether to enable the collection and report of THDi.

Valid value:
  • false: disable (Default value).
  • true: enable.
thdv Boolean

Decide whether to enable the collection and report of THDv.

Valid value:
  • false: disable (Default value).
  • true: enable.
voltage_unbalance Boolean

Decide whether to enable the collection and report of Voltage Three-phase Unbalance.

Valid value:
  • false: disable (Default value).
  • true: enable.