Erreur 1 wire System

Forum dédié au bus 1-Wire : connectique, intégration
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Erreur 1 wire System

Message par daniel4860 »

Bonjour,
Je comprends pas dans les log j'ai cette erreur:
Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-012062de7a94
J'ai 5 sondes DS18B20, et hier soir pour une raison que je connais pas, plus aucune valeur de température n’était indiqué.
J'ai débranché l'alimentation du raspberry, puis remise sous tension et 4 sonde me donnait à nouveau la température.
J'ai débranché la Sonde qui ne donnait aucune température et je l'ai contrôlé, elle fonctionne.
Mise hors tension du raspberry et rebranché la sonde, mise en tension du raspberry et j'ai retrouvé toutes mes températures.
Dans les log erreur:
2025-01-11 18:26:16.902 Error: Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-800000281363
2025-01-11 18:26:29.574 Error: Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-012062fb77bd
2025-01-11 18:26:30.502 Error: Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-80000004757c
2025-01-11 18:26:31.430 Error: Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-800000281363
2025-01-11 18:26:43.974 Error: Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-012062fb77bd
2025-01-11 18:26:44.869 Error: Sonde DS18B20: 1-Wire system : error reading value from /sys/bus/w1/devices/28-80000004757c
Je n'ai aucune idée de ce qu'il y a lieu de faire? Peut-être que quelqu'un a eu cette error?
Merci par avance de réponses et d'aide.
Daniel
Dernière modification par Keros le 11 janv. 2025, 20:30, modifié 2 fois.
Raison : Ajout les balises pour les logs. Merci de lire la section Bien utiliser le forum
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Modération

Message par Keros »

Sujet déplacé dans la section dédiée au 1-Wire
Bibi49
Messages : 367
Inscription : 11 mars 2018, 12:42
Localisation : 49

Re: Erreur 1 wire System

Message par Bibi49 »

Bonjour,

Tu utilise bien une alimentation indépendante pour le 1 wire ? (pas depuis les gpio)
RPI 2 -> Bullseye Lite
DomoticZ -> 2024.7
RFXCom 433E -> Pro1 1041
DongleP - Z-Stack 3.30+ (build 20240710) /Z4D 7.1.025 [7.489]
CC1101 433Mhz "Itron EverBlue Cyble"
PiTInfo v1.4
USB->ùSD = Rpi-clones
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: Erreur 1 wire System

Message par daniel4860 »

Bonjour,
Non j'utilise les gpio pour alimenter les sondes.
Cela a t'il une incidence sur les sondes ? Ou y a t'il trop de sonde ?
Sinon comment faire une alimentation extérieur et récupérer le fil de données?
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
Bibi49
Messages : 367
Inscription : 11 mars 2018, 12:42
Localisation : 49

Re: Erreur 1 wire System

Message par Bibi49 »

le problème peut avoir plusieurs sources.

la sections de fils trop petites par rapport a la longueur. (si câble PTT, double les fils d'alimentation : 2 fils pour le +3,3V et deux pour la masse)
alimentation 3,3V trop faible (a vérifier avec un voltmètre continu en "fin de ligne")
mauvaise connection (jamais eu de problème si souder a l'étain)


Tu utilise une alimentation 3,3V continu (réglable de preference) pour remplacer l'alimentation depuis le raspberry.
Tu n'aura que le GPIO 4 de branché sur le raspberry. (d'ou le noms "1 Wire") ;)
RPI 2 -> Bullseye Lite
DomoticZ -> 2024.7
RFXCom 433E -> Pro1 1041
DongleP - Z-Stack 3.30+ (build 20240710) /Z4D 7.1.025 [7.489]
CC1101 433Mhz "Itron EverBlue Cyble"
PiTInfo v1.4
USB->ùSD = Rpi-clones
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Erreur 1 wire System

Message par Neutrino »

Le GND devra être commun aussi.
J'ai eu plusieurs problèmes avec le 1-wire et un Pi3.
En baissant la resistance de pull-up ça a marché un temps avec 5 sondes et 20m de câble.
Au final, j'avais migré sur un wemos d mini et ESPeasy au lieu du Pi.
ça a résolu les problèmes.
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
fcBourgogne
Messages : 172
Inscription : 31 mars 2020, 14:22

Re: Erreur 1 wire System

Message par fcBourgogne »

Bonjour,

Si tu peux faire ce que Bibi49 préconise, doubler les brins de fils pour l'alim des sondes vérifier la tension, qui est très importante
Si elle est proche des 3V voir 2.9V se sera disfonctionnement garantie, de plus nous sommes en hiver la tension du réseau peut baisser par moment ce qui risque de se répercuter sur la tension des sondes.
J'ai actuellement 8 sondes qui tournent, 3 sur ESP8266 car elles sont vraiment trop loin et 5 sur le 1wire du PI3B+.
J'ai partiellement résolu le décrochage de la sonde la plus éloignée avec l'ajout d'un condo de 470µF sur son alim.
La plus part du temps quand une sonde est en défaut, vérifiez sa tension entre le négatif et le data vous verrez que la tension est inférieur à 2.9V en permanence, ce qui n'est pas bon elle doit être de la même tension que celle de l'alim avec oui une petite chute de tension rythmée par l'appel du PI.
Malgré tout une fois par semaine elle décroche encore mais beaucoup moins depuis le doublage des câbles puis l'ajout du condo, l'inconvénient quand une sonde décroche est que cela est empirique, à terme se seront toutes les sondes qui tombent.
Je peux aussi assurer que les perturbations électrique sur le réseau font tomber certaines sondes, exemple avec le relais de mon chauffe-eau.
J'ai ajouté un script qui surveille le décrochage d'une sonde dans le log, aussi tôt il relance le canal 1wire et tout redevient normal.
A+
Raspberry PI5+ 1WIRE + I2C +ESP8266 +esp32
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: Erreur 1 wire System

Message par daniel4860 »

Bonjour à tous
Merci pour toutes vos remarques, les câbles pour les sondes sont du multibrin de 0,75mm2, les connexions sont des bornes de connexions automatiques et la plus grandes longueur est de 15m.
Je n'ai pas mesurer en bout de ligne la tension, je le ferais quand je serais rentrer.
Par contre comment faire le script pour surveiller le décrochage des sondes et relancée le 1-wire.
Je ne programme quand blocky, je ne connais pas le LUA.
Bonne journée.
Daniel
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
fcBourgogne
Messages : 172
Inscription : 31 mars 2020, 14:22

Re: Erreur 1 wire System

Message par fcBourgogne »

Bonjour,

Mon code en lua:

Code : Tout sélectionner

--
--SURVEILANCE DES CANAUX I2C ET 1WIRE 
-- Si défaut repéré dans le log arrêt et redémarrage du canal

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
        --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
En bout de ligne près de la sonde DS18b20 ajoute un condo de 470µF sur son alim.
A+
Raspberry PI5+ 1WIRE + I2C +ESP8266 +esp32
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: Erreur 1 wire System

Message par daniel4860 »

Merci fcBourgogne du script lua pour la surveillance I2C et 1WIRE.
J'ai un peu de mal à comprendre mais je vais m'y mettre au LUA.
Je vais voir pour y mettre un condensateur en bout de ligne.
J'ai bien les 3,3v en bout de ligne, mais comme je suis en bout de ligne EDF quelque fois le 380V fluctue!!
Cordialement
Daniel
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
Répondre