MPi3

Le MPi3 est un baladeur multimédia minimaliste entièrement open-source.

Status

Prototypage

Matériel

  • Raspberry Pi Zero (4£ / ~4,50€ sur ThePiHut)
  • DAC pHAT (12£ / ~13,50€ sur ThePiHut)
  • Batterie 5V (~2€ pour une powerbank premier prix)
  • Carte MicroSD entre 4 et 64 Go classe 10 (entre 5€ et 25€)
  • Boutons ("Précédent" + "Suivant" + "Jouer/Pause")

Le coût total de fabrication du MPi3 avec les composants minimum est d'environ 20€ en achetant tous les composants neuf, auquel se rajoute le prix du stockage de votre choix.

Fonctionnement recherché

  • Image linux minimaliste, la plus légère possible (seulement quelques dizaines de Mo)
  • Boot en moins de 2 secondes (devrait être faisable, le boot userland commence à un peu plus de 2 secondes sur une Raspbian allégée)
  • Bouton "Play/Pause"
    • Appui "Mise en pause" de la musique
      • Checkpoint de la playlist lorsque la musique est suspendue
    • Appui "Reprise" de la musique
      • Reprise la playlist à la position checkpointée
  • Emulation d'un support de stockage de masse lorsque la Raspberry Pi est connectée via le port USB OTG

Autonomie espérée

  • Consommation Pi Zero @5V : ~70 mA
  • Consommation DAC @5V : ~25 mA

Une batterie de 2000 mAH pourrait alimenter le MPi3 pendant une vingtaine d'heures de fonctionnement

Note : Il semblerait que le DAC pHAT fonctionne à 3.3v, alimenter le MPi3 à cette tension pourrait réduire la consommation et augmenter l'autonomie.

Pourquoi utiliser une Raspberry Pi Zero à la place d'un microcontrôleur ?

Un microprocesseur comme celui utilisé dans le Raspberry Pi est censé bien évidemment avoir une consommation énergétique plus importante qu'un microcontrôleur. Cependant la Pi Zero (même dans sa version W) possède un coût bien moins élevé que la plupart des microcontrôleur pouvant répondre aux besoins du projet.

Voici les différentes solutions auxquelles j'avais pensé pour comparaison :

  • Raspberry Pi Zero (4£ ou 10£ en version W) : consommation théorique idle avec le port hdmi et les led éteintes de 70mA, certaines personnes auraient réussi à descendre jusqu'à 30 mA (cependant je n'ai pas vérifié, je ne me base donc pas sur cette valeur). La fréquence du processeur peut monteur jusqu'à 1GHz et possède 512 Mo de RAM
  • Teensy 3.2 (20€) : consommation théorique d'un peu plus de ~30 mA @72 MHz
  • Pic32MX (~20€ pour une carte de dev) : consommation théorique semblable aux STM32 (comme ceux utilisés sur les teensy 3.x), soit environ un peu de 30 mA @72 MHz par exemple
  • ATmega32U4 (~5€) : consommation théorique de ~14 mA @ 16 MHz, cependant sa puissance de calcul et la quantité de RAM sont insuffisantes

Une Raspberry Pi Zero est bien plus performante qu'un microcontrôleur, possède un prix plancher pour une carte de développement hobbyiste et dans la pratique la consommation électrique ne devrait pas être excessivement supérieure. Même si utiliser un microprocesseur pour effectuer une tâche réalisable par un microcontrôleur, notamment ici jouer des fichiers MP3, est clairement démesuré (vouloir écraser une mouche avec une bombe atomique est peut-être encore plus raisonable que cette solution), il se trouve que c'est la solution la plus efficace et la plus économique :)

Assemblage

Préparation de l'image du MPi3

Tests