sPot : Un iPod de 2004 capable de streamer de la musique sur Spotify

En 2004, lors de la sortie de cet iPod de 4e génération, Spotify n’existait même pas. Le service a été lancé 4 ans plus tard. Pourtant, aujourd’hui, ce baladeur sPot peut streamer de la musique en ligne.

Pour construire un sPot, il vous faudra des compétences en électronique, en programmation et pas mal de doigté pour arriver à faire tenir les composants nécessaires à ce hack dans la coque d’un iPod de quatrième génération. Guy Dupont, le créateur de ce projet, partage en ligne l’ensemble des éléments qui lui ont permis ce tour de passe passe.

Evidemment, rien dans l’électronique de 2004 ne prévoyait la possibilité de faire du streaming de musique. Ni Wifi, ni Bluetooth, ni éléments logiciels… Ce sPot n’y parvient qu’en réalisant un gros chantier interne. L’ensemble de l’électronique originale a été remplacée et si l’objet conserve la même forme et une interface identique, c’est au prix d’un énorme bouleversement invisible.

Le coeur de la machine a été remplacé par un Raspberry Pi Zero qui utilise Raspotify pour s’authentifier auprès du service de musique en streaming. La bibliothèque Python Spotipy est utilisée pour chercher, sauvegarder les favoris et autres listes et piloter l’ensemble. Le tout a été reprogrammé en Python pour « coller » au design des menus de l’iPod original. 

Mais surtout, il a fallu apprendre au système à se suffire de l’interface basique de l’iPod pour fonctionner. Pour construire sPot, un programme prenant en compte la roue circulaire de navigation et les différents boutons a donc été écrit, toujours en Python. Cela permet non seulement de se balader dans les menus, de lancer un titre ou album, de naviguer dedans ou de faire pause… mais également de chercher dans Spotify grâce à un système de « clavier » utilisant la roue de l’interface pour sélectionner les lettres. Un autre rajout est l’emploi de pi-btaudio pour permettre à l’appareil de transmettre la musique en Bluetooth. Tous les codes sources sont disponibles sur une page Github.

sPot

La partie matérielle de sPot est impressionnante, non seulement parce que l’espace disponible est assez limité mais surtout par ce que Guy Dupont ne laisse absolument rien apparaitre au final de la quantité de changements effectués en interne. On retrouve le Raspberry Pi Zero, un gestionnaire pour charger la batterie, la carte qui pilote le minuscule écran, un minuscule moteur pour envoyer des vibrations haptiques à l’utilisateur et d’autres éléments. 

sPot

Le marché actuel propose des écrans de toutes les tailles et de nombreuses formes. Il a ainsi été possible d’en trouver un pour remplacer le système LCD d’origine de l’iPod. toute la démarche est détaillée dans la vidéo et dans la page Hackaday de ce projet.

Il reste quelques petits détails à régler pour ce hack, la liste est courte mais certains éléments sont amusants et évidemment importants à prendre en compte si vous voulez utiliser ce code pour créer votre propre sPot ou un autre objet du genre. Le Pi Zero n’a pas été programmé pour s’éteindre « proprement », par exemple, et l’auteur utilise donc un terminal SSH pour le faire… Autre « détail », Guy a oublié d’intégrer les chiffres dans son système de clavier. Une bourde qui sera surement vite réglée. Il n’est pas encore possible de modifier le volume depuis l’interface de l’iPod… Et enfin, la prise jack n’est pour le moment pas exploitable. Rien de grave en somme puisque ces éléments sont assez simples à prendre en charge soit avec une rustine de code, soit en ajoutant un des minuscules DAC en sortie USB du Pi Zéro.

Merci à tous ceux qui m’on signalé la vidéo.


Soutenez Minimachines avec un don mensuel : C'est la solution la plus souple et la plus intéressante pour moi. Vous pouvez participer via un abonnement mensuel en cliquant sur un lien ci dessous.
2,5€ par mois 5€ par mois 10€ par mois Le montant de votre choix

Gérez votre abonnement

3 commentaires sur ce sujet.
  • 1 février 2021 - 15 h 54 min

    Ah fausse joie ! J’ai bien cru pouvoir utiliser mon iPod 80G pour Deezer, mais non là c’est bien trop pour moi :)

    Répondre
  • 26 septembre 2021 - 13 h 54 min

    Je savais que le python était un formidable langage, mais là j’avoue que je suis scotché. Bravo… A quand la lecture d’un vieux jukebox vinyle avec un IPod 1ère génération ? :D

    Répondre
  • 6 octobre 2021 - 17 h 38 min

    Ou comment refaire du neuf avec du vieux ! Ca devrait donner des idées à certains !

    Répondre
  • LAISSER UN COMMENTAIRE

    *

    *