NodOn SIN-4-RS-20 application

Hi homey community,

I bought a NodOn SIN-4-RS-20 few days ago and unfortunately, it’s not supported with the nodon app. So I started to implement my app and I made some progress but it’s not that easy to find ressources on homey app development.

So, I have created an app by using the clusters/Zigbee driver. For some reason, I can open my roller shutter to 100% or 0% but not an intermediate one. I’ve got this error :

2024-06-20T10:36:36.603Z [log] [ManagerDrivers] [Driver:zigbee-nodon] [Device:4e4ead3c-c19c-4a75-8c15-ece502606383] set windowcoverings_set → 0.27 (cluster: windowCovering, endpoint: 1)
2024-06-20T10:36:36.603Z [log] [ManagerDrivers] [Driver:zigbee-nodon] [Device:4e4ead3c-c19c-4a75-8c15-ece502606383] [dbg] set → `windowcoverings_set`: 0.27 → setParser → goToLiftPercentage { percentageLiftValue: 27 }
2024-06-20T10:36:36.603Z [log] [ManagerDrivers] [Driver:zigbee-nodon] [Device:4e4ead3c-c19c-4a75-8c15-ece502606383] [dbg] set windowcoverings_set → 0.27 (command: goToLiftPercentage, cluster: windowCovering, endpoint: 1), parsed payload: { percentageLiftValue: 27 }
2024-06-20T10:36:36.858Z [err] [ManagerDrivers] [Driver:zigbee-nodon] [Device:4e4ead3c-c19c-4a75-8c15-ece502606383] Error: could not perform goToLiftPercentage on cluster: windowCovering, endpoint: 1 for capability windowcoverings_set Error: FAILURE
    at WindowCovering.goToLiftPercentage (/app/node_modules/zigbee-clusters/lib/Cluster.js:1122:23)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async NodonWindowCoveringDevice._onSetCapabilityValue (/node_modules/@athombv/homey-apps-sdk-v3/lib/Device.js:167:5)
2024-06-20T10:36:36.858Z [err] [ManagerDrivers] [Driver:zigbee-nodon] [Device:4e4ead3c-c19c-4a75-8c15-ece502606383] Error: failed to set cluster capability value (capability: windowcoverings_set, cluster: windowCovering, value: 0.27) Error: Something went wrong
    at /app/node_modules/homey-zigbeedriver/lib/ZigBeeDevice.js:813:13
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async NodonWindowCoveringDevice._onSetCapabilityValue (/node_modules/@athombv/homey-apps-sdk-v3/lib/Device.js:167:5)

my device.js file is this one :

'use strict';

const { ZigBeeDevice } = require('homey-zigbeedriver');
const { CLUSTER } = require('zigbee-clusters');

class NodonWindowCoveringDevice extends ZigBeeDevice {

  async onNodeInit({ zclNode }) {
    this.enableDebug(); // only for debugging purposes
    this.printNode(); // only for debugging purposes

    // Register windowcoverings_set capability
    this.registerCapability('windowcoverings_set', CLUSTER.WINDOW_COVERING);

    this.log('Node initialized with zclNode:', zclNode);
  }
}

module.exports = NodonWindowCoveringDevice;

Can you please help me ?

Thanks,
Steven

Well if this can help anyone. By redoing the calibration of the module, I am now able to set the value to a specific % without error

I’m about to buy the Homey Pro to use the Nodon sin 4 rs 20. How can i use your app on my Homey Pro?