Ajouter dans sudo /etc/modules
w1-gpio
w1-therm
Ajouter dans /boot/config.txt
dtoverlay=w1-gpio
Maintenant reboot
Ensuite il faut identifier notre capteur en cherchant son nom dan le dossier /devices :
cd /sys/bus/w1/devices
ls
Nous voyons ici s’afficher un dossier débutant par « 28-xxxxxxx« . Le nom change en fonction du capteur. Il faut aller dans ce dossier :
cd 28-xxxx <- A vous d’adaptez en fonction du nom trouvé plus haut.
Ensuite taper la commande suivante pour voir l’information récoltée par le capteur :
cat w1_slave
Nous devrions voir 2 lignes s’afficher, comme sur l’exemple suivant :
Le code Python
from
os
import
system
from
time
import
sleep
system(
'modprobe w1-gpio'
)
system(
'modprobe w1-therm'
)
base_dir
=
'/sys/bus/w1/devices/'
sonde1
=
"/sys/bus/w1/devices/w1_bus_master1/28-000005f2424d/w1_slave"
sonde2
=
"/sys/bus/w1/devices/w1_bus_master1/28-000005f2764e/w1_slave"
sonde3
=
"/sys/bus/w1/devices/w1_bus_master1/28-000005f396a0/w1_slave"
sondes
=
[sonde1, sonde2, sonde3]
sonde_value
=
[
0
,
0
,
0
]
def
lire_fichier(fichier):
f
=
open
(fichier,
'r'
)
lignes
=
f.readlines()
f.close()
return
lignes
for
(i, sonde)
in
enumerate
(sondes):
lignes
=
lire_fichier(sonde)
while
lignes[
0
].strip()[
-
3
:] !
=
'YES'
:
sleep(
0.2
)
lignes
=
lire_fichier(sonde)
temp_raw
=
lignes[
1
].split(
"="
)[
1
]
sonde_value[i]
=
round
(
int
(temp_raw)
/
1000.0
,
2
)
print
"sonde"
,i,
"="
,sonde_value[i]