Zigbee2MQTTZigbee2MQTT
  • Getting started
  • Supported Adapters
  • Supported Devices
  • Installation
  • Configuration
  • Usage
  • FAQ
Devices
  • Zigbee

    • Zigbee network
    • Improve network range and stability
    • Secure your Zigbee network
    • Sniff Zigbee traffic
    • Create a CC2530 router
  • Support new devices

    • Support new devices
    • Support new Tuya devices
    • Find Tuya Data Points
  • Remote Adapter

    • Connect to a remote adapter
    • Connect to a remote Sonoff ZBBridge
  • More

    • 3D cases
    • External converters
    • External extensions
    • Switch to the dev branch
    • Get Tuya and Xiaomi OTA url
  • Forum
  • Discord
  • Issues
  • Donate
GitHub
GitHub (docs)
  • Getting started
  • Supported Adapters
  • Supported Devices
  • Installation
  • Configuration
  • Usage
  • FAQ
Devices
  • Zigbee

    • Zigbee network
    • Improve network range and stability
    • Secure your Zigbee network
    • Sniff Zigbee traffic
    • Create a CC2530 router
  • Support new devices

    • Support new devices
    • Support new Tuya devices
    • Find Tuya Data Points
  • Remote Adapter

    • Connect to a remote adapter
    • Connect to a remote Sonoff ZBBridge
  • More

    • 3D cases
    • External converters
    • External extensions
    • Switch to the dev branch
    • Get Tuya and Xiaomi OTA url
  • Forum
  • Discord
  • Issues
  • Donate
GitHub
GitHub (docs)

Lonsonho TS130F_dual

ModelTS130F_dual
VendorLonsonho
DescriptionDual curtain/blind module
Exposesmoving, calibration_time, cover (state, position), calibration, motor_reversal
PictureLonsonho TS130F_dual

Notes

The output is only driven once the input signal is released, hence making this device difficult to work with non-momentary switches.

Pairing

Press on pair button for 10 seconds to enter pairing mode

Calibration

  • Press the open button on the switch, wait until the curtains are completely open.
  • Press the same button on the switch again to 'stop'.
  • Put the device into calibration mode, see below.
  • Press the close button on the switch, wait until curtains are fully closed.
  • Press the same button on the switch.
  • Disable the calibration mode, see below.

Options

How to use device type specific configuration

  • invert_cover: Inverts the cover position, false: open=100,close=0, true: open=0,close=100 (default false). The value must be true or false

  • cover_position_tilt_disable_report: Do not publish set cover target position as a normal 'position' value (default false). The value must be true or false

Exposes

Moving (enum, left endpoint)

Value can be found in the published state on the moving_left property. It's not possible to read (/get) or write (/set) this value. The possible values are: UP, STOP, DOWN.

Moving (enum, right endpoint)

Value can be found in the published state on the moving_right property. It's not possible to read (/get) or write (/set) this value. The possible values are: UP, STOP, DOWN.

Calibration time (numeric, left endpoint)

Calibration time. Value can be found in the published state on the calibration_time_left property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"calibration_time_left": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"calibration_time_left": NEW_VALUE}. The minimal value is 0 and the maximum value is 500. The unit of this value is s.

Calibration time (numeric, right endpoint)

Calibration time. Value can be found in the published state on the calibration_time_right property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"calibration_time_right": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"calibration_time_right": NEW_VALUE}. The minimal value is 0 and the maximum value is 500. The unit of this value is s.

Cover (left endpoint)

The current state of this cover is in the published state under the state_left property (value is OPEN or CLOSE). To control this cover publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"state_left": "OPEN"}, {"state_left": "CLOSE"}, {"state_left": "STOP"}. It's not possible to read (/get) this value. To change the position publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"position_left": VALUE} where VALUE is a number between 0 and 100.

Calibration (binary, left endpoint)

Value can be found in the published state on the calibration_left property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"calibration_left": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"calibration_left": NEW_VALUE}. If value equals ON calibration is ON, if OFF OFF.

Motor reversal (binary, left endpoint)

Value can be found in the published state on the motor_reversal_left property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"motor_reversal_left": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"motor_reversal_left": NEW_VALUE}. If value equals ON motor reversal is ON, if OFF OFF.

Cover (right endpoint)

The current state of this cover is in the published state under the state_right property (value is OPEN or CLOSE). To control this cover publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"state_right": "OPEN"}, {"state_right": "CLOSE"}, {"state_right": "STOP"}. It's not possible to read (/get) this value. To change the position publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"position_right": VALUE} where VALUE is a number between 0 and 100.

Calibration (binary, right endpoint)

Value can be found in the published state on the calibration_right property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"calibration_right": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"calibration_right": NEW_VALUE}. If value equals ON calibration is ON, if OFF OFF.

Motor reversal (binary, right endpoint)

Value can be found in the published state on the motor_reversal_right property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"motor_reversal_right": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"motor_reversal_right": NEW_VALUE}. If value equals ON motor reversal is ON, if OFF OFF.

Help to make the docu better and edit this page on Github ✌
Last Updated: 8/30/25, 11:56 AM