homeAssistant и wb-mrgbw-d

Получается для управления внешними системами код должен быть примерно такой:

//wb_mrgbw_d_fw_v1.js 17.05.23 test
var dimmNumber = "01" //name VIRTUAL device (this) #ChangeMe!#
var devDimmer = "wb-mrgbw-d-fw3_28" // For name REAL MRGBW-D device #ChangeMe!#
defineVirtualDevice(dimmNumber +"mrgbw-d", {
  title: dimmNumber +" MRGBW-D", //
  cells: {
   colourTemp1 : {
      type : "range",
      value : 4150, // for neutral white
      min : 2000, // warm white
      max : 6500, // cool white
      readonly: false,
      order: 5,
    },
    colourTemp2 : {
      type : "range",
      value : 4150, // for neutral white
      min : 2000, // warm white
      max : 6500, // cool white
      readonly: false,
      order: 5,
    },
  }
});

defineRule("colourTemp1_change", {
  whenChanged: dimmNumber +"mrgbw-d/colourTemp1",
  then: function (newValue, devName, cellName) {
    coolWhite = Math.round(((1000000 / dev[dimmNumber +"mrgbw-d/colourTemp1"]) - 2035) / 45);
    dev[devDimmer +"/CCT1 Temperature"] = coolWhite;
  }
});
defineRule("colourTemp2_change", {
  whenChanged: dimmNumber +"mrgbw-d/colourTemp2",
  then: function (newValue, devName, cellName) {
    coolWhite1 = Math.round(((1000000 / dev[dimmNumber +"mrgbw-d/colourTemp2"]) - 2035) / 45);
    dev[devDimmer +"/CCT2 Temperature"] = coolWhite1;
  }
});

т.е. мы создаем 2 дополнительных топика, в них внешняя система управления передает значения в майредах, после чего переданные значения пересчитываем в кельвины, линейно переводим в условные единицы WB и записываем в целевой топик.
Код рабочий, тему можно закрывать. К цветовой температуре конечно отношения не имеет, но стало возможно поправить баланс белый / желтый.