Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriaux-ressources:rasperry_pi_mod [2013/02/18 12:57]
Ony
tutoriaux-ressources:rasperry_pi_mod [2013/04/05 15:43] (Version actuelle)
raf [MODIFICATION HARDWARE]
Ligne 1: Ligne 1:
-====== PROJET ​======+====== ​BUT DU PROJET ======
  
 +Le projet est de créer une bibliothèque audio portable sans DAC ni Ampli, délivrant un flux numérique sur USB (et peut-être avoir un headphone out sur mini-jack).
  
-Rasperry > flux audio numérique > DAC/Amp USB+====== PROJET ======
  
-Le projet est de créer une bibliothèque ​audio portable sans DAC ni Ampli.+==== IDEE ARCHITECTURALE GENERALE ==== 
 + 
 +Raspberry Pi > flux audio numérique > DAC/Amp USB 
 + 
 +Ou 
 + 
 +Arduino > flux audio numérique > DAC/Amp USB 
 + 
 +A confirmer la possibilité de sortir en USB à partir de debian -> Pas de Debian sur Arduino ! Si on doit partir d'une Arduino, il faudra le faire à la main.
  
 Baladeur avec mémoire sur SD sans DSP ni amplification Baladeur avec mémoire sur SD sans DSP ni amplification
Ligne 10: Ligne 19:
 taille ~ 11cm x 5cm x 2cm taille ~ 11cm x 5cm x 2cm
  
-== RESSOURCES : ==+==== MATERIEL ====
  
 +== MACHINE ==
  
 - Raspberry pi modèle A ( moins puissant moins énergivore ): [[http://​raspberrypi.rsdelivers.com/​product/​raspberry-pi/​raspberry-pi-type-a/​raspberry-pi-type-a-single-board-computer-256mb/​7568317.aspx]] - Raspberry pi modèle A ( moins puissant moins énergivore ): [[http://​raspberrypi.rsdelivers.com/​product/​raspberry-pi/​raspberry-pi-type-a/​raspberry-pi-type-a-single-board-computer-256mb/​7568317.aspx]]
  
-- Un écran : [[https://​www.adafruit.com/​products/​912]] par exemple+== ECRAN == 
 + 
 +  * [[https://​www.adafruit.com/​products/​912]] 
 +  * Écran + joystick : [[http://​www.elecfreaks.com/​store/​color-lcd-shield-p-516.html]] 
 +  * Ecran TFT LCD 2,4" Tactile ou pas (au choix) : [[http://​www.elecfreaks.com/​store/​24-tft-lcd-panel-65kcolors-320240-resolution-p-111.html]] 
 +  * écran 1.8" en monochrome : 8 lignes de 24 caractères Max et grosse économie d'​énergie. http://​shop.emsystech.de/​de/​Raspi-LCD-Module 
 +  * ecran propose ​par Vic : [[http://​blog.idleman.fr/?​p=1946]] achetable ici [[https://​www.sparkfun.com/​products/​10168]] 
 + 
 +- Utiliser l'​ecran d'​emsystech avec les boutons : [[http://​www.emsystech.de/​lcd-display-add-on-for-raspberry-pi/​]] (contient un code C d'exemple
 + 
 +- Utiliser l'​ecran d'​emsystech avec les images et autres (en allemand) : [[http://​www.emsystech.de/​raspi-lcd-tutorial/​]] 
 + 
 +- Exemple d'​ajout d'un écran (de vieux Nokio 4,5€) sur un Rpi : [[http://​blog.idleman.fr/?​p=1946]] 
 + 
 +- Autre implementation d'​ecran : [[http://​binerry.de/​post/​25787954149/​pcd8544-library-for-raspberry-pi]] 
 + 
 +== BATTERIE ==
  
 - Chargeur USB batterie : [[https://​www.adafruit.com/​products/​259]] - Chargeur USB batterie : [[https://​www.adafruit.com/​products/​259]]
  
 - Une batterie : [[https://​www.adafruit.com/​products/​328]] - Une batterie : [[https://​www.adafruit.com/​products/​328]]
 +
 +- Sujet sur le forum de RPI sur la batterie : [[http://​www.raspberrypi.org/​phpBB3/​viewtopic.php?​f=65&​t=13370]]
 +
 +== MEMOIRE ==
  
 - Stockage : [[http://​www.amazon.fr/​Komputerbay-Classe-UHS-I-Vitesse-M%C3%A9moire/​dp/​B008AN1C1A/​ref=sr_1_10?​s=electronics&​ie=UTF8&​qid=1361144708&​sr=1-10|SD de 64go]] ou [[http://​www.amazon.fr/​Kingston-Carte-m%C3%A9moire-flash-Class/​dp/​B0090J5XLS/​ref=sr_1_6?​s=electronics&​ie=UTF8&​qid=1361144708&​sr=1-6|128go]] (sur la Carte SD où se trouve le système ?)-> /, après tu peux partionner je suppose - Stockage : [[http://​www.amazon.fr/​Komputerbay-Classe-UHS-I-Vitesse-M%C3%A9moire/​dp/​B008AN1C1A/​ref=sr_1_10?​s=electronics&​ie=UTF8&​qid=1361144708&​sr=1-10|SD de 64go]] ou [[http://​www.amazon.fr/​Kingston-Carte-m%C3%A9moire-flash-Class/​dp/​B0090J5XLS/​ref=sr_1_6?​s=electronics&​ie=UTF8&​qid=1361144708&​sr=1-6|128go]] (sur la Carte SD où se trouve le système ?)-> /, après tu peux partionner je suppose
 +
 +voire potentiellement rajouter un second slot SD
 +
 +== INTERFACE PHYSIQUE UTILISATEUR ==
  
 - Des touches (x5): [[https://​www.adafruit.com/​products/​504|multidirectionnel 5 sens]] ou des boutons normaux [[https://​www.adafruit.com/​products/​367|]] - Des touches (x5): [[https://​www.adafruit.com/​products/​504|multidirectionnel 5 sens]] ou des boutons normaux [[https://​www.adafruit.com/​products/​367|]]
Ligne 27: Ligne 61:
  
  
-== MODIFICATION HARDWARE ​==+==== MODIFICATION HARDWARE ​====
  
 - plusieurs port dessoudés : hdmi / powerup / RCA video / Jack - plusieurs port dessoudés : hdmi / powerup / RCA video / Jack
Ligne 33: Ligne 67:
 - Dimension écran : - Dimension écran :
  
-- Capacité batterie : 5V en ? mA+- Capacité batterie : 5V en ? mAh, consomation raspberry pi 2W/h
  
 +- Calcul de l'​autonomie : **V*A/P=t**
  
-== MODIFICATION SOFTWARE ​: ==+exemple avec une batterie 5V, 7000mAh ​5*7/217,5h (avec aucune perte, donc le résultat devrait être autour de 15h)
  
-Il faudra aussi gérer les touches (via GPIO + python ​?), un git sera créé plus tard.+Optimisation de la consomation : [[http://​www.raspberrypi.org/​phpBB3/​viewtopic.php?t=12387&​p=134975]] (réduction de la conso de 30% sur un rasp pi B)
  
 +Le lien ci-dessus parle de l'​optimisation via un convertisseur DC/DC 5/3,3V, qui est celui-ci : [[http://​dx.com/​p/​vmp3111-high-efficiency-dc-dc-power-supply-module-47820?​item=1]]
 +==== LOGICIELS UTILISABLES ====
  
-== DESIGN CASE ==+MOC : 
 +[[http://​moc.lophus.org/​]] 
 + 
 +- Article présentant le lecteur en console moc ainsi que des idées de scripts pour récupérer les pistes jouées notamment via des scripts bash : [[http://​polishlinux.org/​apps/​cli/​moc-audio-player-advanced-tricks/​]] 
 + 
 + 
 +Ou bien Github : 
 +[[https://​github.com/​albertz/​music-player]] 
 + 
 +==== MODIFICATION SOFTWARE ==== 
 +Deux approches sont ici possibles à mon avis selon le type d'​écran choisi et sa connectique : 
 +  - On prend un écran LCD qu'on connecte sur les ports GPIO, ça voudra dire que le système tournera en "​aveugle"​ (comprendre on ne verra pas le système à l'​écran) et on doit alors envoyer les informations sur l'​écran lcd via une bibliothèque python déjà existante ([[http://​pypi.python.org/​pypi/​RPi.GPIO | RPi-GPIO]]). Il faudra donc s'​occuper de faire "​parler"​ entre eux le système, l'​écran et les boutons de manière grossière. L'​avantage c'est que ce n'est pas bien gourmand. 
 +  - On prend un écran LCD/​TFT/​e-ink/​etc qui se branche sur le composite et sera donc pour le RPi un écran "​externe"​ et on verra le système et dans ce cas-là on peut configurer finement ce qu'on voit à l'​écran et ne permettre que ça (le système se lance et bim on tombe sur le dossier Music où il n'y a plus qu'à sélectionner ce qu'on veut écouter) avec une gestion des boutons en GPIO. Le désavantage de cette solution est liée à sa consommation plus importante par rapport à la première solution. 
 + 
 +Dans les deux cas, on peut se passer de X et par exemple lancer cmos ou moc dans le tty 1 (et virer le tty 2-6 ou quelque chose du genre pour gagner un peu de ram sauf si Raspbian le fait déjà de base). 
 + 
 +Le deuxième truc marrant, ça va être de tester un maximum de DAC USB pour voir ceux qui sont pris en charge par le système et comment faire le cas échéant sans devoir sortir xbmc alias le bazooka. 
 + 
 +==== DESIGN CASE ====
  
 - Bouton sur la tranche / facade avant? - Bouton sur la tranche / facade avant?
Ligne 48: Ligne 103:
  
  
-== REFERENCES ​: ==+==== INFORMATIONS UTILES DIVERSES ==== 
 + 
 +Le connecteur GPIO est un 26 points. 
 + 
 +- Problemes sur le port USB qui perd les paquets, introduisant du jitter ​[[http://​www.raspyfi.com/​anatomy-of-a-pi-usb-audio-quality-and-related-issues-on-pi/​]] 
 + 
 +- Un type qui a fait un serveur de streaming de musique dematerialise : [[http://​mmed.roulleau.net/?​p=171]] 
 + 
 +- Le Raspyfi project : [[http://​www.raspyfi.com/​]] 
 + 
 +- Les différents connecteurs pour ércan sur Rpi : [[http://​elinux.org/​Rpi_Screens#​interfacing_to_Raw_LCD_panels]] 
 + 
 +- Listes de cartes son USB qui fonctionnent sur le RPi en modifiant un peu alsa (rien de méchant) : [[http://​elinux.org/​RPi_VerifiedPeripherals#​USB_Sound_Cards]] 
 + 
 + 
 +====== ETAPES DU PROJET ====== 
 + 
 +Les etapes sont classees par ordre d'​importance ET dans l'​ordre dans lequel elles doivent etre realisees. 
 + 
 +  - Installer Raspbian ou Raspyfi, puis lancer un player standard. Utiliser un DAC/AMP USB connecte sur le port USB du RPI. Ecouter si le son est mieux que des DAP actuels 
 +  - Faire fonctionner le transfert synchrone/​asynchrone en USB 16-24 bits/xkHz via drivers USB, sans jitter (cf. problemes de la RPI sur l'​USB) 
 +  - Determiner quel est l'​ecran a utiliser 
 +  - Determiner quels sont les boutons a utiliser 
 +  - Determiner quel est le logiciel a utiliser, s'il faut programmer une partie ou non, s'il faut utiliser du X (graphique) ou du termcap/TTY (mode console) 
 +  - Déterminer le temps de démarrage de la solution hard+soft (de l'​allumage jusqu'​à la reprise du morceau précédemment en cours) 
 +  - Determiner si le DAPi peut fonctionner commodément en on/off au quotidien (comme un Clip par exemple) ou s'il doit rester en veille la plupart du temps (comme un smartphone par exemple) et dimensionner la batterie en consequence 
 +  - Determiner la batterie : Li-ion ou LiFePO4 + comment recharger la batterie 
 +  - Choix de l'​enclosure + form factor + finition