Собственно был куплен DS18b20 подключен к 1-Ware успешно подхватился без дополнительных действий.
Вопрос почему он может стабильно завышает показания на +3 градуса?
Можно ли как то это настроить?
А почему вы решили, что он завышает показания?
Сравниваю показания с 3 ртутными термометрами, которые нашел поблизости.
Попробуйте поменять датчик. Всякое бывает. У меня есть датчик BME280, который в том числе и температуру измеряет, его показание на 4 градуса выше, чем других. Можете откорректировать скриптом - создаете виртуальный девайс и пишете формулу пересчета, можно с округлением.
Спасибо. Про виртуальное устройство можно ссылочку.
В качестве примера
defineVirtualDevice("Temperatures", {
title: "Temperatures",
cells: {
'Thermostat temperature' : {
type : "temperature",
value : 0
}
}
});
defineRule("Correct_room_temperature", {
whenChanged: "bht1000_12/Room Temperature",
then: function (newValue) {
dev["Temperatures"]["Thermostat temperature"] = (newValue - 1).toFixed(1);
}
});
У меня термостат имеет встроенную возможность корректировки датчика, но почему-то через модбас отдает всегда на градус больше, чем показывает на дисплее… одно слово - Китай… Вот этим скриптом я исправляю сей китайский косяк. Округлять тоже полезно, поскольку больше одного знака после запятой лишено какого-либо смысла.