# Probleme capteur DS18B20

**URL:** <https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806>\
**Category:** Français\
**Created:** [August 13, 2022, 10:07am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806 "2022-08-13T10:07:28Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 13, 2022, 10:07am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/1 "2022-08-13T10:07:28Z")

</div>

Bonjour,  
je viens de faire une installation comportant un capteur de température.  
Tout fonctionnait il y a deux jours mais depuis la température reste bloquée sur -127°c. J'ai lu sur plusieurs sites que c'est un problème de connexion mais je n'arrive pas à déterminer d'où ça vient.  
Pouvez vous m'aider ?  
Merci

 ![IMG_4766.HEIC](https://europe1.discourse-cdn.com/arduino/original/4X/9/7/1/97147ca63465272529b14f2286f1cda753a69ba0.jpeg)

[Temperature.ino](https://forum.arduino.cc/uploads/short-url/7hUJpZaZqTLlxEBl0nbV2RxKSBq.ino) (1,5 Ko)

---

<div class="post-metadata">

**Author:** ![GolamMostafa](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/golammostafa/32/239011_2.png) [@GolamMostafa](https://forum.arduino.cc/u/GolamMostafa)\
**Post date:** [August 13, 2022, 10:14am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/2 "2022-08-13T10:14:03Z")

</div>

-127 comes usually when there is a connection problem.

Put the legs of the DS18B20 sensor directly on the breadboard. Put a 4.7k or close resistor across data line and Vcc line. Use three short jumpers to bridge the sensor with UNO. And then upload your sketch.

And please, post in English.

---

<div class="post-metadata">

**Author:** ![d\_jo](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/d_jo/32/732807_2.png) [@d\_jo](https://forum.arduino.cc/u/d_jo)\
**Post date:** [August 13, 2022, 10:17am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/3 "2022-08-13T10:17:04Z")

</div>

Bonjour, sur la photo le fil jaune du DS18B20 n'est pas sur la même "ligne commune" que le fil jaune qui vient de l'arduino.

![image](https://europe1.discourse-cdn.com/arduino/original/4X/c/5/f/c5f596af09383314b4abeaae81bbb8492930b5e3.png)

---

<div class="post-metadata">

**Author:** ![red\_car](https://avatars.discourse-cdn.com/v4/letter/r/b77776/32.png) [@red\_car](https://forum.arduino.cc/u/red_car)\
**Post date:** [August 13, 2022, 10:35am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/4 "2022-08-13T10:35:24Z")

</div>

> [@GolamMostafa](#):
>
> And please, post in English.

French seems appropriate...

 ![image](https://europe1.discourse-cdn.com/arduino/original/4X/b/7/9/b796d4361a06fe75fe65b2cc8b9107e49fd8df39.png)

@axou Il ne semble pas que le capteur soit réellement connecté ... essayez de déplacer le fil jaune du capteur vers ici ...

 ![image](https://europe1.discourse-cdn.com/arduino/original/4X/5/2/2/52276bf0f5a4a15f2bd68fdffad71f62c36323fc.jpeg)

---

<div class="post-metadata">

**Author:** ![GolamMostafa](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/golammostafa/32/239011_2.png) [@GolamMostafa](https://forum.arduino.cc/u/GolamMostafa)\
**Post date:** [August 13, 2022, 10:45am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/5 "2022-08-13T10:45:40Z")

</div>

> [@red\_car](#):
>
> French seems appropriate...

What is the official language of Arduino Forum -- is it not English?

---

<div class="post-metadata">

**Author:** ![red\_car](https://avatars.discourse-cdn.com/v4/letter/r/b77776/32.png) [@red\_car](https://forum.arduino.cc/u/red_car)\
**Post date:** [August 13, 2022, 10:47am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/6 "2022-08-13T10:47:07Z")

</div>

> [@GolamMostafa](#):
>
> is it not English?

Not in the French section of the forum.

---

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 14, 2022, 9:28am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/7 "2022-08-14T09:28:48Z")

</div>

I don't know whether I have to post in french or in english but I found the solution.  
I didn't understand the way the breadboard worked. I thought it was the same potential on the line but no it's cut in the middle.  
So thank you everybody for all your advice.  
And sorry for my english 😊

---

<div class="post-metadata">

**Author:** ![red\_car](https://avatars.discourse-cdn.com/v4/letter/r/b77776/32.png) [@red\_car](https://forum.arduino.cc/u/red_car)\
**Post date:** [August 14, 2022, 9:42am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/8 "2022-08-14T09:42:42Z")

</div>

> [@axou](#):
>
> I thought it was the same potential on the line but no it's cut in the middle.

Yes... That's why I said to connect here... 🙂

Oui... C'est pourquoi j'ai dit de se connecter ici... 🙂

 ![image](https://europe1.discourse-cdn.com/arduino/original/4X/e/c/9/ec92010b5b1508e41e71da584028eaf3f1377992.jpeg)

---

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 16, 2022, 3:08pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/9 "2022-08-16T15:08:21Z")

</div>

I have another problem. When i connect more than one captor the "127°C" appears again.

 ![pb.HEIC](https://europe1.discourse-cdn.com/arduino/original/4X/2/5/1/251c9a4d86a5dbf006ac00a8c9e6d56a9d7abffa.jpeg)  
Envoi en cours : 3\_capteurs.ino…

---

<div class="post-metadata">

**Author:** ![fdufnews](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/fdufnews/32/238836_2.png) [@fdufnews](https://forum.arduino.cc/u/fdufnews)\
**Post date:** [August 16, 2022, 4:51pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/10 "2022-08-16T16:51:23Z")

</div>

Dans la partie principale du forum on échange en anglais, dans la partie internationale du forum on échange dans la langue des pays concernés.  
Ici, on est sur la partie International/Français du forum donc on écrit en français.  
Je pense que c'est clair. Et cela évitera les échange en charabia franglais.

@axou ce serait bien de lire les bonnes pratiques du forum francophone et de les appliquer.

> [@Les bonnes pratiques du Forum Francophone](https://forum.arduino.cc/t/les-bonnes-pratiques-du-forum-francophone/861014):
>
> frwarning QUELQUES RÈGLES SIMPLES À LIRE IMPÉRATIVEMENT AVANT DE POSTER warning Elles faciliteront la vie de tous et contribueront à rendre votre expérience la plus enrichissante possible. Bienvenue !!! Vous rejoignez une communauté : nous incitons très fortement les nouveaux arrivants sur la partie francophone à rédiger [dans ce fil de discussion](https://forum.arduino.cc/t/presentez-vous/96822/10000) une rapide présentation personnelle. Aidez nous à vous aider : les réponses qui sont faites sur le forum francophone arduino sont majorit…

Ta photo c'est bien, mais il faudrait aussi le code que tu utilises pour que l'on puisse t'aider.

---

<div class="post-metadata">

**Author:** ![red\_car](https://avatars.discourse-cdn.com/v4/letter/r/b77776/32.png) [@red\_car](https://forum.arduino.cc/u/red_car)\
**Post date:** [August 16, 2022, 8:23pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/11 "2022-08-16T20:23:53Z")

</div>

Merci de poster votre code.

---

<div class="post-metadata">

**Author:** ![red\_car](https://avatars.discourse-cdn.com/v4/letter/r/b77776/32.png) [@red\_car](https://forum.arduino.cc/u/red_car)\
**Post date:** [August 16, 2022, 8:58pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/12 "2022-08-16T20:58:19Z")

</div>

Essayez ce code pour plusieurs capteurs.

```cpp
#include <OneWire.h>
#include <DallasTemperature.h>

// Data wire is plugged into digital pin 7 on the Arduino
#define ONE_WIRE_BUS 7

// Setup a oneWire instance to communicate with any OneWire device
OneWire oneWire(ONE_WIRE_BUS);	

// Pass oneWire reference to DallasTemperature library
DallasTemperature sensors(&oneWire);

int deviceCount = 0;
float tempC;

void setup(void)
{
  sensors.begin();	// Start up the library
  Serial.begin(9600);
  
  // locate devices on the bus
  Serial.print("Locating devices...");
  Serial.print("Found ");
  deviceCount = sensors.getDeviceCount();
  Serial.print(deviceCount, DEC);
  Serial.println(" devices.");
  Serial.println("");
}

void loop(void)
{ 
  // Send command to all the sensors for temperature conversion
  sensors.requestTemperatures(); 
  
  // Display temperature from each sensor
  for (int i = 0; i < deviceCount; i++)
  {
    Serial.print("Sensor ");
    Serial.print(i+1);
    Serial.print(" : ");
    tempC = sensors.getTempCByIndex(i);
    Serial.print(tempC);
    Serial.print((char)176);//shows degrees character
    Serial.print("C | ");
    Serial.print(DallasTemperature::toFahrenheit(tempC));
    Serial.print((char)176);//shows degrees character
    Serial.println("F");
  }
  
  Serial.println("");
  delay(1000);
}

```

---

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 17, 2022, 5:02pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/13 "2022-08-17T17:02:47Z")

</div>

Merci pour vos conseils. Il faudrait donc l'expliquer parce qu'on m a demandé d'écrire en anglais

---

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 17, 2022, 5:10pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/15 "2022-08-17T17:10:07Z")

</div>

[3\_capteurs.ino](https://forum.arduino.cc/uploads/short-url/uSLKn93RQON5dmtpNDgb7JlRDXP.ino) (2,3 Ko)  
Voici le code il ne s'était pas envoyé dsl

---

<div class="post-metadata">

**Author:** ![dfgh](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/dfgh/32/220368_2.png) [@dfgh](https://forum.arduino.cc/u/dfgh)\
**Post date:** [August 17, 2022, 6:03pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/16 "2022-08-17T18:03:01Z")

</div>

ton code

```cpp
/**
   Mesures de températures avec deux capteurs DS18B20 sur un même bus 1-Wire.
*/

#include <OneWire.h>
#include <DallasTemperature.h>

/* Broche du bus 1-Wire */

#define ONE_WIRE_BUS 7 // Broche numérique 7, à modifier si nécessaire

/* Création de l'objet OneWire et sensors */

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

/* Adresses des capteurs de température */

DeviceAddress thermometre_1 = {0x28, 0x44, 0x62, 0x79, 0x97, 0x05, 0x03, 0x51}; // courbe bleue
DeviceAddress thermometre_2 = {0x28, 0xE1, 0x37, 0x79, 0x97, 0x08, 0x03, 0x28}; // courbe rouge
DeviceAddress thermometre_3 = {0x28, 0x3E, 0xAE, 0x42, 0x0B, 0x00, 0x00, 0x57}; // courbe verte
/* résolution */

int resolution = 12; // nombre de bits
/*
  9 bits 0.5 °C 93.75 ms
  10 bits 0.25 °C 187.5 ms
  11 bits 0.125 °C 375 ms
  12 bits 0.0625 °C 750 ms */

/* Pour faire des mesures à intervalle régulier */

unsigned long tempsPrecedent = 0;
float intervalle = 1000; // durée entre deux mesures en ms (à modifier si nécessaire)

void setup() {

  Serial.begin(115200); // choix de la vitesse

  sensors.begin();
  sensors.setResolution(thermometre_1, resolution);
  sensors.setResolution(thermometre_2, resolution);
  sensors.setResolution(thermometre_3, resolution);

}

void loop() {
  unsigned long tempsCourant = millis(); // cette variable contient le nombre de millisecondes depuis que le programme courant a démarré.

  if (tempsCourant - tempsPrecedent >= intervalle) {
    tempsPrecedent = tempsCourant;

    /* Demande la température aux capteurs */

    sensors.requestTemperatures();
    float temperature_1 = sensors.getTempC(thermometre_1); // obtenir la température 1 en degré
    float temperature_2 = sensors.getTempC(thermometre_2); // obtenir la température 2 en degré
    float temperature_3 = sensors.getTempC(thermometre_3); // obtenir la température 3 en degré

    /* envoie les températures sur la liaison série */

    Serial.print(temperature_1, 1);
    Serial.print(","); // les données sont séparées par des virgules.
    Serial.print(temperature_2, 1);
    Serial.print(","); // les données sont séparées par des virgules.
    Serial.print(temperature_3, 1);
    Serial.println();

  }
}

```

---

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 19, 2022, 7:32am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/17 "2022-08-19T07:32:33Z")

</div>

> [@dfgh](#):
>
> ```arduino
> /**
> Mesures de températures avec deux capteurs DS18B20 sur un même bus 1-Wire.
> */
> 
> #include <OneWire.h>
> #include <DallasTemperature.h>
> 
> /* Broche du bus 1-Wire */
> 
> #define ONE_WIRE_BUS 7 // Broche numérique 7, à modifier si nécessaire
> 
> /* Création de l'objet OneWire et sensors */
> 
> OneWire oneWire(ONE_WIRE_BUS);
> DallasTemperature sensors(&oneWire);
> 
> /* Adresses des capteurs de température */
> 
> DeviceAddress thermometre_1 = {0x28, 0x44, 0x62, 0x79, 0x97, 0x05, 0x03, 0x51}; // courbe bleue
> DeviceAddress thermometre_2 = {0x28, 0xE1, 0x37, 0x79, 0x97, 0x08, 0x03, 0x28}; // courbe rouge
> DeviceAddress thermometre_3 = {0x28, 0x3E, 0xAE, 0x42, 0x0B, 0x00, 0x00, 0x57}; // courbe verte
> /* résolution */
> 
> int resolution = 12; // nombre de bits
> /*
> 9 bits 0.5 °C 93.75 ms
> 10 bits 0.25 °C 187.5 ms
> 11 bits 0.125 °C 375 ms
> 12 bits 0.0625 °C 750 ms */
> 
> /* Pour faire des mesures à intervalle régulier */
> 
> unsigned long tempsPrecedent = 0;
> float intervalle = 1000; // durée entre deux mesures en ms (à modifier si nécessaire)
> 
> void setup() {
> 
> Serial.begin(115200); // choix de la vitesse
> 
> sensors.begin();
> sensors.setResolution(thermometre_1, resolution);
> sensors.setResolution(thermometre_2, resolution);
> sensors.setResolution(thermometre_3, resolution);
> 
> }
> 
> void loop() {
> unsigned long tempsCourant = millis(); // cette variable contient le nombre de millisecondes depuis que le programme courant a démarré.
> 
> if (tempsCourant - tempsPrecedent >= intervalle) {
> tempsPrecedent = tempsCourant;
> 
> /* Demande la température aux capteurs */
> 
> sensors.requestTemperatures();
> float temperature_1 = sensors.getTempC(thermometre_1); // obtenir la température 1 en degré
> float temperature_2 = sensors.getTempC(thermometre_2); // obtenir la température 2 en degré
> float temperature_3 = sensors.getTempC(thermometre_3); // obtenir la température 3 en degré
> 
> /* envoie les températures sur la liaison série */
> 
> Serial.print(temperature_1, 1);
> Serial.print(","); // les données sont séparées par des virgules.
> Serial.print(temperature_2, 1);
> Serial.print(","); // les données sont séparées par des virgules.
> Serial.print(temperature_3, 1);
> Serial.println();
> 
> }
> }
> 
> ```

merci mais cela ne fonctionne pas

---

<div class="post-metadata">

**Author:** ![dfgh](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/dfgh/32/220368_2.png) [@dfgh](https://forum.arduino.cc/u/dfgh)\
**Post date:** [August 20, 2022, 10:05am UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/18 "2022-08-20T10:05:32Z")

</div>

hello, nous ne nous sommes pas compris, c'est ton code que j'ai téléchargé et reposté sur le forum.  
pour qu'il soit conforme dans sa présentation.

les adresses sont bien celles de tes capteurs?  
de quelle valeur est ta résistance  
as tu essayé avec une résistance plus élevée ou plus faible?

---

<div class="post-metadata">

**Author:** ![axou](https://avatars.discourse-cdn.com/v4/letter/a/51bf81/32.png) [@axou](https://forum.arduino.cc/u/axou)\
**Post date:** [August 20, 2022, 5:46pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/19 "2022-08-20T17:46:47Z")

</div>

Je vous avoue que je débute et je ne sais donc pas comment on trouve l'adresse d'un capteur.  
j'utilise une résistance de 5kohms.  
et j'ai essayé avec d'autres et cela ne change rien

---

<div class="post-metadata">

**Author:** ![icare](https://avatars.discourse-cdn.com/v4/letter/i/848f3c/32.png) [@icare](https://forum.arduino.cc/u/icare)\
**Post date:** [August 20, 2022, 6:14pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/20 "2022-08-20T18:14:39Z")

</div>

Bonjour,  
Un article sur le sujet, un peu ancien, mais tout à fait fonctionnel, d'un ancien du forum (skywodd)  
[https://www.carnetdumaker.net/articles/faire-un-scanneur-de-bus-1-wire-avec-une-carte-arduino/](https://www.carnetdumaker.net/articles/faire-un-scanneur-de-bus-1-wire-avec-une-carte-arduino/)

---

<div class="post-metadata">

**Author:** ![fdufnews](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/fdufnews/32/238836_2.png) [@fdufnews](https://forum.arduino.cc/u/fdufnews)\
**Post date:** [August 20, 2022, 7:08pm UTC](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806/21 "2022-08-20T19:08:14Z")

</div>

> [@axou](#):
>
> je ne sais donc pas comment on trouve l'adresse d'un capteur.

Comment as-tu déterminé les adresses des capteurs qui apparaissent dans ton code?

[Next page](https://forum.arduino.cc/t/probleme-capteur-ds18b20/1021806.md?page=2)
