Задам (Повторю) ещё один вопрос. Почему такое разное поведение у датчиков MSW-V4 и V3 при настройках по умолчанию?
Для анализа проблем с датчиками существует специальный топик meta/error. Делать публикацию - это какой-то совершенно ненужный костыль.
А, то есть костыль нужен для работы стороннего ПО, разработчики которого не смогли читать специально предназначенный топик. Теперь понятно.
Что именно в поведении кажется странным. Возможно - я не понимаю Я вижу значение, температуру, которую отдает устройство. Но что именно в этой температуре “не так” - не пойму.
Костыль мне совсем не нравится, так как, полагаю нагрузит контроллер записью всех показаниями, которые не изменяются. Надеюсь что он временный, так как:
Разработчики сервиса Шлюз MQTT - SmartWeb - команда Wirenboard. Если Ваша команда официально поддерживает этот сервис - то очень рассчитываю что либо изменится логика интеграции или с Вашей стороны будут проведены переговоры с разработчиком оборудования, которые приведут всё к правильной интерпретации показаний датчиков.
Вопрос как отдаёт: Привожу графики с MSW-V4, M1W2 и MSW-V3. MSW-V4 отдаёт показания с чётким интервалом времени. абсолютно всегда.
Видите разницу в интервалах?
И проблемы со сторонним оборудованием именно с msw-v4 нет вообще.
Еще раз напишу: публикация происходит при изменении значения.
Если значение меняется - то публикация происходит. Если у значения меньшая дискретность - то изменения происходят чаще. На WB-MSW v4 дискретность - сотая.
Подскажите пожалуйста, чем ограничены msw-v3 и m1w2 что у него в шаблоне дискретность не сотая а десятая?
Если ничем, то можно ли инициировать изменение стандартного шаблона (чтобы не помнить всегда самому что он у меня особенный) для старого датчика, чтобы показания с разных датчиков были идентичны?
- ну и чтобы у Вас были шаблоны и поведение датчиков единообразные.
Уверен, всем пойдёт на пользу
Достаточно включить опрос канала “Температура (высокое разрешение)” для WB-MSW v3.
Для WB-MS v2 такой возможности нет.
Подскажите пожалуйста, в чём измеряется дискретность?
Дискретность - это “цена” минимального изменения параметра. Для WB-MS v2 это 0,1С.
И про это - отлично написано в документации.
Для сервиса MQTT-Smartweb для msw-v3 пробросил показания Температура (высокое разрешение). По этим датчикам проблема ушла. С датчиками в полу - соответственно проблема осталась
Остались вопросы:
- Объясните мне пожалуйста зачем для разных датчиков в шаблонах используют разную дискретность? Это техническое ограничение датчика или просто разные люди с разными мыслями делали шаблоны и сейчас лениво их исправлять?
- Повторю вопрос. Как можно Вас (Wirenboard support team) побудить сделать одинаково, чтобы и вопросов не было и поведение оборудования было предсказуемым и граблей не было?
- Что можно сделать с M1W2?
- Если всё таки по какой-то причине у команды нет желания приводить шаблоны к общему знаменателю - что необходимо сделать чтобы эти нюансы с датчиками wb-msw-v3 и m1wa оказались описаны в документации к официально разрабатываемой именно командой wirenboard интеграции MQTT-Smartweb?
Убедительно прошу пригласить к обсуждению Дегтярёва А.А., как руководителя отдела интеграции, в ведении которого, вероятно этот сервис
Аппаратно разные датчики. Для более ранних - нет возможности использовать более точные показания.
Сделать “одинаково” - что? Разные аппаратно устройства?
Поведение каждого полностью описано в документации, оно ей соответствует. Если не соответствует - тогда мы, конечно исправляем ПО, устройства.
Для вновь выпускаемых устройств - да, разработчики стараются использовать одинаковые наименования параметров.
И еще раз - все отдаваемые устройствами параметры - подробнейшим образом описаны в их таблицах регистров.
Берем документацию к GitHub - wirenboard/wb-mqtt-smartweb: Wiren Board MQTT SmartWeb driver
Что в ней является не соответствующим работе шлюза? Точнее - что нужно описать? Шлюз работает именно так как он описан - передает значения в шину и из нее. Если поведение не соответствует документации - будет исправлено.
За всю тему я не увидел, к сожалению ни одной ошибки. Я просто цитировал документацию, где есть ответы на заданные вопросы и пересказывал ее.
Обязательно приглашу когда появится.
Проблема не решена.
Спасибо большое за разъяснение. Не нашёл в документации на датчик wb-msw v4 и v3 что изменился TH. В wiki написано что изменился только корпус. В ревизиях написано что аппаратно менялись в основном VOC. Можете, если не сложно, и не тайна, ткнуть?
Также возникает вопрос: Режим “Высокое разрешение” в msw-v3 обходит технические ограничения датчика TH?
В документации на гитхабе полностью отсутствует информация какие настройки со стороны wirenboard необходимо ставить в настройках сервиса MQTT-SmartWeb поддерживаемой командой интеграции. в Wiki wirenboard также отсутствует. А банально такие нюансы с датчиками разных поколений были бы очень полезны. Если необходимо - готов потратить время и поучаствовать в написании документации в wiki
Дико извиняюсь, ткните пожалуйста, так как исходя из этого ответа так и не понятно поведение датчика. Например исходя из этого графика:
в 09:42 датчик зарегистрировал температуру 21.3125. потом не регистрировал больше часа. потом зарегистрировал 21.3125. Почему он её зарегистрировал если изменения температуры не было?
Затем с 10:31 датчик начинает каждые 2 минуты отдавать температуру 21.3125, которая так-же не меняется. Пока, исходя из Ваших пояснений - поведение датчика всё ещё мне кажется странным.
Посоветуйте пожалуйста, какие ещё настройки можно изменить со стороны wb, чтобы датчик отдавал данные чаще постоянно. Применительно точечно к датчикам или группам датчиков, чтобы не забивать данными неизменившихся значений со всех serial устройств?
Опишите пожалуйста проблему. То есть поведение которое расходится с документацией или логикой.
Нет, не менялся. Но для MSW v4 включен опрос 0x04 по-умолчанию.
И ссылку уже давал:
Необходимо - для чего? В каждом конкретном случае настройки могут быть разные. В зависимости от решаемой задачи, конечно. Нет смысла описывать частные случаи.
Вот это - да, скорее всего будет очень полезно.
Для этого достаточно зарегистрироваться в wiki, “Создать учетную запись”.
Мне кажется что линия графика непараллельна оси X. И на взгляд - в начале (9:42) температура меньше чем в 10:19.
Там видно дельту. Значит - температура между точками записи менялась, но на момент записи была именно записанной.
Описать требуемые данные виртуальным устройством и по факту обновления “источника” - обновлять, параллельно (пере)запуская таймер. По таймеру - тоже обновлять, проверяя заодно не в состоянии ли ошибки источник. Это типовой путь.