вопрос в том, что параметр “word_order” : “little_endian” меняет порядок слов, а мне надо поменять порядок байт, такого параметра не предусмотрено для шаблона?
Само значение с прибора в каком формате считывать?
По идее надо читать DWORD переставлять байты потом преобразовывать DWORDtoFLOAT
Но в драйвере нет возможности читать ни DWORD ни WORD
В качестве резюме:
1.В драйвере все-же надо сделать свап байтов little/big endian
2.Очень ущербный джаваскрипт в движке правил и нет документации по нему нормальной
Я в итоге решил вопрос баш скриптом, котрый вашим же modbus_client_rpc читает 2 слова, комбинирует их в DWORD далее свапает байты, конвертит в 32 бит флоат и публикует в MQTT
На основной странице документации wb-rules сказано:
Для написания правил необходимы базовые знания синтаксиса языка JavaScript с учетом особенностей ECMAScript 5. Если вы ранее не работали с JavaScript, то рекомендуем учебник learn.javascript.ru.
Каждое правило представляет собой функцию на языке JavaScript с определенным набором входных параметров. Выполнение правила происходит при наступлении заданного события или циклически. Подробное описание типов правил и механизма их работы читайте в документации на Github.