Capteur de température précis

Oui, avec un dongle USB comme celui-ci domotique-store.fr - La domotique au meilleur prix, le service en plus ! - www.domotique-store.fr

C’est possible aussi avec un RPi directement sur le port GPIO (sans dongle USB) et une simple résistance de « pull up », mais je ne recommande pas. À la rigueur pour une seule sonde à côté du Pi, ça peut aller mais pour plusieurs sondes sur des grandes longueurs, c’est trop risqué. En cas de court-circuit du bus 1-Wire, c’est le RPi qui ramasse.

Coté soft, l’utilitaire owserver fait le boulot simplement.

Comme le plugin 1-Wire n’existe plus, il faut passer par le plugin Script pour récupérer les valeurs.

Dans le script temperature_DS18B20.sh qui est exécuté toutes les minutes, il prend comme argument le numéro de série de la sonde 28.XXXXXX000080

#!/bin/bash
device=$1

#echo -n $(owread /$1/temperature)
value=`(owread /$device/temperature 2>&1 | tee)`
error="ServerRead: Data error on /$device/temperature"

if [ "$value" == "$error" ]
then
    echo -n 85
else
    echo -n $value
fi

En cas d’erreur (sonde qui ne répond pas), le script retourne une valeur de 85°C

Puis dans la Configuration de la commande, il faut interdire la valeur 85°C


Ainsi, ne sont rafraîchies que des bonnes valeurs
Penser à rajouter une alerte si pas de nouvelle valeur depuis X minutes.

Aujourd’hui, je passe par Node-Red qui a un Add-on pour interroger directement OW Server, puis j’exporte en MQTT et enfin j’importe dans Jeedom via le plugin JMQTT