Your comments

Нет, просто перенести имя фидбэка в кавычки, "16534" тоже должно работать, если фидбэк так называется

Channel_Feedback 16406

это было имя feedback'а, для Item'ов добавлять не надо

только должно быть верное имя feedback'а в сравнении

name=="abcde 16534"

по ссылке выше моем комментарии

IR.AddListener(IR.EVENT_TAG_CHANGE, IR.GetDevice("Modbus TCP")), function(name, value) 
{  
  IR.Log(" Name: " + name + " Value: " + value);
  if (name=="Channel_Feedback 16406") {
    var high = ((value >> 8) & 0xff);
    var low = value & 0xff;        
    IR.Log(value + " h: " + high + " l: " + low);
    //dev.Set("Channel_Command 16406", value );
  }
});

если не по событию

var dev=IR.GetDevice("Modbus TCP");
var value=dev.GetFeedback("Channel_Feedback 16406");

https://stackoverflow.com/questions/29712951/how-to-convert-two-8-bits-to-16-bits-and-vice-versa-in-javascript

    var firstNumber = 1118; // extracted from Uint16Array
    var high = ((firstNumber >> 8) & 0xff);
    var low = firstNumber & 0xff;
    IR.Log(high + ", "+ low); // 94, 4
    var _firstNumber = (((high & 0xff) << 8) | (low & 0xff));
    IR.Log(_firstNumber); // 1118

Получение и отправка данных драйвера уже была описана http://support.iridiummobile.net/topics/13550-bitovaya-maska-modbus-tcp/#comment-81283

Что такое "два разных дисплея"?

Issue still actual?


Please describe the system in more detail which devices are used.

Send the project to support@iridiummobile.ru

Arjan, have you solved your task?

Руслан, тут скорее сложность в формулировке задачи: Вы спросили как округлить число - Вам ответили.


СКАЧАЙТЕ пример для Level, поменяйте свойство Range Type на Float


IR.AddListener(IR.EVENT_TAG_CHANGE, IR.GetDevice("Mobdus OVEN"), function(name, value) 
{  
    IR.Log(name+": "+value); //
    if (name=="Tem1")
    {
      var calc = Math.round(value*100)/100;
      IR.Log("From OVEN " + calc);
      IR.SetVariable("Global.level", calc);
    }
    
}); IR.AddListener(IR.EVENT_START,0,function()
{
   //IR.SetVariable("Global.level", 23.123765);
   IR.SubscribeTagChange("Global.level");
});
IR.SetGlobalListener(IR.EVENT_GLOBAL_TAG_CHANGE, function(name, value)
{  
   if (name == "Global.level")
   {
      var calc = Math.round(value*100)/100;
      IR.Log("To OVEN" + calc);
      IR.GetDevice("Mobdus OVEN").Set("ust_GVS", calc)
   }
});

Вам уже писали, читайте больше документации


Первый вариант "По индивидуальным событиям": рисуем элемент Level (ползунок, имя тут - "Level Landscape 0 - 1")

В редакторе скриптов:

IR.AddListener(IR.EVENT_START,0,function()
{
   var litem = IR.GetPage("Page 1").GetItem("Level Landscape 0 - 1");
   IR.AddListener(IR.EVENT_ITEM_PRESS,litem,lvl,litem);
   IR.AddListener(IR.EVENT_MOUSE_MOVE,litem,lvl,litem);
   IR.AddListener(IR.EVENT_ITEM_RELEASE,litem,lvl,litem);
});
function lvl() {
   var calc = Math.round(this.Value*100)/100;
   IR.Log(calc);
   //IR.SetVariable("Tokens.test", calc);
}

Второй вариант "Черех глобальный слушатель":

IR.AddListener(IR.EVENT_START,0,function()
{
   IR.SubscribeTagChange("UI.Page 1.Level Landscape 0 - 1.Value"); 
});
IR.SetGlobalListener(IR.EVENT_GLOBAL_TAG_CHANGE, function(name, value)
{  
   if (name == "UI.Page 1.Level Landscape 0 - 1.Value")
   {
      var calc = Math.round(value*100)/100;
      IR.Log(calc);
      //IR.SetVariable("Tokens.test", calc);
   }
});