Installation de l'O.S.
- Se procurer un carte SD de 4Go
minimum
(suffisant juste pour tester, sinon prendre au 8Go)
- Télécharger l'image RASPBIAN "
lite" à partir de:
http://www.raspberrypi.org/downloads/
- Extraire l'archive .zip avec
unzip, winrar, ...
- Flasher la carte microSD avec l'image (.img) de Raspbian
1ère méthode (pour les nuls... ;-) :
- Installe le logiciel Balena-Etcher (il existe une version Linux et
une version Windows)
- Flashe la carte microSD à l'aide du logiciel
2ème méthode (cette méthode fonctionne même
sans écran)
:
- Entre la commande suivante dans un terminal Linux pour
extraire l'archive.zip
unzip 2016-09-23-raspbian-jessie-lite.zip
où 2016-09-23-raspbian-jessie-lite.zip
est le nom de l'archive Raspbian téléchargée
- Entre la commande suivante dans un terminal Linux pour
copier cette image sur la carte microSD :
dd bs=4M
if=2016-09-23-raspbian-jessie-lite.img of=/dev/mmcblk0
où 2016-09-23-raspbian-jessie-lite.img
est le nom de l'image décompressée et /dev/mmcblk0 est le nom
du périphérique microSD
Remarque : : le périphérique
microSD peut parfois avoir un nom différent; ex : /dev/sdb
- Insère la carte SD dans le Raspberry Pi et connecte
l'alimentation...
- C'est prêt! connecte-toi en SSH si tu n'a pas d'écran (voir Chap.2)
- Après l'installation:
Après t'être correctement connecté avec le
login "pi" et le mot de passe "raspberry", tu dois lancer
"raspi-config" pour :
- Dans "Internationalisation", changer "locales" en "fr_FR.UTF-8" et
"timezone" en "Europe=>Paris"
raspi-config
La 1ère étape consiste à installer un O.S. sur la carte SD qui fait
office de disque dur
Prise de controle à distance
Connecte-toi au RaspberryPi en SSH avec Putty (au choix sous Windows ou
Linux).
# Il sera pratique de pouvoir se connecter en "root" au RasPi; on va
donner un mot de passe à "root", puis autoriser la connexion SSH avec
"root" :
sudo su
passwd
(Entrer un mot de passe pour root)
nano /etc/ssh/sshd_config
(modifier le paramètre : PermitRootLogin
yes)
service ssh restart
# Si tu veux travailler plus "confortablement", le logiciel WinSCP
te permettra de gérer les fichiers du Raspi depuis une interface
graphique lancée sur un poste Windows ou Linux;
# A ce moment de l'installation, il est temps de mettre une IP fixe au
RasPi
:
Connecte-toi au RasPi avec WinSCP (login : "root")
Remarque : à partir de la version de Raspbian "Jessie", ce n'est
plus le fichier "/etc/network/interface" qui gère la configuration
réseau, mais le fichier : "/etc/dhcpcd.conf"; il faut y rajouter (en
modifiant les valeurs en fonction de ton réseau) :
#
Custom static IP address for eth0.
interface eth0
static ip_address=192.168.1.2/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8
# Custom static IP address for wlan0.
interface wlan0
static ip_address=192.168.1.3/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8
#De même, tu peux changer le nom d'hôte du RasPi :
- Remplacer "rasberrypi" par le nom que tu as choisi dans les fichiers
"/etc/hosts" et "/etc/hostname"
# installation de vnc (pour se connecter au RasPi à distance
en mode graphique)
Elle n'est plus nécessaire dans les dernières versions de RASPBIAN,
puisque RealVNC est installé par défaut; il faut juste l'activer en
passant par "raspi-config"
-
La 2ème étape consiste à rendre le Pi indépendant de son écran...
Les logiciels à installer
# nano
apt-get install nano
# Apache, PHP, MySQL
apt-get install apache2
apt-get install php7.0
-
Les logiciels indispensables
Rendre le RPi mobile...
Pour que le RPi puisse être utilisé dans une application mobile, par
exemple un robot roulant, il faut :
# l'alimenter en courant électrique avec une batterie qui
fournisse du 5V : une batterie externe pour smartphone de 2200mah ou
plus fera parfaitement l'affaire.
# Le WiFi sera indispensable pour communiquer en SSH depuis ton
ordinateur
Pour l'activer, il faut modifier le fichier
/etc/wpa_supplicant/wpa_supplicant.conf
:
network={
ssid="YOUR_NETWORK_NAME"
psk="YOUR_NETWORK_PASSWORD"
key_mgmt=WPA-PSK
}
Puis entrer la commande :
iwconfig wlan0 essid "YOUR_NETWORK_NAME"
-
Rendre le RPi mobile...
Wiring Pi
Wiring est une API qui contient aussi une commande en ligne : gpio pour
controler les GPIO depuis un script.
http://wiringpi.com/
Pour le RPi 3A, 3B :
apt-get install wiringpi
Pour le RPi 4 :
wget
https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
Exemple d'utilisation :
gpio -g mode 4 out # broche 4 du chipset en
mode sortie
gpio -g write 4 1 # broche 4 passe au niveau
logique 1
gpio -g mode 17 in # broche 17 du chipset en mode entrée
gpio -g read 4 # lire
l'état logique de la broche 4
gpio
readall
# Vérifier l'état des broches
-
Pour contrôler les GPIO : WiringPi
PiFace
PiFace est une interface prête à l'emploi pour "jouer" avec les GPIO
http://mchobby.be/wiki/index.php?title=PiFace-Manuel
PiFace utilise
uniquement les
broches SPI du GPIO !!
Pour activer le bus SPI indispenssable au PiFace :
modprobe spi-bcm2708
PiFace peut être controlé par "gpio" :
gpio -p write [200-207] 0/1
[200-207] correspondant aux 8 sorties du PiFace (200 et 201 = 2
relais)
Mais PiFace est livré avec ses propres librairies en Python
Pour installer les librairies du PiFace :
apt-get install python3-pifacedigital-emulator
-
Pour controler les GPIO : PiFace
Divers
Installer le serveur DHCP :
apt-get install isc-dhcp-server
nano /etc/dhcp/dhcpd.conf
Installer le proxy Squid/Squidguard :
apt-get install squid3
apt-get install squidguard
Dans "/etc/squid3/squid.conf", il faut au départ "http_access allow
all", pour débloquer les accès (à peaufiner + tard )
et "url_rewrite_program /usr/bin/squidGuard -c
/etc/squidguard/squidGuard.conf", "url_rewrite_children 5"
Tutoriel
d'installation de Squidguard
Annexes techniques
Son :
- Impédance de sortie audio : Zs = 50 ohms (B+) ou 100 ohms (B)
- Installation ALSA et PulseAudio :
https://sites.google.com/site/semilleroadt/home/raspberry-pi
- Documentation OMXPLAYER
http://elinux.org/Omxplayer
- lister les cartes son: aplay -l
- utiliser une carte son usb par défaut : créer un fichier
/etc/modprobe.d/alsa-base.conf :
#contenu du fichier alsa-base.conf
options snd_usb_audio index=0
options snd_bcm2835 index=1
options snd slots=snd-usb-audio,snd-bcm2835
Vidéo HDMI :
- lister les modes disponibles : tvservice -m DMT
- lister le mode actif: tvservice -s
- choisir un mode : tvservice -e "DMT 11"
GPIO :
www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi
BIOS :
Le RPi ne contient de Bios; les paramètres matériels sont donc conservés
dans le fichier /boot/config.txt.
Ce fichier est lu par le GPU avant l'initialisation du processeur ARM
poour lire la configuration active :
vcgencmd get_config int - lists all the integer config options that are
set (non-zero)
vcgencmd get_config str - lists all the string config options that are
set (non-null)
Source :
http://elinux.org/RPiconfig
WIFI :
pour scanner les hotspots disponbiles : iwlist scan
modifier le fichier
/etc/wpa_supplicant/wpa_supplicant.conf
network={
ssid="YOUR_NETWORK_NAME"
psk="YOUR_NETWORK_PASSWORD"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
auth_alg=OPEN
}
exemple :
network={
ssid="secure"
key_mgmt=WPA-EAP
proto=WPA2
group=CCMP
pairwise=CCMP
eap=TLS
ca_cert="/etc/certs/cacert.pem"
client_cert="/etc/certs/client.pem"
private_key="/etc/certs/client.key"
private_key_passwd="somepwd"
identity="me"
priority=5
}
Pour relancer la connexion au point d'accès :
wpa_cli -i wlan0
reconfigure
I2C
Lancer "raspi-config"
- Activer dans "Advanced options" => "I2C"
Si nécessaire : apt-get install -y python-smbus i2c-tools
Pour vérifier la présence d'un périphérique i2c : i2cdetect -y 1