====== Raspberry Pi ======
Raspberry Pi est un nano-ordinateur mono-carte basé sur un processeur ARM.
{{ :diy:raspberrypi2.jpg?nolink |Raspberry Pi model 2}}
===== Présentation =====
Malgré son format très réduit (environ 86x54x17mm), il inclut toutes les composantes d'un ordinateur :
* System on a Chip (SoC) Broadcom
* processeur principal (CPU) ARM
* processeur graphique et co-processeur dédié au décodage video (GPU)
* SDRAM
* circuit audio
* réseau ethernet
* stockage (sur carte SD)
* entrées/sorties (USB et pins GPIO)
Il est également doté d'une connectique complète :
* alimentation par micro-USB permettant d'utiliser un cordon et un chargeur de téléphone
* video numerique en HDMI et analogique en composite
* audio mini-jack et via le HDMI
* réseau (RJ45)
* 2 ou 4 ports USB 2
* GPIO
* connecteur spécifique camera
* slot pour carte SD ou micro-SD
Différents systèmes d'exploitation sont disponibles (distributions Linux, FreeBSD, et Windows 10 IoT pour le modèle le plus récent).
Depuis sa sortie en 2012, plusieurs évolutions se sont succédées. Schématiquement, les modèles A n'ont pas de prise en charge du réseau et un seul port USB, le modèle Zero est une version ultra miniaturisée, les modèles B 1 à 3 sont des évolutions itératives.
^ ^ Modèle A ^ Modèle A+ ^ Modèle 1 B ^ Modèle 1 B+ ^ Modèle Zero ^ Modèle 2 B ^ Modèle 3 B ^ Modèle 3 B+ ^
^ Lancement | Février 2013 | Novembre 2014 | Avril-Juin 2012 | Juillet 2014 | Novembre 2015 | Février 2015 | Février 2016 | Mars 2018 |
^ CPU | ARM11 core à 700 MHz |||| ARM11 core à 1 GHz | ARM Cortex-A7 quadcore à 900 MHz | ARM Cortex-A53 quadcore à 1,2 GHz | ARM Cortex-A53 quadcore à 1,4 GHz |
^ GPU | Broadcom VideoCore IV ||||||||
^ SDRAM | 256 Mo || 512 Mo ||| 1 Gb |||
^ Ports USB | 1 || 2 | 4 | 1 | 4 |||
^ Stockage | SD | microSD | SD | microSD |||||
^ Réseau | Non || Ethernet 10/100 || Non | Ethernet 10/100 | Ethernet 10/100, Wifi 802.11n, Bluetooth 4.1 | Ethernet 10/100, Wifi 802.11ac, Bluetooth 4.2 |
===== Applications =====
==== Station de travail ====
Jusqu'à la version 2 du Raspberry Pi, les performances modestes n'autorisent pas réellement une utilisation poussée en tant que station de travail avec une interface graphique. Par exemple, le navigateur Midori, pourtant peu gourmand en ressources, n'est pas suffisamment fluide. De même, la suite bureautique LibreOffice atteint les limites de cette plateforme.
A partir de la version 2, en particulier si on overclocke légèrement le processeur, les performances deviennent plus acceptables et autorisent les applications suivantes :
* Calcul numérique et calcul formel : Mathematica
* Programmation : Scratch, Python, Perl, C, ...
* Utilisation du shell (terminal et SSH) : Bash
* Interface avec le monde physique : programmation du GPIO
* ...
==== Serveur ====
Lorsqu'on n'utilise pas l'interface graphique, ce qui est le cas pour un serveur, les performances du Raspi sont suffisantes pour de nombreuses applications :
* Serveur web statique : Apache
* Serveur web dynamique : Apache + PHP et MySQL
* Wiki : DokuWiki
* Blog : Wordpress
* Serveur de fichiers : Samba
* ...
===== Mise en œuvre =====
Pour fonctionner, un Raspberry Pi nécessite au minimum :
==== Matériel ====
* une alimentation, soit dédiée, soit un cordon micro USB (provenant d'un smartphone par exemple) et le chargeur associé. Une alimentation de 10W (5V - 2A) est recommandée, en particulier si l'on souhaite connecter des périphériques en USB qui peuvent être assez gros consommateurs.
* une carte SD ou microSD contenant le système d'exploitation. Une capacité de 16 Go suffit pour la plupart des applications.
* écran, clavier et souris ne sont indispensables que si l'on souhaite utiliser le Raspberry Pi comme station de travail. Si l'on prévoit de l'utiliser comme serveur, on pourra ne les utiliser que le temps de la mise en service, la machine étant ensuite pilotée par SSH.\\ Clavier et souris ne peuvent être connectés qu'en USB (un adaptateur USB mâle, double PS/2 femelle est aussi utilisable).\\ L'écran peut être connecté par un simple cable HDMI, si la connectique est disponible (TV ou vidéo projecteur par exemple) ou bien avec un cable HDMI-DVI si le moniteur ne dispose que de DVI.\\ La connexion vers un écran analogique (VGA) nécessite un convertisseur.
* un boitier pour protéger la carte, éventuellement des radiateurs pour dissiper la chaleur des composants.
==== Système d'exploitation ====
Les systèmes d'exploitations standard du Raspberry Pi sont des variantes de Linux dans différentes distributions.
=== Distributions généralistes ===
Fin 2016, Debian Jessie dans sa version Raspbian est l'OS par défaut du Raspi. Téléchargement [[http://www.raspbian.org/RaspbianImages|ici]].
D'autres distributions Linux classiques ont été portées sur Raspi et sont disponibles sur leurs sites officiels : par exemple Fedora, ArchLinux, Ubuntu, Gentoo, Slackware, Suse...
Enfin, des OS moins courants sont également disponibles : Firefox OS, Risc OS, NetBSD...
Depuis peu, Windows 10 IoT a également été porté sur le Raspberry Pi 3, et est distribué gratuitement [[https://developer.microsoft.com/en-US/windows/iot|ici]].
Un installeur générique, [[https://www.raspberrypi.org/downloads/noobs/|NOOBS]] (New Out Of the Box Software), réalisé par la fondation Raspberry, automatise l'installation de Raspbian (par défaut) ou d'un autre OS parmi la liste ci-dessus.
=== Media center ===
[[https://osmc.tv/|OSMC]], basée sur Debian et le media center [[https://fr.wikipedia.org/wiki/Kodi_Entertainment_Center|Kodi]].
De même [[https://libreelec.tv/about/|LibreELEC]] est une distribution Linux ultra légère intégrant Kodi.
=== Distributions spécialisées ===
Distribution pour la salle de classe, [[http://pinet.org.uk/|PiNet]], inclut la gestion des comptes, les dossiers partagés, les sauvegardes et le boot en réseau.
Une distribution dédié à la réalisation d'une [[https://downloads.raspberrypi.org/weather_station/images/weather_station-2016-03-24/|station météo]].
Pour les amateurs de retro gaming, différentes distributions basées sur l'émulateur multi-consoles [[https://fr.wikipedia.org/wiki/MAME|MAME]] :
* [[https://www.recalbox.com/|Recalbox]]
* [[http://piplay.org/|PiPlay]]
* [[https://retropie.org.uk/|RetroPie]]