- Détails
- Écrit par : steneor
- Catégorie : GPIO RPi
- Temps de lecture : 1 min
- Affichages : 709
Il existe de nombreux article sur le sujet, ici je me contente de signaler les petits points de détails qui font que cela fonctionne.
http://www.sbprojects.com/projects/raspberrypi/temperature.php
Installation sur une raspbian.
Il faut au préalable installer les modules qui gèrent le sytème 1 WIRE
sudo modprobe w1-gpio && sudo modprobe w1_therm
maintenant si vous faites la commande vous devriez voir tous les capteurs detecter.
ls -l /sys/bus/w1/devices/
Depuis le PI 2 (version > 3.18) il faut rajouter au ficher /boot/config.txt
sh -c "echo '#one wire\ndtoverlay=w1-gpio\n' >> /boot/config.txt"
- Détails
- Écrit par : steneor
- Catégorie : GPIO RPi
- Temps de lecture : 8 mins
- Affichages : 956
WiringPi vs. BCM_GPIO Pin numbering Model B
WiringPi GPIO-r1 GPIO-r2 P1-Phys Function
???????????????????????????????????????????????????
0 17 17 11
1 18 18 12 (PWM)
2 21 27 13
3 22 22 15
4 23 23 16
5 24 24 18
6 25 25 22
7 4 4 7
8 0 2 3 I2C: SDA0
9 1 3 5 I2C: SCL0
10 8 8 24 SPI: CE0
11 7 7 26 SPI: CE1
12 10 10 19 SPI: MOSI
13 9 9 21 SPI: MISO
14 11 11 23 SPI: SCLK
15 14 14 8 TxD
16 15 16 10 RxD
17 - 28
18 - 29
19 - 30
20 - 31
WiringPi vs. BCM_GPIO Pin numbering Model B+
root@raspberry41 ~ # gpio readall
+-----+-----+---------+------+---+--B Plus--+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5V | | |
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | |
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 |
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 |
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
| 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
| 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
| 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 |
| 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | |
| 19 | 24 | GPIO.24 | IN | 0 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 |
| 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | IN | GPIO.28 | 28 | 20 |
| | | 0v | | | 39 || 40 | 0 | IN | GPIO.29 | 29 | 21 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+--B Plus--+---+------+---------+-----+-----+
Init des gpio d'abord ecrire 1 puis les mettre en sortie
gpio write 0 1
gpio write 1 1
gpio write 2 1
gpio write 3 1
gpio write 4 1
gpio write 5 1
gpio write 6 1
gpio write 7 1
gpio mode 0 output
gpio mode 1 output
gpio mode 2 output
gpio mode 3 output
gpio mode 4 output
gpio mode 5 output
gpio mode 6 output
gpio mode 7 output
Fermer le relais 2 : Il faut ?crire 0 sur la sortie 2
gpio write 2 0
Ouvrir le relais 2 : Il faut ?crire 1 sur la sortie 2
gpio write 2 1
Fermer le relais 2 pendant 1 seconde puis l'ouvrir
gpio write 2 0
sleep 1s
gpio write 2 1
Fermer le relais 2 pendant 0.5 seconde puis l'ouvrir
gpio write 2 0
sleep 0.5s
gpio write 2 1
- Détails
- Écrit par : steneor
- Catégorie : GPIO RPi
- Temps de lecture : 2 mins
- Affichages : 6463
Le watchdog permet de surveiller le circuit BCM2708 du rapsberry Pi. Pour activer celui-ci sur le raspberry pi, on proc?de de la manière suivante :
Chargement du module man de modprobe
# sudo modprobe bcm2708_wdog
édition du module avec ajout de la ligne suivante :
# sudo nano /etc/modules
bcm2708_wdog
Définition du démon du watchdog (installation et configuration au démarrage du raspberry Pi man de chkconfig) :
# sudo apt-get install watchdog chkconfig
# sudo chkconfig watchdog on
# sudo /etc/init.d/watchdog start
Configuration du fichier de config du watchdog :
# sudo nano /etc/watchdog.conf
Dé-commenter la ligne # watchdog-device = /dev/watchdog
Vérifier que interval est bien de 10 secondes, si ce n'est pas le cas dé-commenter la ligne et mettre 10
Voila le watchdog est démarré et scrute toute les 10 secondes.
Si la commande /dev/watchdog ne reçoit pas de signal au bout de 10secondes, le raspberry pi redémarre.
Enfin tester votre chien de garde en plantant le sytème avec un Forkbomb taper la commande ci dessous
# :(){ :|:& };:
Note importante : le re-démarrage du rapsberry pi est brutale et peut dans certain cas corrompre les fichiers de démarrage.
sources:
http://pi.gadgetoid.co.uk/post/001-who-watches-the-watcher
http://linux.die.net/man/5/watchdog.conf
- Détails
- Écrit par : steneor
- Catégorie : GPIO RPi
- Temps de lecture : 1 min
- Affichages : 857
projet
Voir l'article dans magpi en francais nunéro 8 page 8: ici
http://www.hoagieshouse.com/RaspberryPi/RCSockets/RCPlug.html
- Détails
- Écrit par : steneor
- Catégorie : GPIO RPi
- Temps de lecture : 1 min
- Affichages : 2218
En revanche ce port s?rie est utilis? par la console, donc il faut le d?sactiver ? 2 endroits
1) dans le fichier /boot/cmdline.txt tu supprimes la partie
- Code:
console=ttyAMA0,115200 kgdboc=ttyAMA0,115200
ce qui doit te donner un ligne du type (en tout cas chez moi)
- Code:
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
2) Ensuite dans le fichier /etc/inittab tu commentes la ligne qui r?f?rence le ttyAMA0 (ci dessous la ligne chez moi) en mettant un # devant.
- Code:
#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
Puis tu rebootes le Pi
Configur? le port s?rie avant le cat avec une commande similaire ? celle-ci.
- Code:
stty -F /dev/ttyAMA0 1200 sane evenp parenb cs7 -crtscts
Puis un cat
- Code:
cat /dev/ttyAMA0