Tuya smart dimmer Zigbee need help with custom handlers

Hello, folks. I recently bought an amazing and cheap Chinese dimmer.

looks and feel are very nice to take a look at this video:

But of course, no handlers are working with these devices
I have some experience with this previously I have a TKB TZ35-D Dual wall dimmer, and it runs with my modified handlers. I Play with this a little, and it a lot tougher than it looks. So I need to ask a few questions

  1. How to send raw commands with the simulator I read the documentation but don’t see any information about command format ( eq if it should be a string or some numbers)

  2. I tried to read fingerprint from raw desc

    01 0104 0051 01 04 0000 0004 0005 EF00 02 0019 000A
    Profile id:0104
    OutClusters:0019 000A
    InClusters 0000 0004 0005 EF00

Can someone validate if I’m correct or there is some better way to extract a fingerprint?

  1. Unfortunately device don’t understand any commands because it looks like information on what to do is in the data object

     /**
      *ON
      *  [raw:0104 EF00 01 01 0000 00 75F9 01 00 0000 01 01 00010101000101,
      *  profileId:0104, clusterId:EF00, sourceEndpoint:01, destinationEndpoint:01, options:0000, messageType:00,
      *  dni:75F9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01,
      *  data:[00, 01, 01, 01, 00, 01, 01], clusterInt:61184, commandInt:1]
      *
      *OFF
      *   [raw:0104 EF00 01 01 0000 00 75F9 01 00 0000 01 01 00010101000100,
      *   profileId:0104, clusterId:EF00, sourceEndpoint:01, destinationEndpoint:01, options:0000, messageType:00,
      *   dni:75F9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01,
      *   data:[00, 01, 01, 01, 00, 01, 00], clusterInt:61184, commandInt:1]
      *
      *Dimmer
      *  [raw:0104 EF00 01 01 0000 00 75F9 01 00 0000 01 01 00010202000400000334,
      *  profileId:0104, clusterId:EF00, sourceEndpoint:01, destinationEndpoint:01, options:0000, messageType:00,
      *  dni:75F9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01,
      *  data:[00, 01, 02, 02, 00, 04, 00, 00, 03, 34], clusterInt:61184, commandInt:1]
      *
      *  [raw:0104 EF00 01 01 0000 00 75F9 01 00 0000 01 01 000102020004000001CC,
      *  profileId:0104, clusterId:EF00, sourceEndpoint:01, destinationEndpoint:01, options:0000, messageType:00,
      *  dni:75F9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01,
      *  data:[00, 01, 02, 02, 00, 04, 00, 00, 01, CC], clusterInt:61184, commandInt:1]
      *
      *  [raw:0104 EF00 01 01 0000 00 75F9 01 00 0000 01 01 00010202000400000064,
      *  profileId:0104, clusterId:EF00, sourceEndpoint:01, destinationEndpoint:01, options:0000, messageType:00,
      *  dni:75F9, isClusterSpecific:true, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01,
      *  data:[00, 01, 02, 02, 00, 04, 00, 00, 00, 64], clusterInt:61184, commandInt:1]
      * */
    

I’m able to turn on and off the device, but the set level always set to 100

It looks like this is some stupid mistake, but I cannot figure out what is wrong. Can someone take a look into this?