Page 1 sur 2
sondes DS18B20 qui passent à 0°
Publié : 28 mai 2025, 13:25
par patatrak
Bonjour,
Je tourne depuis des années avec 13 sondes DS18B20 sur mon bus 1Wire sur GPIO (Raspi PI3B)
Tout fonctionne bien cependant chroniquement (environ 1 fois par mois) il y a plantage du bus et toutes mes sondes se bloquent à 0°.
La seule solution pour faire repartir le bus c'est de rebooter la raspi en coupant également l'alim des sondes sur le bus (je suis câblé en 3 fils avec une alim séparée pour alimenter les sondes)
Quelqu'un a t-il rencontré ce problème?
Merci
Re: sondes DS18B20 qui passent à 0°
Publié : 29 mai 2025, 08:13
par fcBourgogne
Bonjour,
Tu n"es pas le seul avec ce problème.
Il y a tellement d'éléments qui rentrent en ligne de compte que la solution risque de devenir une véritable quête.
Pour ma part et comme tu peux le voir, je suis avec beaucoup d'attention ce sujet.
J'ai essayé beaucoup de techniques pour essayer d'y remédier, mais chez moi aussi ça décroche de temps en temps et comme j'ai également le canal I2C en fonction, quand un élément plante la plus part du temps ça devient empirique et les deux canaux deviennent HS.
Alors, comme tu l'as dit, le fait de redémarrer le pi, ça fonctionne à nouveau, mais combien de temps?
Donc après avoir contrôlé toutes les tensions, chaque sonde, les températures anormales, les signaux, je me suis résigné à faire un script qui surveille les canaux et les redémarre au cas ou.
Regarde ce sujet
https://easydomoticz.com/forum/viewtopic.php?t=14272
A+
Re: sondes DS18B20 qui passent à 0°
Publié : 29 mai 2025, 16:57
par patatrak
Bonjour,
merci de la réponse
Je pensais à une sonde merdouilleuse qui planterait le bus de temps à autre mais malgré en avoir plein les tiroirs je trouvais fastidieux de les changer une à une et de surcroit en perdant l'historique des températures.
pour ma part je me suis fait des alertes push sur mon téléphone au cas où les sondes passe à 0 et branché le pi sur une prise tuya de manière à pouvoir le rebooter à distance. reboot violent oui mais j'ai remarqué qu'un redémarrage logiciel ne suffisait pas.
Maintenant que je sais que le problème ne vient pas de mon install çà me rassure.
Je n'ai pas le temps dans l'immédiat mais si tu as fait un reboot automatique çà m'intéresse.
merci
Re: sondes DS18B20 qui passent à 0°
Publié : 29 mai 2025, 19:38
par fcBourgogne
Le code en Lua, Trigger "All", redémarrage uniquement des canaux 1-wire et I2C, pas de reboot total.
Code : Tout sélectionner
commandArray = {}
-- Chemin du fichier log de Domoticz
local logFilePath = "/tmp/domoticz.txt"
-- Fonction pour lire la dernière ligne d'un fichier
local function readLastLine(filename)
local file = io.open(filename, "r")
if not file then return nil end
local lastLine
for line in file:lines() do
lastLine = line
end
file:close()
return lastLine
end
-- Lire la dernière ligne du fichier log
local lastLogLine = readLastLine(logFilePath)
-- Vérifier que la dernière ligne n'est pas nil
if lastLogLine then
-- Vérifier la présence de l'erreur "Error: I2C"
if string.find(lastLogLine, "Error: I2C") then
-- Arrêt du canal I2C
os.execute("sudo modprobe -r i2c-dev")
commandArray['SendNotification']='subject#Défaut canal I2C.#0'
-- Afficher un message dans la console
print('Canal I2C arrêt suite à l\'erreur.')
-- Pause de 5 secondes
os.execute("sleep 2")
-- Redémarrer le canal I2C
os.execute("sudo modprobe i2c-dev")
-- Afficher un message dans la console
print('Canal I2C redémarré suite à l\'erreur.')
end
-- Vérifier la présence de l'erreur "Error: Wire1"
if string.find(lastLogLine, "Error: Wire1") then
commandArray['SendNotification']='subject#Défaut bus 1-wire.#0'
--Arrêt du canal w1-gpio
os.execute("sudo modprobe -r w1-gpio")
-- Afficher un message dans la console
print('Canal W1 arrêt suite à l\'erreur.')
-- Pause de 5 secondes
os.execute("sleep 1")
-- Redémarrage du canal W1
os.execute("sudo modprobe w1-gpio")
print('Canal W1 redémarré suite à l\'erreur.')
-- Pause de 5 secondes
os.execute("sleep 2")
end
else
print('Le fichier log est vide ou inaccessible.')
end
return commandArray
Bien entendu il faut activer la ligne
qui se trouve dans certainement /etc/init.d/domoticz.sh
Le script se contente de lire la dernière du fichier /tmp/domoticz.txt, et si il y a "Error: I2C" redémarrage du canal et envoi d'une notification, idem pour 1-wire
A+
Re: sondes DS18B20 qui passent à 0°
Publié : 30 mai 2025, 08:31
par patatrak
Salut fcBourgogne
J'espère avoir un moment ce soir pour tester ton script. Moi je n'utilise pas l'i2c je me contenterais de la partie W1
Est ce que chez toi le reboot logiciel suffit pour relancer le bouzin?
Re: sondes DS18B20 qui passent à 0°
Publié : 30 mai 2025, 11:32
par fcBourgogne
Bonjour,
Est ce que chez toi le reboot logiciel suffit pour relancer le bouzin?
Oui tant que ce n'est un défaut matériel persistant, comme une sonde HS qui perturbe le canal, ça redémarre.
Tiens un exemple:
2025-05-30 02:03:02.964 Error: Wire1: 1-Wire system : error reading value from /sys/bus/w1/devices/28-01211363b23b
2025-05-30 02:03:04.146 Status: LUA: Canal W1 arrêt suite à l'erreur.
2025-05-30 02:03:05.209 Status: LUA: Canal W1 redémarré suite à l'erreur.
2025-05-30 02:03:07.215 Status: EventSystem: Script event triggered: LogEyesI2C&1Wire
Et là pour la déconnexion j'en connais la raison, il y a du avoir une transmission de données d'une sonde pendant l'arrêt d'un chauffe-eau, qui est justement programmé à cette heure précise, 02h03h04s, la coupure du chauffe-eau a occasionnée des parasites dans tout le réseau électrique de la maison.
A+
Re: sondes DS18B20 qui passent à 0°
Publié : 30 mai 2025, 15:29
par patatrak
Salut bien
Bon j'ai mis en place toute ta procédure
Reste à attendre que le bug arrive.
Je manquerais pas de te faire un retour
Merci à toi
Re: sondes DS18B20 qui passent à 0°
Publié : 10 juin 2025, 10:25
par supeve
J'en ai 6 branché sur un ESP32 sous espeasy, j'avais des plantage comme vous, en baissant la résolution je n'ai plus de plantage.
Re: sondes DS18B20 qui passent à 0°
Publié : 15 juin 2025, 09:47
par patatrak
Salut fcBourgogne
J'ai eu un plantage ce matin à 9h et il n'y a pas eut de relance du bus et pour cause en regardant le log de domoticz(domoticz.txt) il n'y a pas eut d'erreur.
Ce qui est bizarre en outre c'est que nous sommes le 15/06 et que le dernier évènement date du 11/06
????
Re: sondes DS18B20 qui passent à 0°
Publié : 15 juin 2025, 09:49
par patatrak
Salut supeve
Où as-tu réglé la résolution des sondes?