2018 :
Cette version ne fonctionne plus avec les kernels actuels.
Si vous utilisez un kernel récent vous pouvez utiliser ce code :
https://github.com/audiophonics/Pydpiper-Raspdac" onclick="window.open(this.href);return false;
#############################################
Bonjour,
Vous avez peut-être vu passer dans les nouveautés un boitier que nous venons de réaliser pour proposer une solution de média player basé sur la carte Raspberry PI 2.
Ce boitier intègre un emplacement pour un DAC de qualité HiFi, et pour un écran au format "standard" 16x2, qu'il soit OLED ou LCD
Boitier Raspberry Pi2 pour DAC Audiophonics Pour l'écran nous avons sélectionné le Winstar OLED 16x2 en blanc, car ses qualités graphiques sont bien supérieures à un LCD classique.
Le contraste est de 2000:1 et la luminosité importante, ce qui fait qu'il est lisible de loin.
Cependant il n'est pas très facile à driver car malgré la compatibilité HD44780, certains paramètres d'initialisation et de délai sont différents.
Ce tutoriel est basé sur une release Volumio 1.55, mais peut a priori fonctionner sur d'autres distribution fonctionnant avec le serveur musical MPD.
Le script python fourni fonctionne sans LCDProc ni Mpdlcd, il adresse directement l'écran.
Nous avons préféré cette solution car le rafraîchissement dans LCDProc était vraiment trop lent, nous n'avons pas identifié pourquoi.
Donc pré requis :
- Raspberry PI 2
- Ecran Winstar OLED 16x2
- Volumio 1.55 (Voir tutoriel d'installation Volumio)
- Logiciel Putty (pour accéder au RPI en ligne de commande)
Par rapport aux schémas les plus couramment utilisés nous avons bougé le GPIO18 en GPIO15 et connecté R/W de l'écran au GND.
Fonctionne pour PI2 et PI3
Code : Tout sélectionner
|---OLED Display---| |---Raspberry Pi---|
| Pin Description | | Pin Description |
1 Vss (GND) <----> 6 GND
2 VDD (+5.0V) <----> 2 +5.0V
3 nc
4 RS <------------> 26 GPIO 7
5 R/W <------------> 6 GND
6 E <------------> 24 GPIO8
7 DB0
8 DB1
9 DB2
10 DB3
11 DB4 <------------> 22 GPIO25
12 DB5 <------------> 18 GPIO24
13 DB6 <------------> 16 GPIO23
14 DB7 <------------> 10 GPIO15
Une fois volumio 1.55 installé, allumez le PI tout en l'ayant connecté à votre réseau.
Son adresse IP est affiché sur la sortie HDMI du PI, vous pouvez également trouver son IP sous windows en ligne de commande :
Code : Tout sélectionner
Menu démarrer -> tapez "cmd" puis entrée -> tapez "ping volumio" -> 192.168.0.xx
Connexion au Pi :
Il faut maintenant vous y connecter avec putty.
Vous pouvez entrer l'ip que vous aurez trouvé, ou entrer volumio directement. Login : root
Password : volumio
Installation de la librairy Rpi.GPIO :
Permet au script python d'adresser directement les pins et donc l'écran.
Téléchargement dans le dossier /home/pi
http://sourceforge.net/projects/raspber" onclick="window.open(this.href);return false; ... b/download
Code : Tout sélectionner
wget -O /home/pi/python-rpi.gpio_0.5.11-1_armhf.deb https://archive.raspberrypi.org/debian/pool/main/r/rpi.gpio/python-rpi.gpio_0.5.11-1_armhf.deb
Code : Tout sélectionner
cd /home/pi/
dpkg -i python-rpi.gpio_0.5.11-1_armhf.deb
Création du script python dans le dossier /home/pi :
Code : Tout sélectionner
sudo nano /home/pi/16x2_oled_volumio.py
Copier l'intégralité du script python disponible en pièce jointe.
Faites un seul clic droit dans putty pour coller l'ensemble du texte.
Enregistrez le fichier en tapant "CTRL + X" puis "Y" puis "entrée"
Le fichier 16x2_oled_volumio.py est maintenant créé dans /home/pi et est prêt à être exécuté.
Vous pouvez lancer le script manuellement en tapant :
Code : Tout sélectionner
sudo python /home/pi/16x2_oled_volumio.py
Code : Tout sélectionner
sudo nano /etc/rc.local

Ajoutez avant la dernière ligne "exit 0" ce texte :
Code : Tout sélectionner
python /home/pi/16x2_oled_volumio.py &
Désormais le script démarrera automatiquement avec Volumio.
Vous pouvez éditer le script à l'aide de cette commande :
Code : Tout sélectionner
sudo nano /home/pi/16x2_oled_volumio.py
Je pense qu'il est possible de faire mieux, notamment en terme de rafraîchissement, aussi, si vous avez des idées, ou avez expérimenté des codes différents n'hésitez pas à nous en faire part.
Crédits :
Python pour LCD
http://www.raspberrypi-spy.co.uk/2012/0" onclick="window.open(this.href);return false; ... ng-python/
Robertxc - Script python optimisé OLED Winstar
https://www.raspberrypi.org/forums/view" onclick="window.open(this.href);return false; ... 63&t=68055
Requêtes pour récupérer infos MPD sans MPCLCD
http://pi-fidelity.blogspot.fr/2013/05/" onclick="window.open(this.href);return false; ... t-two.html
Script python avec condition de lecture pour l'affichage (merci Balbuze d'avoir partagé)
https://volumio.org/forum/second-rpi-vo" onclick="window.open(this.href);return false; ... t2680.html
Install Rpi.GPIO
https://volumio.org/forum/rpi-volumio-g" onclick="window.open(this.href);return false; ... html#p6640
Autres liens en rapport avec l'écran :
http://forums.adafruit.com/viewtopic.ph" onclick="window.open(this.href);return false; ... 7&start=15
https://gist.github.com/lardconcepts/4947360" onclick="window.open(this.href);return false;
Version LcdProc :
http://andypi.co.uk/?p=334" onclick="window.open(this.href);return false; (attention LCDd.conf corrompu)
https://volumio.org/forum/volumio-with-" onclick="window.open(this.href);return false; ... t3120.html (nouveau driver hd44780)