Need help commanding Zemismart Zigbee to RF bridge

Hello

I need some help using zha with a “Zemismart Zigbee Mode Converter”.

image

The device is a Zigbee RF Remote Bridge and activates several of Zemismart’s motorized blinds.
(I have the USB rechargeable and am fairly happy with them, retrofitted to existing blinds nicely).

I can pair the device to Zha but it comes up without entities to interact with (screen shot below). The device then needs to be RF paired with the blind motor. In the instructions, I am supposed to use a Zemismart bridge and then the phone app to “press the up” button (none of which I have).

I figure I need to send the device the right command code to make it send the “UP” signal. But I don’t know where to start to find out what this code would be.

Thanks for any assistance

Other information:

I have the SONOFF ZB Dongle-P Zigbee 3.0 USB Dongle Plus as my coordinator and am currently no routers while I try and figure this out. I have another 14 devices working just fine, motion sensors, temp sensors so I think zha and dongle are ok.

Here is the device signature

{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x0051",
      "in_clusters": [
        "0x0000",
        "0x0004",
        "0x0005",
        "0xef00"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    }
  },
  "manufacturer": "_TZE200_iossyxra",
  "model": "TS0601",
  "class": "zigpy.device.Device"
}

I found this compatibility reference, the picture looks exactly like I have and the model TS0601 is the same. It says it is compatible

Maybe this will help:

Thanks. Its definitely similar and I’ll do more detailed reading. But they are pairing a Zigbee motor with the same model and its an end device. Mine is an RF bridge, not an end device and I don’t know how to get UP/DOWN/STOP.

I remember a topic about the Zemismart Zigbee RF bridge, just can’t find it immediately.

This might be the post you are thinking of, same dongle.
But I think his final solution was to buy a tuya hub.

This pull request merged changes for a similar device.
The pull request recognizes _TZE200_5sbebbzs, and this device I have is _TZE200_iossyxra

When I pair my device it is not listing a quirk. That’s probably because its not matching _TZE200_iossyxra, and perhaps if I make a similar change to the pull request it will.
=> I will see if I can find this file and edit it to try this…

Jup. I gave up and bought a tuya zigbee hub.

So I got a change working on the weekend based on the pull request I highlighted and just doing the same thing for _TZE200_iossyxra.
I can get up/down/stop buttons in the ZHA device, so I can pair the motor to the RF Bridge by pressing the up button.
I am happy to share this for anyone who wants it, but before making a pull request I wanted to get the pairing of the manual RF remote control to the dongle. This means the dongle and Home Assistant will see if the manual remote was used, allowing it to correctly track the state of the blind.

great work. i dont use ZHA, i use zigbee2mqtt addon.

Basic functionality (UP/DOWN/STOP) can be achieved by mapping it to the same implementation as any of these models.

MODELS_INFO: [

            ("_TZE200_zah67ekd", "TS0601"),
            ("_TZE200_xuzcvlku", "TS0601"),
            ("_TZE200_rddyvrci", "TS0601"),
            ("_TZE200_nueqqe6k", "TS0601"),
            ("_TZE200_gubdgai2", "TS0601"),
            ("_TZE200_yenbr4om", "TS0601"),
            ("_TZE200_5sbebbzs", "TS0601"),
            ("_TZE200_xaabybja", "TS0601"),
            ("_TZE200_hsgrhjpf", "TS0601"),
            ("_TZE200_iossyxra", "TS0601")
        ],

having the same issue mine is a

TS0601 by _TZE200_68nvbio9

the roller has ZM25EL as the model number

is there a generic TZE200* that can be created instead? or a manual file that can be updated instead of creating a pull request?

signature is 
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x0051",
      "in_clusters": [
        "0x0000",
        "0x0004",
        "0x0005",
        "0xef00"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    }
  },
  "manufacturer": "_TZE200_68nvbio9",
  "model": "TS0601",
  "class": "zigpy.device.Device"
}

This shows you the two files edit you want to make
Support for Zemismart Tubular roller blind Zigbee 3.0 - M2805EGBZTN by paulstride · Pull Request #1102 · zigpy/zha-device-handlers (github.com)

I did the same thing with the slightly different device number
In order to make the edit you can follow these instructions
zigpy/zha-device-handlers (github.com)

(I didn’t follow these exactly, I already had ssh into port 22222 set up so I just went in that way, used cp -a to copy /usr/local/lib/python3.9/site-packages/zhaquirks/tuya to something under /config folder, modified and then copied them back.

Not sure if your model is RF bridge? I’ve discovered that the RF is not wonderfully reliable. I need to get into the device and allow it to resend the RF command multiple times (when I used broadlink I sent it 5 times, but there is a configuration for the number of repeats). As it is now when you close the cover device it things it shut, so it doesn’t want to send close again. I need another weekend of tinkering…

When you get into the tuya folder and start editing, you will see there are a few variations in there, its not just one implementation for a stream of model numbers, so I am not sure if a wild card matching of the model number would be a good idea.

thanks ill give it a shot and let you know, mines a docker install with an smb share so should be easy to update

i only wanted it to sync to ZHA via a sonoff zigbee bridge and use that for controls, dont plan to use hass to controll it via RF bridge

I have _TZE200_68nvbio9 working with a custom quirk as of today if you still need it.

You mean this PR? Or something more?

I have a similar thing but don’t have reliable operation.

it seems to have been updated and the controls are showing up in HA now without making a custom quirk

yep, I just took out the custom quirk for _TZE200_68nvbio9 and the shades still work. I had to put it back though because by _TZE200_rmymn92d isn’t resolved yet. Glad we got it working, they’ve been working great!

Can anybody tell me how it’s possible two use more than one blind with this?

@lukask - What do you have, Zigbee blinds, RF blinds?

Essentially you need to add another Zigbee device for each blind or RF remote.